예: 다른 루트 컨텍스트를 초기 컨텍스트로 선택하도록 제공자 URL 특성 설정

각 서버는 자체 서버 루트 컨텍스트를 포함하며, 서버에 부트스트래핑하면 서버 루트는 기본 초기 JNDI 컨텍스트입니다. 대부분 EJB 홈과 같은 시스템 아티팩트가 거기에 바인드되므로 이 기본값은 원하는 초기 컨텍스트입니다. 그러나 기타 루트 컨텍스트가 존재하며, 원하는 바인딩을 포함할 수 있습니다. 기타 루트 컨텍스트를 선택하도록 제공자 URL을 지정할 수 있습니다.

기타 루트 컨텍스트 선택의 예는 다음과 같습니다.

CORBA 오브젝트 URL이 있는 초기 루트 컨텍스트 선택

초기 컨텍스트로 루트 컨텍스트를 선택하는 데 사용할 수 있는 부트스트랩 서버로 등록된 여러 오브젝트 키가 있습니다. CORBA 오브젝트 URL 오브젝트 키로 특정 루트 컨텍스트를 선택하려면, 오브젝트 키를 해당 값으로 설정합니다. 기본 오브젝트 키는 NameService입니다. JNDI를 사용하면 서버 루트 컨텍스트가 생성됩니다. 다른 루트 컨텍스트와 해당 오브젝트 키를 나열하는 테이블은 다음과 같습니다.

루트 컨텍스트 CORBA 오브젝트 URL 오브젝트 키
서버 루트 NameServiceServerRoot
셀 지속적 루트 NameServiceCellPersistentRoot
셀 루트 NameServiceCellRoot
노드 루트 NameServiceNodeRoot

다음 예는 초기 컨텍스트로 셀 지속적 루트 컨텍스트를 선택하기 위해 오브젝트 키가 설정된 corbaloc URL의 사용을 표시합니다.

...
import java.util.Hashtable;
import javax.naming.Context;  
import javax.naming.InitialContext;
...
   Hashtable env = new Hashtable();
env.put(Context.INITIAL_CONTEXT_FACTORY,
            "com.ibm.websphere.naming.WsnInitialContextFactory");
env.put(Context.PROVIDER_URL,
      "corbaloc:iiop:myhost.mycompany.com:2809/NameServiceCellPersistentRoot");
   Context initialContext = new InitialContext(env);
...

네임스페이스 루트 특성으로 초기 루트 컨텍스트 선택

네임스페이스 루트 특성 설정을 InitialContext 생성자에 전달하여 초기 루트 컨텍스트를 선택할 수도 있습니다. 일반적으로, 이전에 설명한 오브젝트 키 설정이 충분합니다. 특성 설정이 선호되는 경우도 있습니다. 예를 들어, Java 호출 시 루트 컨텍스트 특성을 설정하여 애플리케이션에 투명한 초기 컨텍스트로 사용 중인 서버 루트를 작성할 수 있습니다. 기본 서버 루트 특성 설정은 defaultroot이며, 서버 루트 컨텍스트를 생성합니다.

루트 컨텍스트 네임스페이스 루트 특성 값
서버 루트 bootstrapserverroot
셀 지속적 루트 cellpersistentroot
셀 루트 cellroot
노드 루트 bootstrapnoderoot

제공자 URL이 NameService가 아닌 오브젝트 키를 포함하는 경우 초기 컨텍스트 팩토리는 네임스페이스 루트 특성을 무시합니다.

다음 예는 셀 지속적 루트 컨텍스트를 초기 컨텍스트로 선택하기 위한 네임스페이스 루트 특성의 사용을 표시합니다. 사용 가능한 상수가 특성 이름과 값 하드 코딩 대신 사용됩니다.

...
import java.util.Hashtable;
import javax.naming.Context;  
import javax.naming.InitialContext;
import com.ibm.websphere.naming.PROPS;
...
   Hashtable env = new Hashtable();
env.put(Context.INITIAL_CONTEXT_FACTORY,
            "com.ibm.websphere.naming.WsnInitialContextFactory");
env.put(Context.PROVIDER_URL, "corbaloc:iiop:myhost.mycompany.com:2809");
env.put(PROPS.NAME_SPACE_ROOT, PROPS.NAME_SPACE_ROOT_CELL_PERSISTENT);
   Context initialContext = new InitialContext(env);
...

주제 유형을 표시하는 아이콘 참조 주제



시간소인 아이콘 마지막 업데이트 날짜: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=rnam_example_prop5
파일 이름:rnam_example_prop5.html