JavaTM Platform
Standard Ed. 6

패키지 org.omg.CosNaming

Java IDL 의 네임 서비스를 제공합니다.

참조처:
          설명

인터페이스의 개요
BindingIterator BindingIterator 인터페이스를 사용하면(자), 클라이언트는 next_one 또는 next_n 를 사용해 바인딩을 차례차례로 돌려줄 수가 있습니다.
BindingIteratorOperations BindingIterator 인터페이스를 사용하면(자), 클라이언트는 next_one 또는 next_n 를 사용해 바인딩을 차례차례로 돌려줄 수가 있습니다.
NamingContext 네이밍 문맥은, 각각이 일의의 이름을 가지는 일련의 네임 바인딩을 포함하는 객체입니다.
NamingContextExt NamingContextExt 는, 각각의 이름이 고유해 Interoperable Naming Service 의 일부인 이름 바인딩세트를 포함하는 NamingContext 의 확장입니다.
NamingContextExtOperations NamingContextExt 는, 각각의 이름이 고유해 Interoperable Naming Service 의 일부인 이름 바인딩세트를 포함하는 NamingContext 의 확장입니다.
NamingContextOperations 네이밍 문맥은, 각각이 일의의 이름을 가지는 일련의 네임 바인딩을 포함하는 객체입니다.
 

클래스의 개요
_BindingIteratorImplBase  
_BindingIteratorStub BindingIterator 인터페이스를 사용하면(자), 클라이언트는 next_one 또는 next_n 를 사용해 바인딩을 차례차례로 돌려줄 수가 있습니다.
_NamingContextExtStub NamingContextExt 는, 각각의 이름이 고유해 Interoperable Naming Service 의 일부인 이름 바인딩세트를 포함하는 NamingContext 의 확장입니다.
_NamingContextImplBase  
_NamingContextStub 네이밍 문맥은, 각각이 일의의 이름을 가지는 일련의 네임 바인딩을 포함하는 객체입니다.
Binding org/omg/CosNaming/Binding.java.
BindingHelper org/omg/CosNaming/BindingHelper.java.
BindingHolder org/omg/CosNaming/BindingHolder.java.
BindingIteratorHelper BindingIterator 인터페이스를 사용하면(자), 클라이언트는 next_one 또는 next_n 를 사용해 바인딩을 차례차례로 돌려줄 수가 있습니다.
BindingIteratorHolder BindingIterator 인터페이스를 사용하면(자), 클라이언트는 next_one 또는 next_n 를 사용해 바인딩을 차례차례로 돌려줄 수가 있습니다.
BindingIteratorPOA BindingIterator 인터페이스를 사용하면(자), 클라이언트는 next_one 또는 next_n 를 사용해 바인딩을 차례차례로 돌려줄 수가 있습니다.
BindingListHelper 바인딩의 리스트입니다.
BindingListHolder 바인딩의 리스트입니다.
BindingType 지정된 바인딩이, 객체용 (즉 네이밍 문맥이 아니다)이나 네이밍 문맥용인지를 지정합니다.
BindingTypeHelper 지정된 바인딩이, 객체용 (즉 네이밍 문맥이 아니다)이나 네이밍 문맥용인지를 지정합니다.
BindingTypeHolder 지정된 바인딩이, 객체용 (즉 네이밍 문맥이 아니다)이나 네이밍 문맥용인지를 지정합니다.
IstringHelper org/omg/CosNaming/IstringHelper.java.
NameComponent org/omg/CosNaming/NameComponent.java.
NameComponentHelper org/omg/CosNaming/NameComponentHelper.java.
NameComponentHolder org/omg/CosNaming/NameComponentHolder.java.
NameHelper 이름은, 이름 컴퍼넌트의 순서입니다.
NameHolder 이름은, 이름 컴퍼넌트의 순서입니다.
NamingContextExtHelper NamingContextExt 는, 각각의 이름이 고유해 Interoperable Naming Service 의 일부인 이름 바인딩세트를 포함하는 NamingContext 의 확장입니다.
NamingContextExtHolder NamingContextExt 는, 각각의 이름이 고유해 Interoperable Naming Service 의 일부인 이름 바인딩세트를 포함하는 NamingContext 의 확장입니다.
NamingContextExtPOA NamingContextExt 는, 각각의 이름이 고유해 Interoperable Naming Service 의 일부인 이름 바인딩세트를 포함하는 NamingContext 의 확장입니다.
NamingContextHelper 네이밍 문맥은, 각각이 일의의 이름을 가지는 일련의 네임 바인딩을 포함하는 객체입니다.
NamingContextHolder 네이밍 문맥은, 각각이 일의의 이름을 가지는 일련의 네임 바인딩을 포함하는 객체입니다.
NamingContextPOA 네이밍 문맥은, 각각이 일의의 이름을 가지는 일련의 네임 바인딩을 포함하는 객체입니다.
 

패키지 org.omg.CosNaming 의 설명

Java IDL 의 네임 서비스를 제공합니다. Object Request Broker Daemon (ORBD)에도 일시적 및 지속적인 네임 서비스가 있습니다.

이 패키지, 및 이 패키지에 포함할 수 있어 모든 클래스 및 인터페이스는, OMG IDL 로 기술된 모듈인 파일 nameservice.idl 로,idlj 툴을 실행하는 것으로써 생성되고 있습니다.

패키지의 스펙

Java(TM) Platform, Standard Edition 6, ORB 가 준거하는 공식의 스펙의 지원 섹션의 정확한 리스트는,「Java(TM) SE 6 에서의 정식적 CORBA 지원 스펙」을 참조해 주세요.

인터페이스

패키지 org.omg.CosNaming 에는, 2 개의 public 인터페이스와 몇개의 보조 클래스가 포함되어 있습니다.

인터페이스는 다음의 2 개입니다.

이 2 개의 인터페이스는, 이름과 객체 참조의 바인드와 언바인드(unbind), 바인드 된 객체 참조의 취득, 및 바인딩을 리스트로부터 차례차례로 돌려주기 위한 수단을 제공합니다. NamingContext 인터페이스는, 네임 서비스의 주요한 기능을 제공해,BindingIterator 인터페이스는, 이름과 객체 참조의 바인딩을 리스트로부터 차례차례로 돌려주기 위한 수단을 제공합니다.

보조 클래스

OMG IDL 인터페이스를 Java 프로그램 언어에 매핑 하기 위해서, idlj 컴파일러는, 보조 클래스라고 보여지는 Java 클래스를 작성합니다. 생성된 보조 클래스는,NamingContext 인터페이스 및 BindingIterator 인터페이스에 의해 사용됩니다. 보조 클래스에 대한 코멘트를 다음에 나타냅니다.

NamingContextBindingIterator 에 의해 사용되는 클래스

네임 서비스에 의해 사용되는 클래스를 다음에 나타냅니다. 이러한 클래스 각각 대해 생성되는 헬퍼 클래스 및 홀더 클래스에 대해서는 나중에 설명하겠습니다.

홀더 클래스

OMG IDL 는, 조작으로부터 값을 돌려주기 위해서(때문에) OUT 파라미터 및 INOUT 파라미터를 사용합니다. OUT 파라미터 및 INOUT 파라미터를 가지지 않는 Java 프로그램 언어에 매핑 하는 것으로써, 각각의 형태에 홀더 클래스로 불리는 특수한 클래스가 작성됩니다. 홀더 클래스의 인스턴스는, 파라미터로서 Java 메소드에 건네줄 수가 있어 값을 value 필드에 대입할 수 있습니다. 이것에 의해, OUT 파라미터 또는 INOUT 파라미터의 기능을 완수할 수가 있습니다.

org.omg.CosNaming 패키지에서는, 다음의 홀더 클래스가 생성됩니다.

org.omg.CORBA 패키지에서는, Java 의 기본형의 각각 붙어, 홀더 클래스 (IntHolder,ShortHolder,StringHolder 등)가 있습니다.

또,Name 클래스가 없는 경우에서도 NameHolder 클래스가 있습니다. 같이BindingList 클래스가 없는 경우에서도 BindingListHolder 가 있습니다. 이것은, OMG IDL 인터페이스에서는,NameBindingListtypedef 이기 (위해)때문에입니다. IDL 의 typedef 로부터 Java 의 구조체에의 매핑은 할 수 없습니다만,typedef 가 순서용 또는 배열용인 경우는 홀더 클래스가 생성됩니다. Java 프로그램 언어에 매핑 되었을 경우는,NameNameComponent 객체의 배열이 되어,BindingListBinding 객체의 배열이 됩니다. 모든 홀더 클래스는, 2 개(살) 이상의 생성자 과 1 개의 필드를 가집니다.

사용자 정의형 (Java 클래스)의 홀더 클래스에는, 이 밖에 3 개의 메소드가 있습니다만, 어플리케이션 개발자가 직접 이러한 메소드를 사용할 것은 없습니다.

헬퍼 클래스

OMG IDL 인터페이스의 모든 사용자 정의형으로 생성되는 헬퍼 클래스는, 사용자 정의형의 조작에 필요한 static 메소드를 제공합니다.

헬퍼 클래스에는, 어플리케이션 프로그래머가 사용하는 메소드가 1 개만 있습니다. narrow 메소드입니다. IDL 인터페이스로부터 매핑 된 Java 인터페이스만이,narrow 메소드가 있는 헬퍼 클래스를 가집니다. 이 때문에,CosNaming 패키지에서는,NamingContextHelper 클래스와 BindingIteratorHelper 클래스에만 narrow 메소드가 있습니다.

org.omg.CosNaming.NamingContextPackage 패키지

이 패키지는,org.omg.CosNaming 패키지로 사용되는 예외와NotFound 예외의 이유를 제공하는 NotFoundReason 클래스의 Helper 클래스 및 Holder 클래스를 제공합니다.

다음의 예외의 Helper 클래스 및 Holder 클래스가 있습니다.

네임 서비스 호환성

Sun 의 CosNaming 패키지의 구현은, OMG COSNaming 스펙에 따르고 있습니다. 즉, Sun 의 네임 서비스의 API 는, OMG 가 제공하는 네임 서비스의 가이드 라인에 따라 구현됩니다. 따라서, Sun 이외의 벤더가 OMG 준거의 네임 서비스를 구현하고 있으면, Sun 의 CosNaming 의 구현과 Sun 이외의 벤더의 구현과의 사이에서의 변환이 가능합니다. 다만, 예외 캐릭터 라인의 상위 등, 네임 서비스를 구현하는 벤더에 의해 다소의 차이가 있는 것을 이해해 둘 필요가 있습니다.

Sun 이외의 네임 서비스를 사용할 때의 가이드

같은 벤더의 ORB 와 ORB 서비스를 사용하는 것을 추천합니다만, Sun 이외의 COSNaming 구현에 Sun 의 RMI-IIOP ORB 를 접속하는 일도 가능합니다. 다음의 스텝에 따릅니다.
  1. Bootstrap 서버에 프로퍼티 파일을 작성해, 그 파일에 2 개의 엔트리를 작성합니다. 예를 들어, 이 프로퍼티 파일을 /tmp/services 라고 이름 붙여 그 파일에 NameService <Root Naming Context 의 Stringified IOR > 를 넣습니다.

    이것에 의해,NameService 와 사용하고 싶은 CosNaming 구현의 Root Naming Context 가 관련지을 수 있습니다.

  2. 다음의 커멘드를 사용해, 스탠드얼론 Bootstrap 서버를 기동합니다.
          
    java -classpath $(CLASSPATH)
    com.sun.corba.ee.internal.CosNaming.BootstrapServer -InitialServicesFile
    "/tmp/services" [-ORBInitialPort port]
          
      

    커멘드의 마지막 꺽쇄묶음은, 포트 번호의 지정이 임의인 것을 나타냅니다.

어플리케이션이 org.omg.CORBA.ORB.resolve_initial_references 메소드를 호출하면(자), CORBA 프로세스가 Bootstrap Server 에 접속해 Root Naming Context 를 가져옵니다.

패키지의 스펙

관련 문서

CosNaming API 의 개요 및 사용예에 대해서는, 이하를 참조해 주세요.

Java IDL 의 개요에 대해서는, 이하를 참조해 주세요.

도입된 버젼:
JDK1. 3

JavaTM Platform
Standard Ed. 6

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

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.