|
JavaTM Platform Standard Ed. 6 |
|||||||||
전의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요: 상자 | 필드 | 생성자 | 메소드 | 상세: 필드 | 생성자 | 메소드 |
java.lang.Objectjava.lang.Throwable
java.lang.Exception
javax.naming.NamingException
javax.naming.ReferralException
public abstract class ReferralException
이 abstract 클래스는, LDAP v3 서버에 의해 반환되는 경우등의참조에 응답해 생성되는 참조 예외를 나타내는데 사용됩니다.
서비스 프로바이더는,getReferralInfo() 와 getReferralContext() ( 및 적절한 생성자 또는 대응하는 「set」메소드 및 그 양쪽 모두)의 구현을 제공해,ReferralException 의 서브 클래스를 제공합니다.
ReferralException 의 사용 방법을 나타내는 코딩예를 다음에 나타냅니다.
while (true) { try { bindings = ctx.listBindings(name); while (bindings.hasMore()) { b = bindings.next(); ... } break; } catch (ReferralException e) { ctx = e.getReferralContext(); } }
ReferralException 는 abstract 클래스입니다. 구상 구현에 의해, 그 동기 및 직렬화 프로퍼티이 결정됩니다.
getReferralContext() 메소드에게 건네지는 환경 파라미터는 호출해 옆이 소유합니다. 서비스 프로바이더는, 객체를 변경하거나 그 객체에 대한 참조를 보관 유지합니다만, 그 복제에 대한 참조는 보관 유지합니다.
필드의 개요 |
---|
클래스 javax.naming. NamingException 로부터 상속된 필드 |
---|
remainingName , resolvedName , resolvedObj , rootException |
생성자 의 개요 | |
---|---|
protected |
ReferralException ()
ReferralException 의 인스턴스를 새롭게 구축합니다. |
protected |
ReferralException (String explanation)
지정된 설명을 사용해, ReferralException 의 인스턴스를 새롭게 구축합니다. |
메소드의 개요 | |
---|---|
abstract Context |
getReferralContext ()
메소드를 계속하는 시점의 문맥을 꺼냅니다. |
abstract Context |
getReferralContext (Hashtable <?,?> env)
환경 프로퍼티을 사용하는 메소드를 계속하는 시점의 문맥을 꺼냅니다. |
abstract Object |
getReferralInfo ()
이 참조에 관련하는 정보 (URL 등)를 꺼냅니다. |
abstract void |
retryReferral ()
현재 처리중의 참조를 꺼냅니다. |
abstract boolean |
skipReferral ()
처리되는 참조를 파기합니다. |
클래스 javax.naming. NamingException 로부터 상속된 메소드 |
---|
appendRemainingComponent , appendRemainingName , getCause , getExplanation , getRemainingName , getResolvedName , getResolvedObj , getRootCause , initCause , setRemainingName , setResolvedName , setResolvedObj , setRootCause , toString , toString |
클래스 java.lang. Throwable 로부터 상속된 메소드 |
---|
fillInStackTrace , getLocalizedMessage , getMessage , getStackTrace , printStackTrace , printStackTrace , printStackTrace , setStackTrace |
클래스 java.lang. Object 로부터 상속된 메소드 |
---|
clone , equals , finalize , getClass , hashCode , notify , notifyAll , wait , wait , wait |
생성자 의 상세 |
---|
protected ReferralException(String explanation)
explanation
- 이 예외에 대한 추가 상세 정보null 도 가능Throwable.getMessage()
protected ReferralException()
메소드의 상세 |
---|
public abstract Object getReferralInfo()
public abstract Context getReferralContext() throws NamingException
조작을 계속하려면 , 클라이언트 프로그램으로, 원의 호출과 같은 인수를 사용하는 메소드를 재차 호출합니다.
NamingException
- 네이밍 예외가 발견되었을 경우
retryReferral() 또는 skipReferral() 의 어느 쪽인지를 호출해,
참조의 처리를 계속한다public abstract Context getReferralContext(Hashtable <?,?> env) throws NamingException
참조 문맥은, 환경 프로퍼티으로서 env 를 사용해 작성됩니다. 이 메소드는, 콜측이 참조 문맥에 다른 환경 프로퍼티을 사용할 필요가 있는 경우에 인수 없음의 overload 된 형식 대신에 사용됩니다. 이 방법을 실행할 필요가 있는 것은, 참조 문맥을 작성하기 위해서, 참조된 서버에 대해서 다른 인증 정보를 제공할 필요가 있는 경우입니다.
조작을 계속하려면 , 클라이언트 프로그램으로, 원의 호출과 같은 인수를 사용하는 메소드를 재차 호출합니다.
env
- null 의 가능성이 있는, 참조 문맥을 꺼낼 때 사용하는 환경.
null 의 경우는, 환경 프로퍼티은 사용되지 않는다
NamingException
- 네이밍 예외가 발견되었을 경우
retryReferral() 또는 skipReferral() 의 어느 쪽인지를 호출해,
참조의 처리를 계속한다public abstract boolean skipReferral()
getReferralContext
를 호출할 필요가 있습니다. 일반적으로의 사용법패턴을 나타내는 코드를 다음에 나타냅니다.
} catch (ReferralException e) { if (! shallIFollow(e.getReferralInfo())) { if (! e.skipReferral()) { return; } } ctx = e.getReferralContext(); }
public abstract void retryReferral()
getReferralContext
를 호출합니다. 일반적으로의 사용법패턴을 나타내는 코드를 다음에 나타냅니다.
} catch (ReferralException e) { while (true) { try { ctx = e.getReferralContext(env); break; } catch (NamingException ne) { if (! shallIRetry()) { return; } // modify environment properties (env), if necessary e.retryReferral(); } } }
|
JavaTM Platform Standard Ed. 6 |
|||||||||
전의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요: 상자 | 필드 | 생성자 | 메소드 | 상세: 필드 | 생성자 | 메소드 |
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.