|
JavaTM Platform Standard Ed. 6 |
|||||||||
전의 패키지 다음의 패키지 | 프레임 있어 프레임 없음 |
참조처:
설명
인터페이스의 개요 | |
---|---|
AdapterActivator | 어댑터 activator는, 아이 POA (POA 의 아이의 어떤 것인가)의 이름을 지정하는 요구를 수신했을 때의 부작용으로서 또는 activate 파라미터치를 TRUE 로 설정해 find_POA 를 호출했을 때에, POA 가 필요에 따라서 아이 POA 를 작성할 수 있도록(듯이) 합니다. |
AdapterActivatorOperations | 어댑터 activator는, 아이 POA (POA 의 아이의 어떤 것인가)의 이름을 지정하는 요구를 수신했을 때의 부작용으로서 또는 activate 파라미터치를 TRUE 로 설정해 find_POA 를 호출했을 때에, POA 가 필요에 따라서 아이 POA 를 작성할 수 있도록(듯이) 합니다. |
Current | PortableServer::Current 인터페이스는, CORBA::Current 로부터 파생해, 메소드의 각 구현으로 그 메소드 호출의 대상이 되는 객체의 ID 에 액세스 할 수 있도록(듯이) 합니다. |
CurrentOperations | PortableServer::Current 인터페이스는, CORBA::Current 로부터 파생해, 메소드의 각 구현으로 그 메소드 호출의 대상이 되는 객체의 ID 에 액세스 할 수 있도록(듯이) 합니다. |
ID_ASSIGNMENT_POLICY_ID | org/omg/PortableServer/ID_ASSIGNMENT_POLICY_ID.java. |
ID_UNIQUENESS_POLICY_ID | org/omg/PortableServer/ID_UNIQUENESS_POLICY_ID.java. |
IdAssignmentPolicy | IdAssignmentPolicy 는, 작성된 POA 의 객체 ID 가 어플리케이션 또는 ORB 의 어느 쪽에 의해 생성되는지를 지정합니다. |
IdAssignmentPolicyOperations | IdAssignmentPolicy 는, 작성된 POA 의 객체 ID 가 어플리케이션 또는 ORB 의 어느 쪽에 의해 생성되는지를 지정합니다. |
IdUniquenessPolicy | IdUniquenessPolicy 는, 작성된 POA 로 기동되는 서번트에게, 일의의 객체 ID 가 필요한가 어떤가를 나타냅니다. |
IdUniquenessPolicyOperations | IdUniquenessPolicy 는, 작성된 POA 로 기동되는 서번트에게, 일의의 객체 ID 가 필요한가 어떤가를 나타냅니다. |
IMPLICIT_ACTIVATION_POLICY_ID | org/omg/PortableServer/IMPLICIT_ACTIVATION_POLICY_ID.java. |
ImplicitActivationPolicy | 이 정책는, 작성된 POA 로 서번트의 암묵적인 기동이 지원되고 있는지 어떤지를 나타냅니다. |
ImplicitActivationPolicyOperations | 이 정책는, 작성된 POA 로 서번트의 암묵적인 기동이 지원되고 있는지 어떤지를 나타냅니다. |
LIFESPAN_POLICY_ID | org/omg/PortableServer/LIFESPAN_POLICY_ID.java. |
LifespanPolicy | LifespanPolicy 는, 작성된 POA 로 구현된 객체의 유효기간을 나타냅니다. |
LifespanPolicyOperations | LifespanPolicy 는, 작성된 POA 로 구현된 객체의 유효기간을 나타냅니다. |
POA | POA 객체는, 객체의 컬렉션의 구현을 관리합니다. |
POAManager | 각 POA 객체에는, POAManager 객체를 관련지을 수 있고 있습니다. |
POAManagerOperations | 각 POA 객체에는, POAManager 객체를 관련지을 수 있고 있습니다. |
POAOperations | POA 객체는, 객체의 컬렉션의 구현을 관리합니다. |
REQUEST_PROCESSING_POLICY_ID | org/omg/PortableServer/REQUEST_PROCESSING_POLICY_ID.java. |
RequestProcessingPolicy | 이 정책는, 작성된 POA 가 어떻게 요구를 처리하는지를 나타냅니다. |
RequestProcessingPolicyOperations | 이 정책는, 작성된 POA 가 어떻게 요구를 처리하는지를 나타냅니다. |
SERVANT_RETENTION_POLICY_ID | org/omg/PortableServer/SERVANT_RETENTION_POLICY_ID.java. |
ServantActivator | POA 에 RETAIN 정책가 지정되고 있을 때는, 서번트 매니저로서 ServantActivator 가 사용됩니다. |
ServantActivatorOperations | POA 에 RETAIN 정책가 지정되고 있을 때는, 서번트 매니저로서 ServantActivator 가 사용됩니다. |
ServantLocator | POA 에 NON_RETAIN 정책가 지정되고 있을 때는, 서번트 매니저로서 ServantLocator 가 사용됩니다. |
ServantLocatorOperations | POA 에 NON_RETAIN 정책가 지정되고 있을 때는, 서번트 매니저로서 ServantLocator 가 사용됩니다. |
ServantManager | 서번트 매니저는, POA 가 정지중의 객체를 타겟으로 한 요구를 수신했을 때에, 필요에 따라서 객체를 기동할 수 있도록(듯이) 합니다. |
ServantManagerOperations | 서번트 매니저는, POA 가 정지중의 객체를 타겟으로 한 요구를 수신했을 때에, 필요에 따라서 객체를 기동할 수 있도록(듯이) 합니다. |
ServantRetentionPolicy | 이 정책는, 작성된 POA 가 액티브한 서번트를 Active Object Map 에 보존할지 어떨지를 나타냅니다. |
ServantRetentionPolicyOperations | 이 정책는, 작성된 POA 가 액티브한 서번트를 Active Object Map 에 보존할지 어떨지를 나타냅니다. |
THREAD_POLICY_ID | org/omg/PortableServer/THREAD_POLICY_ID.java. |
ThreadPolicy | ThreadPolicy 는, 작성된 POA 로 사용되는 thread 모델을 나타냅니다. |
ThreadPolicyOperations | ThreadPolicy 는, 작성된 POA 로 사용되는 thread 모델을 나타냅니다. |
클래스의 개요 | |
---|---|
_ServantActivatorStub | POA 에 RETAIN 정책가 지정되고 있을 때는, 서번트 매니저로서 ServantActivator 가 사용됩니다. |
_ServantLocatorStub | POA 에 NON_RETAIN 정책가 지정되고 있을 때는, 서번트 매니저로서 ServantLocator 가 사용됩니다. |
CurrentHelper | PortableServer::Current 인터페이스는, CORBA::Current 로부터 파생해, 메소드의 각 구현으로 그 메소드 호출의 대상이 되는 객체의 ID 에 액세스 할 수 있도록(듯이) 합니다. |
DynamicImplementation | 객체 호출의 동적인 처리를 가능하게 합니다. |
ForwardRequestHelper | org/omg/PortableServer/ForwardRequestHelper.java. |
IdAssignmentPolicyValue | IdAssignmentPolicyValue 에는, 다음의 값을 지정할 수 있습니다. |
IdUniquenessPolicyValue | IdUniquenessPolicyValue 에는, 다음의 값을 지정할 수 있습니다. |
ImplicitActivationPolicyValue | ImplicitActivationPolicyValue 에는, 다음의 시멘틱스를 지정할 수 있습니다. |
LifespanPolicyValue | LifespanPolicyValue 에는, 다음의 값을 지정할 수 있습니다. |
POAHelper | POA 객체는, 객체의 컬렉션의 구현을 관리합니다. |
RequestProcessingPolicyValue | RequestProcessingPolicyValue 에는, 다음의 값을 지정할 수 있습니다. |
Servant | 네이티브인 Servant 형을 정의합니다. |
ServantActivatorHelper | POA 에 RETAIN 정책가 지정되고 있을 때는, 서번트 매니저로서 ServantActivator 가 사용됩니다. |
ServantActivatorPOA | POA 에 RETAIN 정책가 지정되고 있을 때는, 서번트 매니저로서 ServantActivator 가 사용됩니다. |
ServantLocatorHelper | POA 에 NON_RETAIN 정책가 지정되고 있을 때는, 서번트 매니저로서 ServantLocator 가 사용됩니다. |
ServantLocatorPOA | POA 에 NON_RETAIN 정책가 지정되고 있을 때는, 서번트 매니저로서 ServantLocator 가 사용됩니다. |
ServantRetentionPolicyValue | ServantRetentionPolicyValue 에는, 다음의 값을 지정할 수 있습니다. |
ThreadPolicyValue | ThreadPolicyValue 에는, 다음의 값을 지정할 수 있습니다. |
예외의 개요 | |
---|---|
ForwardRequest | org/omg/PortableServer/ForwardRequest.java. |
클래스와 인터페이스를 제공해, 어플리케이션의 서버측을 복수 벤더간 ORB 로 이식할 수 있도록(듯이) 합니다.
Java 에서는, POA (Portable Object Adaptor) 베이스의 DSI (Dynamic Skeleton Interface) 서번트는, 표준의 DynamicImplementation 클래스로부터 상속합니다. 이것은,Servant 클래스로부터 상속하고 있습니다. 네이티브인 Servant 형은, POA 의 PortableServer 모듈에 의해 정의됩니다. Java 에서는,Servant 형은 Java 의 org.omg.PortableServer.Servant 클래스에 맵 됩니다. 이 클래스는, 모든 POA 서번트 구현의 base class로서 기능해, 어플리케이션 프로그래머가 호출할 수 있는 몇개의 메소드 외에, POA 그 자체에 의해 불려 가 서번트의 동작을 제어하기 위해서 사용자가 오버라이드(override) 할 수 있는 메소드도 제공합니다.
Java(TM) Platform, Standard Edition 6 이 준거하는 공식의 OMG 스펙의 지원 섹션의 정확한 리스트는,「Java(TM) SE 6 에서의 정식적 CORBA 지원 스펙」을 참조해 주세요.
PortableServer 모듈은, 다음의 POA 관련의 인터페이스를 정의합니다.
또, POA 는 Servant 네이티브형도 정의합니다.
상기의 각 인터페이스에는,Operations
인터페이스를 관련지을 수 있고 있습니다. Operations
인터페이스는,idlj
컴파일러에 의해 생성되어 거기에 관련지을 수 있었던 인터페이스에 정의되고 있는 메소드의 메소드시그니챠를 포함합니다. Operations
인터페이스는 클라이언트와 서버의 양쪽 모두로부터 액세스 할 수 있습니다만, 거기에 관련지을 수 있었던 인터페이스는 클라이언트로부터 밖에 호출할 수 없습니다.
PolicyValue
로 끝나는 클래스는, POA 의 정책를 설정하는 create_POA
호출에 사용되는 값을 제공합니다. 데먼스트레이션에 대해서는, 이하의코드예를 참조해 주세요. PolicyValue
파일에는, 다음의 것이 있습니다.
IdAssignmentPolicyValue
IdUniquenessPolicyValue
ImplicitActivationPolicyValue
LifespanPolicyValue
RequestProcessingPolicyValue
ServantRetentionPolicyValue
ThreadPolicyValue
OMG IDL 인터페이스의 모든 사용자 정의형으로 생성되는 헬퍼 클래스는, 사용자 정의형의 조작에 필요한 static 메소드를 제공합니다. 헬퍼 클래스에는, 어플리케이션 프로그래머가 사용하는 메소드가 1 개만 있습니다. narrow
메소드입니다. IDL 인터페이스로부터 맵 되는 Java 인터페이스만이,narrow
메소드를 포함한 헬퍼 클래스를 갖추고 있습니다. 따라서,PortableServer
패키지에서는, 다음의 클래스에만 narrow
메소드가 있습니다.
ForwardRequestHelper
ServantActivatorHelper
ServantLocatorHelper
POA 클래스는,ServantActivator
또는 ServantLocator
의 구현에 사용합니다.
ForwardRequest
예외는, 현재의 요구와 후속의 ForwardRequest
요구를 그 예외의 forward_reference
멤버에게 나타난 객체에 전달할 책임이 있는 것을 ORB 에 통지합니다.
PortableServer
에 의해 행해지는 처리의 대부분은, 사용자에게는 보이지 않습니다. 이 때문에, 상기의 인터페이스 가운데로 프로그래머가 사용하는 것은 그저 정확히 알 수 없는 것입니다. 나머지의 인터페이스는, ORB 구현에 의해 제공됩니다. 어플리케이션 프로그래머가 사용하는 인터페이스는, 다음과 같습니다.
AdapterActivator
어댑터 activator는 POA 와 관련지을 수 있습니다. 어댑터 activator를 사용하면(자), POA 는, 필요에 따라서 아이 POA 를 작성할 수 있게 됩니다. 아이 POA 의 작성은, 아이 POA (또는 복수의 아이의 어떤 것인지)를 지정한 요구를 수신했을 때의 부작용으로서 실행되든가, 혹은 기동 파라미터치 TRUE
를 사용해 find_POA
가 불려 갔을 때에 실행됩니다. 실행의 초에 필요한 POA 를 모두 작성하는 어플리케이션 서버에서는, 어댑터 activator를 사용할 필요도 준비할 필요도 없습니다. 즉, 요구의 처리시에 POA 를 작성할 필요가 있는 경우에만 어댑터 activator가 필요하게 됩니다.
ServantLocator
POA 에 NON_RETAIN
정책가 지정되고 있을 때는, 서번트 매니저로서 ServantLocator
가 사용됩니다.
ServantActivator
POA 에 RETAIN
정책가 지정되고 있을 때는, 서번트 매니저로서 ServantActivator
가 사용됩니다.
이 패키지는,Cookie 형을 out
파라미터로서 건네주기 위한 CookieHolder 클래스를 제공합니다. CookieHolder
클래스는, 기본형외의 홀더 클래스와 완전히 같은 패턴에 따릅니다.
Java IDL 의 개요에 대해서는, 다음을 참조해 주세요.
import javax.naming.InitialContext; import javax.naming.Context; import javax.rmi.PortableRemoteObject ; import com.sun.corba.se.impl.poa.POAORB; import org.omg.PortableServer. *; import java.util. *; import org.omg.CORBA. *; import javax.rmi.CORBA.Stub; import javax.rmi.CORBA.Util; public class HelloServer { public HelloServer(String[] args) { try { Properties p = System.getProperties(); // p.put("org.omg.CORBA.ORBClass", "com.sun.corba.ee.internal.POA.POAORB"); ORB orb = ORB.init( args, p ); POA rootPOA = (POA) orb.resolve_initial_references("RootPOA"); Policy[] tpolicy = new Policy[3]; tpolicy[0] = rootPOA.create_lifespan_policy( LifespanPolicyValue.TRANSIENT ); tpolicy[1] = rootPOA.create_request_processing_policy( RequestProcessingPolicyValue.USE_ACTIVE_OBJECT_MAP_ONLY ); tpolicy[2] = rootPOA.create_servant_retention_policy( ServantRetentionPolicyValue.RETAIN); POA tpoa = rootPOA.create_POA("MyTransientPOA", null, tpolicy); String ObjectId = "MyObjectId"; byte[] oid = ObjectId.getBytes(); org.omg.CORBA.Object obj = tpoa.create_reference_with_id(oid, new _HelloImpl_Tie(). _all_interfaces(tpoa, oid)[0]); HelloInterface helloRef = (HelloInterface) PortableRemoteObject.narrow( obj, HelloInterface.class ); Context initialNamingContext = new InitialContext(); initialNamingContext.rebind("HelloService", helloRef); System.out.println("Hello Server:Ready..."); orb.run(); } catch (Exception e) { System.out.println("Trouble:" + e ); e.printStackTrace(); } } public static void main(String args[]) { new HelloServer( args ); } }
|
JavaTM Platform Standard Ed. 6 |
|||||||||
전의 패키지 다음의 패키지 | 프레임 있어 프레임 없음 |
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.