JavaTM 2
Platform
Std.  Ed.  v1. 4.0

org.omg.CORBA
클래스 ServerRequest

java.lang.Object 
  |
  +--org.omg.CORBA.ServerRequest

public abstract class ServerRequest
extends Object

Dynamic Skeleton Interface (DSI)의 명시적인 상태를 수중에 넣는 오브젝트입니다. DSI 의 기반인 이 클래스는 DII 에 있어서의 Request 오브젝트를 닮아 있습니다.

ORB 에 의해 요구가 구체화되어, Dynamic Implementation Routine (DIR)에 보내집니다. 동적 서번트 (DIR)는 DynamicImplementation 클래스를 구현하는 것으로써 작성되어 1 개의 invoke 메소드를 가집니다. 이 메소드는 ServerRequest 오브젝트를 받습니다. 추상 클래스 ServerRequest 에 의해, 메소드명, 인수, 및 요구 문맥에 액세스 하는 메소드, 및 요구의 결과를 반환값 또는 예외로서 설정하는 메소드가 정의됩니다.

요구의 인수에 액세스 할 때, 인수에 관한 결정된 정보가 존재하지 않기 때문에, 예기 되는 인수의 형태 정보를 DIR 가 제공할 필요가 있습니다. 이 정보는 NamedValue 오브젝트의 리스트인 NVList 에 의해 제공됩니다. 각 NamedValue 오브젝트에는 Any 오브젝트가 포함되어Any 오브젝트가 인수의 형태를 나타내는 TypeCode 오브젝트를 보관 유지합니다.

같이 예기 되는 결과 또는 예외용으로 응답의 형태 정보를 지정할 필요가 있기 (위해)때문에,resultexcept 메소드가 파라미터로서 Any 오브젝트를 취합니다.

관련 항목:
DynamicImplementation , NVList , NamedValue

생성자의 개요
ServerRequest ()
           
 
메소드의 개요
 void arguments (NVList  args)
          메소드의 파라미터형을 지정해 in 및 inout 인수치를 취득합니다.
abstract  Context ctx ()
          오퍼레이션이 속성 액세스가 아니고 오퍼레이션의 IDL 정의에 문맥식이 지정되고 있는 경우는 오퍼레이션의 IDL 로 지정된 문맥 정보를 돌려줍니다.
 void except (Any  any)
          추천 되고 있지 않습니다.  set_exception()를 사용해 주세요.
 String op_name ()
          추천 되고 있지 않습니다.  operation()를 사용해 주세요.
 String operation ()
          org.omg.CORBA.NO_IMPLEMENT 예외를 슬로우 합니다.
 void params (NVList  params)
          추천 되고 있지 않습니다.  arguments 메소드를 사용한다
 void result (Any  any)
          추천 되고 있지 않습니다.  set_result 메소드를 사용한다
 void set_exception (Any  any)
           org.omg.CORBA.NO_IMPLEMENT 예외를 슬로우 합니다.
 void set_result (Any  any)
           org.omg.CORBA.NO_IMPLEMENT 예외를 슬로우 합니다.
 
클래스 java.lang. Object 에서 상속받은 메소드
clone , equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait
 

생성자의 상세

ServerRequest

public ServerRequest()
메소드의 상세

op_name

public String  op_name()
추천 되고 있지 않습니다.  operation()를 사용해 주세요.

불려 가는 오퍼레이션명을 취득합니다. OMG IDL 의 규칙에서는 이러한 이름은 이 오브젝트의 「최상정도의 파생」인터페이스로 서포트되는 모든 오퍼레이션 중(안)에서 일의가 아니면 안됩니다. 속성의 취득과 설정의 오퍼레이션명은 각각 _get_<attribute_name>_set_<attribute_name> 가 됩니다.

반환값:
불려 가는 오퍼레이션의 이름

operation

public String  operation()
org.omg.CORBA.NO_IMPLEMENT 예외를 슬로우 합니다.

불려 가는 오퍼레이션명을 취득합니다. OMG IDL 의 규칙에서는 이러한 이름은 이 오브젝트의 「최상정도의 파생」인터페이스로 서포트되는 모든 오퍼레이션 중(안)에서 일의가 아니면 안됩니다. 속성의 취득과 설정의 오퍼레이션명은 각각 _get_<attribute_name>_set_<attribute_name> 가 됩니다.

반환값:
불려 가는 오퍼레이션의 이름
관련 항목:
CORBA 패키지에 구현되어 있지 않은 기능에 대한 코멘트

params

public void params(NVList  params)
추천 되고 있지 않습니다.  arguments 메소드를 사용한다

메소드의 파라미터형을 지정해, in 및 inout 인수의 값을 취득합니다.

이 메소드는 추천 되지 않습니다. 대신에 arguments 메소드를 사용해 주세요.

set_exception 메소드가 불려 가지 않는 경우, DIR 는 메소드의 형태에 파라미터가 없어도 1 번만 이 메소드를 호출할 필요가 있습니다. arguments 또는 set_exception 메소드가 불려 갔을 경우, 같은 ServerRequest 오브젝트로 arguments 를 호출하면(자) BAD_INV_ORDER 시스템 예외가 됩니다. DIR 는 오퍼레이션의 파라미터형을 설명하는 TypeCode 와 Flag 로 초기화된 NVList 를, IDL 사양으로 지정되고 있는 순서 (왼쪽에서 오른쪽)로 arguments 메소드에 건네줄 필요가 있습니다. 잠재적으로 다른 NVList 가, 지정된 in 및 inout 인수치를 사용해 arguments 로부터 돌려주어집니다. set_exception 메소드를 호출하지 않는 경우, DIR 는 복귀전에, 돌려주어지는 NVList 에 모든 out 인수의 반환값을 지정할 필요가 있습니다. 또, 모든 inout 인수의 반환값을 변경하는 경우도 있습니다.

파라미터:
params - 메소드의 인수 (NVList 오브젝트의 형식)

arguments

public void arguments(NVList  args)
메소드의 파라미터형을 지정해 in 및 inout 인수치를 취득합니다. set_exception 메소드가 불려 가지 않는 경우, DIR 는 메소드의 형태에 파라미터가 포함되지 않아도 1 번만 이 메소드를 호출할 필요가 있습니다. arguments 또는 set_exception 메소드가 불려 갔을 경우, 같은 ServerRequest 오브젝트에 대해서 arguments 를 호출하면(자) BAD_INV_ORDER 시스템 예외가 슬로우 됩니다. DIR 는 오퍼레이션의 파라미터형을 설명하는 TypeCode 와 Flag 로 초기화된 NVList 를, IDL 사양으로 지정된 순서 (왼쪽에서 오른쪽)로 arguments 메소드에 건네줄 필요가 있습니다. 잠재적으로 다른 NVList 가, 지정된 in 및 inout 인수치를 사용해 arguments 로부터 돌려주어집니다. set_exception 메소드가 불려 가지 않는 경우, DIR 는 복귀전에, 돌려주어지는 NVList 에 모든 out 인수의 반환값을 지정할 필요가 있습니다. 또, 모든 inout 인수의 반환값을 변경하는 경우도 있습니다.

파라미터:
args - 메소드의 인수 (NVList 의 형식)
관련 항목:
CORBA 패키지에 구현되어 있지 않은 기능에 대한 코멘트

result

public void result(Any  any)
추천 되고 있지 않습니다.  set_result 메소드를 사용한다

호출의 임의의 반환값을 지정합니다.

이 메소드는 추천 되지 않습니다. 대신에 set_result 메소드를 사용해 주세요.

set_exception 메소드가 불려 가지 않고 불려 간 메소드의 결과형이 void 이외의 경우, DIR 의 복귀전에 set_result 메소드를 1 번만 호출할 필요가 있습니다. 오퍼레이션의 결과형이 void 의 경우, 필요에 따라서,tk_void 형의 Any 오브젝트를 사용해 set_result 메소드를 1 번 호출할 수가 있습니다. arguments 메소드가 불려 가기 전, 혹은 set_result 또는 set_exception 메소드가 불려 간 후에 set_result 메소드를 호출하면(자), BAD_INV_ORDER 예외가 슬로우 됩니다. IDL 오퍼레이션에 문맥식이 포함되는지 인수에게 건네진 NVList 에 클라이언트로부터 건네받은 모든 파라미터가 기술되지 않는 경우, 그 이전에 ctx 메소드를 호출하지 말고 set_result 메소드를 호출하면(자), MARSHAL 시스템 예외가 슬로우 되는 경우가 있습니다.

파라미터:
any - 설정하는 반환값을 포함한 Any 오브젝트

set_result

public void set_result(Any  any)
org.omg.CORBA.NO_IMPLEMENT 예외를 슬로우 합니다.

호출의 임의의 반환값을 지정합니다. set_exception 메소드가 불려 가지 않고 불려 간 메소드의 결과형이 void 이외의 경우, DIR 의 복귀전에 set_result 메소드를 1 번만 호출할 필요가 있습니다. 오퍼레이션의 결과형이 void 의 경우, 필요에 따라서,tk_void 형의 Any 오브젝트를 사용해,set_result 메소드를 1 번 호출할 수가 있습니다. arguments 메소드가 불려 가기 전, 혹은 set_result 또는 set_exception 메소드가 불려 간 후에 set_result 메소드를 호출하면(자), BAD_INV_ORDER 예외가 슬로우 됩니다. IDL 오퍼레이션에 문맥식이 포함되는지 인수에게 건네진 NVList 에 클라이언트로부터 건네받은 모든 파라미터가 기술되지 않는 경우, 그 이전에 ctx 메소드를 호출하지 말고 set_result 메소드를 호출하면(자), MARSHAL 시스템 예외가 슬로우 되는 경우가 있습니다.

파라미터:
any - 설정하는 반환값을 포함한 Any 오브젝트
관련 항목:
CORBA 패키지에 구현되어 있지 않은 기능에 대한 코멘트

except

public void except(Any  any)
추천 되고 있지 않습니다.  set_exception()를 사용해 주세요.

DIR 는 언제라도 set_exception 를 호출해 클라이언트에 예외를 돌려줄 수가 있습니다. set_exception 에게 건네지는 Any 에는 시스템 예외 또는 불려 가는 오퍼레이션의 IDL 정의의 발생식으로 지정된 유저 예외를 포함할 필요가 있습니다. 예외가 지정되어 있지 않은 Any 를 건네주면(자), BAD_PARAM 시스템 예외가 슬로우 됩니다. 리스트되어 있지 않은 유저 예외를 건네주면(자), DIR 가 BAD_PARAM 시스템 예외를 받는지 클라이언트가 UNKNOWN_EXCEPTION 시스템 예외를 받습니다.

파라미터:
any - 예외를 포함한 Any 오브젝트

set_exception

public void set_exception(Any  any)
org.omg.CORBA.NO_IMPLEMENT 예외를 슬로우 합니다.

지정된 예외를 클라이언트에 돌려줍니다. 이 메소드는 DIR 로부터 불려 가 언제라도 호출할 수가 있습니다. 이 메소드에게 건네진 Any 오브젝트에는 시스템 예외 또는 불려 가는 오퍼레이션의 IDL 정의로 지정된 유저 예외의 어느쪽이든을 포함할 필요가 있습니다. 예외가 지정되어 있지 않은 Any 를 건네주면(자), BAD_PARAM 시스템 예외가 슬로우 됩니다. 리스트되어 있지 않은 유저 예외를 건네주면(자), DIR 가 BAD_PARAM 시스템 예외를 받는지 클라이언트가 UNKNOWN_EXCEPTION 시스템 예외를 받습니다.

파라미터:
any - 예외를 포함한 Any 오브젝트
예외:
BAD_PARAM - 지정된 Any 오브젝트에 예외가 포함되지 않는 또는 예외가, 리스트되어 있지 않은 유저 예외인 경우
UNKNOWN_EXCEPTION - 지정된 예외가 리스트되어 있지 않은 유저 예외로, DIR 가 BAD_PARAM 예외를 받지 않았던 경우
관련 항목:
CORBA 패키지에 구현되어 있지 않은 기능에 대한 코멘트

ctx

public abstract Context  ctx()
오퍼레이션이 속성 액세스가 아니고 오퍼레이션의 IDL 정의에 문맥식이 지정되고 있는 경우는 오퍼레이션의 IDL 로 지정된 문맥 정보를 돌려줍니다. 그렇지 않은 경우는 nil Context 참조를 돌려줍니다. arguments 메소드의 호출전, 혹은 ctx,set_result, 또는 set_exception 메소드의 호출 후에 ctx 메소드를 호출하면(자), BAD_INV_ORDER 시스템 예외가 슬로우 됩니다.

반환값:
호출로 값을 건네줄 필요가 있는 임의의 문맥 캐릭터 라인의 해결로 사용하는 문맥 오브젝트
예외:
BAD_INV_ORDER - (1) arguments 메소드의 전에 ctx 메소드가 불려 가는지 (2) set_result 또는 set_exception 의 호출 후에 ctx 가 불려 가는 경우

JavaTM 2
Platform
Std.  Ed.  v1. 4.0

버그의 보고와 기능의 리퀘스트
이외의 API 레퍼런스 및 개발자용 문서에 대해서는 Java 2 SDK SE 개발자용 문서를 참조해 주세요. 개발자전용의 상세한 해설, 개념의 개요, 용어의 정의, 버그의 회피책, 및 코드 실례가 포함되어 있습니다.

Java, Java 2 D, 및 JDBC 는 미국 및 그 외의 나라에 있어서의 미국 Sun Microsystems, Inc. 의 상표 혹은 등록상표입니다.
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.