JavaTM Platform
Standard Ed. 6

패키지 javax.naming

네임 서비스에 액세스하기 위한 클래스 및 인터페이스를 제공합니다.

참조처:
          설명

인터페이스의 개요
Context 이 인터페이스는, 이름으로부터 객체에의 바인딩세트로부터 구성되는 네이밍 문맥을 나타냅니다.
Name Name 인터페이스는, 일반명, 즉 컴퍼넌트가 순서 붙이고 된 순서를 나타냅니다.
NameParser 이 인터페이스는, 1 계층의 이름 공간으로부터 이름의 구문을 해석하기 위해서 사용됩니다.
NamingEnumeration<T> 이 인터페이스는, javax.naming 및 javax.naming.directory 패키지내의 메소드에 의해 반환된 리스트를 열거하기 위해서 사용됩니다.
Referenceable 이 인터페이스는, Reference 를 그 자체에 제공할 수 있는 객체에 의해 구현됩니다.
 

클래스의 개요
BinaryRefAddr 이 클래스는, 통신단점의 주소의 바이너리 형식을 나타냅니다.
Binding 이 클래스는, 문맥의 이름과 객체와의 바인딩을 나타냅니다.
CompositeName 이 클래스는, 합성명을 나타냅니다.
CompoundName 이 클래스는 복합명을 나타냅니다.
InitialContext 이 클래스는, 네이밍 조작을 실행하기 위한 초기 문맥입니다.
LinkRef 이 클래스는 참조를 나타냅니다.
NameClassPair 이 클래스는, 문맥의 바인딩의 객체명과 클래스명의 페어를 나타냅니다.
RefAddr 이 클래스는 통신단점의 주소를 나타냅니다.
Reference 이 클래스는, 네이밍 및 디렉토리 시스템의 외부에서 검출되는 객체에 대한 참조를 나타냅니다.
StringRefAddr 이 클래스는, 통신단점의 주소를 캐릭터 라인 형식에서 나타냅니다.
 

예외의 개요
AuthenticationException 이 예외는, 네이밍 서비스 또는 디렉토리 서비스에 액세스 할 때에 인증 에러가 발생했을 경우에 throw 됩니다.
AuthenticationNotSupportedException 이 예외는, 요구된 인증의 특정의 후레이바가 지원되어 있지 않은 경우에 throw 됩니다.
CannotProceedException 이 예외는, 오퍼레이션을 더 이상 진행되지 않는 이름의 포인트에 오퍼레이션이 달한 것을 나타내기 위해서(때문에) throw 됩니다.
CommunicationException 이 예외는, 클라이언트가 디렉토리 서비스 또는 네이밍 서비스와 통신할 수 없는 경우에 throw 됩니다.
ConfigurationException 이 예외는, 구성상의 문제가 있는 경우에 throw 됩니다.
ContextNotEmptyException 이 예외는, 빈 상태(empty)이 아닌 문맥을 파기하려고 했을 경우에 throw 됩니다.
InsufficientResourcesException 이 예외는, 요구된 오퍼레이션을 완료하기 위해서 자원을 이용할 수 없는 경우에 throw 됩니다.
InterruptedNamingException 이 예외는, 네이밍 조작의 호출이 끼어들어졌을 경우에 throw 됩니다.
InvalidNameException 이 예외는, 지정된 이름이 네이밍 시스템의 네이밍 구문과 일치하지 않는 것을 나타냅니다.
LimitExceededException 이 예외는, 사용자 또는 시스템으로 지정된 제한에 의해 메소드가 이상종료(ABEND) 했을 경우에 throw 됩니다.
LinkException 이 예외는, 링크의 해결중에 발견된 문제를 설명하기 위해서 사용됩니다.
LinkLoopException 이 예외는, 링크를 해결하려고 해 루프가 검출되었을 때, 또는 링크 카운트의 고유의 구현으로 제한에 이르렀을 때에 throw 됩니다.
MalformedLinkException 이 예외는, 링크를 해결 또는 구축할 경우에 무효인 링크가 발견되었을 경우에 throw 됩니다.
NameAlreadyBoundException 이 예외는, 이름이 벌써 다른 객체에 바인드 되고 있기 위해서(때문에), 바인딩을 추가할 수 없는 것을 나타내는 메소드에 의해 throw 됩니다.
NameNotFoundException 이 예외는, 바인드되어 있지 않기 위해(때문에), 이름의 컴퍼넌트를 해결할 수 없는 경우에 throw 됩니다.
NamingException Context 및 DirContext 인터페이스에서의 조작에 의해 throw 되는 모든 예외의 슈퍼 클래스입니다.
NamingSecurityException Context 및 DirContext 인터페이스에서의 조작에 의해 throw 되는 시큐리티에 관련하는 예외의 슈퍼 클래스입니다.
NoInitialContextException 이 예외는, 초기 문맥 구현을 작성할 수 없는 경우에 throw 됩니다.
NoPermissionException 이 예외는, 클라이언트가 액세스권을 갖지 않는 조작을 실행하려고 하면(자) throw 됩니다.
NotContextException 네이밍 조작을 계속하기 위해서 문맥이 필요한 지점에서, 해결된 객체가 문맥이 아닌 경우에, 이 예외는 throw 됩니다.
OperationNotSupportedException 문맥 구현이 불려 간 조작을 지원하지 않는 경우에, 이 예외는 throw 됩니다.
PartialResultException 이 예외는, 현재 돌려주어지고 있는 결과, 또는 지금까지 반환된 결과가 부분적인 것, 및 조작을 완료할 수 없는 것을 나타내기 위해서(때문에) throw 됩니다.
ReferralException 이 abstract 클래스는, LDAP v3 서버에 의해 반환되는 경우등의참조에 응답해 생성되는 참조 예외를 나타내는데 사용됩니다.
ServiceUnavailableException 이 예외는, 디렉토리 서비스 또는 네임 서비스와의 통신을 시도한 결과, 그 서비스를 이용할 수 없는 경우에 throw 됩니다.
SizeLimitExceededException 이 예외는, 메소드가 사이즈 관련의 제한을 넘는 결과를 생성했을 경우에 throw 됩니다.
TimeLimitExceededException 이 예외는, 메소드가 지정된 제한 시간내에 종료하지 않는 경우에 throw 됩니다.
 

패키지 javax.naming 의 설명

네임 서비스에 액세스하기 위한 클래스 및 인터페이스를 제공합니다.

이 패키지는, Java Naming and Directory InterfaceTM (JNDI)의 네이밍 조작을 정의합니다. JNDI 는 Java 프로그램 언어로 작성된 어플리케이션에 네이밍 기능 및 디렉토리 기능을 제공합니다. JNDI 는, 특정의 네이밍 또는 디렉토리 서비스 구현으로부터 독립해 설계되고 있습니다. 이 때문에, 새로운 서비스 및 벌써 배치되고 있는 여러가지 서비스에, 공통의 방법으로 액세스 할 수 있습니다.

Context

이 패키지는,Context 인터페이스로 나타내지는,문맥의 개념을 정의합니다. 문맥은 객체에 대한 이름의바인딩세트로 구성됩니다. Context 는, 객체의 검색, 바인딩, 바인딩 해제, 이름의 변경, 및 서브 문맥의 작성과 파기를 실행하기 위한 코어 인터페이스입니다.

lookup() 는, 가장 빈번하게 사용되는 조작입니다. lookup() 에 검색하는 객체의 이름을 공급하면(자), 그 이름에 바인드 되고 있는 객체가 돌려주어집니다. 이 예로서 프린터를 검색해, 출력하는 프린터 객체에 문서를 송신하는 코드를 다음에 나타냅니다.

Printer printer = (Printer) ctx.lookup("treekiller");
printer.print(report);

이름

Context 인터페이스내의 모든 네이밍 메소드에, 2 개의 overload가 있습니다. 1 개(살)은 Name 인수를 받아들이는 overload로, 이제(벌써) 1 개(살)은 캐릭터 라인명을 받아들이는 overload입니다. Name 는, 총칭명을 나타내는 (복수의 컴퍼넌트가 있는 경우는 제로로부터 순서 붙이고 된다) 인터페이스입니다. 이러한 메소드의 경우, 복수의 이름 공간에 걸치는 이름을 사용해 객체에 이름을 붙이기 위해서(때문에),Name 를 사용해합성명 (CompositeName)을 나타낼 수 있습니다.

Name 를 받아들이는 overload는, 어플리케이션으로 이름의 처리 (이름의 작성, 컴퍼넌트의 비교등)를 실시하는 경우에 편리합니다. 1 개의 이름으로 단순하게 읽어들여, 대응하는 객체를 검색하는 등의 단순한 어플리케이션으로, 캐릭터 라인명을 받아들이는 overload는 보다 도움이 됩니다.

바인딩

Binding 클래스는 객체에 대한 이름의 바인딩을 나타냅니다. 이 클래스는, 바인드 된 객체의 이름, 객체의 클래스의 이름, 및 객체 자체가 포함되는 1 개의 타풀 (조)입니다.

실제,Binding 클래스는 객체의 이름과 객체의 클래스명만으로 구성되는,NameClassPair 의 서브 클래스입니다. NameClassPair 는, 객체의 클래스에 관한 정보만이 필요해, 객체를 취득하는데 불필요한 수고를 들이고 싶지 않은 경우에 편리합니다.

참조

객체는 네이밍 및 디렉토리 서비스에 다른 방법으로 포함됩니다. 객체 스토어가 Java 객체의 포함을 지원하고 있는 경우, 객체의 직렬화 된 형식에서의 포함이 지원됩니다. 다만, Java 객체의 포함을 지원하지 않는 네이밍 및 디렉토리 서비스도 있습니다. 게다가 디렉토리내의 몇개의 객체에 있어서는, Java 프로그램은 단지 그러한 객체에 액세스 하는 어플리케이션의 1 그룹에 지나지 않습니다. 이 경우, 직렬화 된 Java 객체는 가장 적절한 표현으로는 되지 않습니다. JNDI 는, 객체의 카피의 구축 방법에 관한 정보가 포함되는,Reference 클래스에서 나타내지는참조를 정의합니다. JNDI 는, 참조의 검색처를, 디렉토리로부터 이 참조가 나타내는 Java 객체에 변경하려고 합니다. 그 결과, JNDI 클라이언트는 디렉토리내에 포함되는 내용이 Java 객체이라고 간주합니다.

초기 문맥

JNDI 에서는, 모든 네이밍 및 디렉토리 조작은 문맥에 관련해 실행됩니다. 절대적인 루트는 없습니다. 따라서, JNDI 는 네이밍 및 디렉토리 조작의 개시 지점을 지정하는초기 문맥,InitialContext 를 정의합니다. 한 번 초기 문맥을 지정하면(자), 다른 문맥이나 객체를 참조하는 경우도 그 초기 문맥을 사용할 수 있습니다.

예외

JNDI 는 네이밍 및 디렉토리 조작을 실행하는 과정에서 throw 할 수 있는 예외의 클래스 계층을 정의합니다. 이 클래스 계층 루트는 NamingException 입니다. 특정의 예외를 취급하는 프로그램에서는, 그 예외의 대응하는 서브 클래스를 캐치 할 수 있습니다. 그 이외의 경우, 프로그램에서는 NamingException 를 캐치 합니다.

패키지의 스펙

JNDI API 스펙과 관련 문서에 대해서는, 「JNDI 의 문서」를 참조해 주세요.

도입된 버젼:
1.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 도 참조해 주세요.