Spec-Zone.ru › OpenJDK 27

Класс InitialContext

java.lang.Object
javax.naming.InitialContext
Все реализуемые интерфейсы:
Context
Прямые известные подклассы:
InitialDirContext
public class InitialContext extends Object implements Context
Этот класс является начальным контекстом для выполнения операций именования.

Все операции именования выполняются относительно контекста. Начальный контекст реализует интерфейс Context и предоставляет отправную точку для разрешения имен.

При создании начального контекста его среда инициализируется свойствами, заданными в параметре среды, переданном конструктору, а также в любых файлах ресурсов приложения.

JNDI определяет значение каждого свойства путем объединения значений из следующих двух источников в указанном порядке:

  1. Первое найденное в параметре среды конструктора и системных свойствах значение свойства.
  2. Файлы ресурсов приложения (jndi.properties).
Для каждого свойства, найденного в обоих этих источниках или более чем в одном файле ресурсов приложения, значение определяется следующим образом. Если свойство относится к стандартным свойствам JNDI, задающим список фабрик JNDI (см. Context), все значения объединяются в единый список, разделенный двоеточиями. Для остальных свойств используется только первое найденное значение.

Реализация начального контекста определяется во время выполнения. По умолчанию используется свойство среды «java.naming.factory.initial», содержащее имя класса фабрики начального контекста. Исключение из этого правила предусмотрено для разрешения URL-строк, как описано ниже.

Если URL-строка (String вида scheme_id:rest_of_name) передается в качестве параметра имени любому методу, для обработки этой схемы находится фабрика контекстов URL, которая используется для разрешения URL. Если такая фабрика не найдена, используется начальный контекст, указанный в "java.naming.factory.initial". Аналогично, если в качестве параметра имени любому методу передается объект CompositeName, первый компонент которого является URL-строкой, для разрешения первого компонента имени находится и используется фабрика контекстов URL. Описание поиска фабрик контекстов URL см. в разделе NamingManager.getURLContext().

Эта политика по умолчанию для поиска фабрик начального контекста и контекстов URL может быть переопределена вызовом NamingManager.setInitialContextFactoryBuilder().

Исключение NoInitialContextException возникает, если экземпляр начального контекста не удается создать. Это исключение может возникнуть при любом взаимодействии с InitialContext, а не только при его создании. Например, реализация начального контекста может получать контекст с задержкой — только при вызове методов. Приложение не должно зависеть от того, когда определяется наличие начального контекста.

Если свойство среды "java.naming.factory.initial" не равно null, конструктор InitialContext попытается создать указанный в нем начальный контекст. При этом используемая фабрика начального контекста может выбросить исключение при возникновении проблемы. Однако момент проверки и сообщения пользователям начального контекста о проблемах, связанных со свойствами среды или соединением, зависит от реализации поставщика. Это может происходить с задержкой — после выполнения операции над контекстом — либо сразу при создании контекста.

Экземпляр InitialContext не синхронизирован для одновременного доступа из нескольких потоков. Нескольким потокам, каждый из которых работает с отдельным экземпляром InitialContext, синхронизация не требуется. Потоки, которым нужен одновременный доступ к одному экземпляру InitialContext, должны синхронизироваться между собой и обеспечить необходимую блокировку.

Начиная с версии:
1.3
См. также:
  • Context
  • NamingManager.setInitialContextFactoryBuilder

Краткое описание полей

Модификатор и тип Поле Описание
protected Context defaultInitCtx
Поле, содержащее результат вызова NamingManager.getInitialContext().
protected boolean gotDefault
Поле, указывающее, был ли начальный контекст получен вызовом NamingManager.getInitialContext().
protected Hashtable<Object,Object> myProps
Окружение, связанное с этим InitialContext.

Поля, объявленные в интерфейсе Context

AUTHORITATIVE, BATCHSIZE, DNS_URL, INITIAL_CONTEXT_FACTORY, LANGUAGE, OBJECT_FACTORIES, PROVIDER_URL, REFERRAL, SECURITY_AUTHENTICATION, SECURITY_CREDENTIALS, SECURITY_PRINCIPAL, SECURITY_PROTOCOL, STATE_FACTORIES, URL_PKG_PREFIXES
Модификатор и тип Поле Описание
static final String AUTHORITATIVE
Константа, содержащая имя свойства окружения для указания уровня авторитетности запрашиваемой службы.
static final String BATCHSIZE
Константа, содержащая имя свойства окружения для указания размера пакета, используемого при возврате данных по протоколу службы.
static final String DNS_URL
Константа, содержащая имя свойства окружения для указания имен узла DNS и домена, используемых для контекста URL JNDI (например, "dns://somehost/wiz.com").
static final String INITIAL_CONTEXT_FACTORY
Константа, содержащая имя свойства окружения для указания используемой фабрики начального контекста.
static final String LANGUAGE
Константа, содержащая имя свойства окружения для указания предпочтительного языка, используемого службой.
static final String OBJECT_FACTORIES
Константа, содержащая имя свойства окружения для указания списка используемых фабрик объектов.
static final String PROVIDER_URL
Константа, содержащая имя свойства окружения для указания сведений о конфигурации, используемых поставщиком службы.
static final String REFERRAL
Константа, содержащая имя свойства окружения для указания способа обработки ссылок переадресации, обнаруженных поставщиком службы.
static final String SECURITY_AUTHENTICATION
Константа, содержащая имя свойства окружения для указания используемого уровня безопасности.
static final String SECURITY_CREDENTIALS
Константа, содержащая имя свойства окружения для указания учетных данных субъекта, используемых для аутентификации вызывающего объекта в службе.
static final String SECURITY_PRINCIPAL
Константа, содержащая имя свойства окружения для указания идентификатора субъекта, используемого для аутентификации вызывающего объекта в службе.
static final String SECURITY_PROTOCOL
Константа, содержащая имя свойства окружения для указания используемого протокола безопасности.
static final String STATE_FACTORIES
Константа, содержащая имя свойства окружения для указания списка используемых фабрик состояний.
static final String URL_PKG_PREFIXES
Константа, содержащая имя свойства окружения для указания списка префиксов пакетов, используемых при загрузке фабрик контекстов URL.

Краткое описание конструкторов

InitialContext()
InitialContext(boolean lazy)
InitialContext(Hashtable<?,?> environment)
Модификатор Конструктор Описание
Создает начальный контекст.
protected
Создает начальный контекст с возможностью не инициализировать его.
Создает начальный контекст, используя предоставленное окружение.

Краткое описание методов

Модификатор и тип Метод Описание
Object addToEnvironment(String propName, Object propVal)
Добавляет новое свойство окружения в окружение этого контекста.
void bind(String name, Object obj)
Связывает имя с объектом.
void bind(Name name, Object obj)
Связывает имя с объектом.
void close()
Закрывает этот контекст.
String composeName(String name, String prefix)
Составляет имя этого контекста с именем, относительным к этому контексту.
Name composeName(Name name, Name prefix)
Составляет имя этого контекста с именем, относительным к этому контексту.
Context createSubcontext(String name)
Создает и связывает новый контекст.
Context createSubcontext(Name name)
Создает и связывает новый контекст.
void destroySubcontext(String name)
Уничтожает именованный контекст и удаляет его из пространства имен.
void destroySubcontext(Name name)
Уничтожает именованный контекст и удаляет его из пространства имен.
static <T> T doLookup(String name)
Статический метод для получения именованного объекта.
static <T> T doLookup(Name name)
Статический метод для получения именованного объекта.
protected Context getDefaultInitCtx()
Получает начальный контекст, вызывая NamingManager.getInitialContext(), и кэширует его в defaultInitCtx.
Hashtable<?,?> getEnvironment()
Получает окружение, действующее для этого контекста.
String getNameInNamespace()
Получает полное имя этого контекста в его собственном пространстве имен.
NameParser getNameParser(String name)
Получает анализатор, связанный с именованным контекстом.
NameParser getNameParser(Name name)
Получает анализатор, связанный с именованным контекстом.
protected Context getURLOrDefaultInitCtx(String name)
Получает контекст для разрешения строкового имени name.
protected Context getURLOrDefaultInitCtx(Name name)
Получает контекст для разрешения name.
protected void init(Hashtable<?,?> environment)
Инициализирует начальный контекст, используя предоставленное окружение.
NamingEnumeration<NameClassPair> list(String name)
Перечисляет имена, связанные в именованном контексте, а также имена классов связанных с ними объектов.
NamingEnumeration<NameClassPair> list(Name name)
Перечисляет имена, связанные в именованном контексте, а также имена классов связанных с ними объектов.
NamingEnumeration<Binding> listBindings(String name)
Перечисляет имена, связанные в именованном контексте, а также связанные с ними объекты.
NamingEnumeration<Binding> listBindings(Name name)
Перечисляет имена, связанные в именованном контексте, а также связанные с ними объекты.
Object lookup(String name)
Получает именованный объект.
Object lookup(Name name)
Получает именованный объект.
Object lookupLink(String name)
Получает именованный объект, переходя по ссылкам, кроме конечного атомарного компонента имени.
Object lookupLink(Name name)
Получает именованный объект, переходя по ссылкам, кроме конечного атомарного компонента имени.
void rebind(String name, Object obj)
Связывает имя с объектом, перезаписывая любую существующую привязку.
void rebind(Name name, Object obj)
Связывает имя с объектом, перезаписывая любую существующую привязку.
Object removeFromEnvironment(String propName)
Удаляет свойство окружения из окружения этого контекста.
void rename(String oldName, String newName)
Связывает новое имя с объектом, связанным со старым именем, и отменяет привязку старого имени.
void rename(Name oldName, Name newName)
Связывает новое имя с объектом, связанным со старым именем, и отменяет привязку старого имени.
void unbind(String name)
Отменяет привязку именованного объекта.
void unbind(Name name)
Отменяет привязку именованного объекта.

Методы, объявленные в классе Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Модификатор и тип Метод Описание
protected Object clone()
Создает и возвращает копию этого объекта.
boolean equals(Object obj)
Указывает, равен ли этот объект какому-либо другому объекту.
protected void finalize()
Устарело, планируется удаление: этот элемент API может быть удален в будущей версии.
Финализация объявлена устаревшей и может быть удалена в одном из будущих выпусков.
final Class<?> getClass()
Возвращает класс времени выполнения этого Object.
int hashCode()
Возвращает хеш-код этого объекта.
final void notify()
Пробуждает один поток, ожидающий на мониторе этого объекта.
final void notifyAll()
Пробуждает все потоки, ожидающие на мониторе этого объекта.
String toString()
Возвращает строковое представление объекта.
final void wait()
Приостанавливает текущий поток до его пробуждения, обычно в результате вызова notify или interrupt.
final void wait(long timeoutMillis)
Приостанавливает текущий поток до его пробуждения, обычно в результате вызова notify или interrupt, либо до истечения заданного промежутка реального времени.
final void wait(long timeoutMillis, int nanos)
Приостанавливает текущий поток до его пробуждения, обычно в результате вызова notify или interrupt, либо до истечения заданного промежутка реального времени.

Подробное описание полей

myProps

protected Hashtable<Object,Object> myProps
Окружение, связанное с этим InitialContext. Инициализируется значением null и обновляется конструктором, принимающим окружение, или методом init().
См. также:
  • addToEnvironment(String, Object)
  • removeFromEnvironment(String)
  • getEnvironment()

defaultInitCtx

protected Context defaultInitCtx
Поле, хранящее результат вызова NamingManager.getInitialContext(). Ему присваивается значение методом getDefaultInitCtx() при первом вызове getDefaultInitCtx(). Последующие вызовы getDefaultInitCtx() возвращают значение defaultInitCtx.
См. также:
  • getDefaultInitCtx()

gotDefault

protected boolean gotDefault
Поле, указывающее, был ли получен начальный контекст вызовом NamingManager.getInitialContext(). Если значение равно true, результат хранится в defaultInitCtx.

Подробное описание конструкторов

InitialContext

protected InitialContext(boolean lazy) throws NamingException
Создаёт начальный контекст с возможностью отложить его инициализацию. Это может использоваться конструктором подкласса, если значение параметра environment ещё неизвестно на момент вызова конструктора InitialContext. Конструктор подкласса вызовет этот конструктор, вычислит значение environment, а затем перед возвратом вызовет init().
Параметры:
lazy — true означает, что начальный контекст не нужно инициализировать; false эквивалентно вызову new InitialContext()
Исключения:
NamingException — если возникло исключение именования
С версии:
1.3
См. также:
  • init(Hashtable)

InitialContext

public InitialContext() throws NamingException
Создаёт начальный контекст. Свойства окружения не заданы. Эквивалентно new InitialContext(null).
Исключения:
NamingException — если возникло исключение именования
См. также:
  • InitialContext(Hashtable)

InitialContext

public InitialContext(Hashtable<?,?> environment) throws NamingException
Создаёт начальный контекст, используя переданное окружение. Свойства окружения описаны в описании класса.

Этот конструктор не изменяет environment и не сохраняет ссылку на него, но может сохранить его клон. После передачи environment конструктору вызывающий код не должен изменять изменяемые ключи и значения в нём.

Параметры:
environment — окружение, используемое для создания начального контекста. Значение null указывает на пустое окружение.
Исключения:
NamingException — если возникло исключение именования

Подробное описание методов

init

protected void init(Hashtable<?,?> environment) throws NamingException
Инициализирует начальный контекст, используя переданное окружение. Свойства окружения описаны в описании класса.

Этот метод изменяет environment и сохраняет ссылку на него. Вызывающий код больше не должен изменять его.

Параметры:
environment — окружение, используемое для создания начального контекста. Значение null указывает на пустое окружение.
Исключения:
NamingException — если возникло исключение именования
С версии:
1.3
См. также:
  • InitialContext(boolean)

doLookup

public static <T> T doLookup(Name name) throws NamingException
Статический метод для получения именованного объекта. Это сокращённый метод, эквивалентный вызову:

InitialContext ic = new InitialContext(); Object obj = ic.lookup();

Если name пусто, возвращает новый экземпляр этого контекста (который представляет тот же контекст именования, что и этот контекст, но его окружение можно изменять независимо, и к нему можно обращаться одновременно).

Параметры типа:
T — тип возвращаемого объекта
Параметры:
name — имя объекта для поиска
Возвращает:
объект, связанный с name
Исключения:
NamingException — если возникло исключение именования
С версии:
1.6
См. также:
  • doLookup(String)
  • lookup(Name)

doLookup

public static <T> T doLookup(String name) throws NamingException
Статический метод для получения именованного объекта. Подробности см. в разделе doLookup(Name).
Параметры типа:
T — тип возвращаемого объекта
Параметры:
name — имя объекта для поиска
Возвращает:
объект, связанный с name
Исключения:
NamingException — если возникло исключение именования
С версии:
1.6

getDefaultInitCtx

protected Context getDefaultInitCtx() throws NamingException
Получает начальный контекст вызовом NamingManager.getInitialContext() и кэширует его в defaultInitCtx. Устанавливает gotDefault, чтобы отметить, что эта попытка уже предпринималась.
Возвращает:
Закэшированный начальный контекст, не равный null.
Исключения:
NoInitialContextException — если не удаётся найти начальный контекст.
NamingException — если возникло исключение именования.

getURLOrDefaultInitCtx

protected Context getURLOrDefaultInitCtx(String name) throws NamingException
Получает контекст для разрешения строкового имени name. Если имя name является строкой URL, предпринимается попытка найти для него контекст URL. Если контекст не найден или name не является строкой URL, возвращается getDefaultInitCtx().

Описание того, как подклассу следует использовать этот метод, см. в разделе getURLOrDefaultInitCtx(Name).

Параметры:
name — имя, не равное null, для которого нужно получить контекст.
Возвращает:
Контекст URL для name или закэшированный начальный контекст. Результат не может быть равен null.
Исключения:
NoInitialContextException — если не удаётся найти начальный контекст.
NamingException — если возникает исключение именования.
См. также:
  • NamingManager.getURLContext(String, Hashtable)

getURLOrDefaultInitCtx

protected Context getURLOrDefaultInitCtx(Name name) throws NamingException
Получает контекст для разрешения name. Если первый компонент имени name является строкой URL, предпринимается попытка найти для него контекст URL. Если контекст не найден или первый компонент name не является строкой URL, возвращается getDefaultInitCtx().

При создании подкласса InitialContext используйте этот метод следующим образом. Определите новый метод, который использует этот метод для получения начального контекста нужного подкласса.

 protected XXXContext getURLOrDefaultInitXXXCtx(Name name)
 throws NamingException {
  Context answer = getURLOrDefaultInitCtx(name);
  if (!(answer instanceof XXXContext)) {
    if (answer == null) {
      throw new NoInitialContextException();
    } else {
      throw new NotContextException("Not an XXXContext");
    }
  }
  return (XXXContext)answer;
 }
 
При реализации новых методов подкласса используйте этот вновь определённый метод для получения начального контекста.
 public Object XXXMethod1(Name name, ...) {
  throws NamingException {
    return getURLOrDefaultInitXXXCtx(name).XXXMethod1(name, ...);
 }
 
Параметры:
name — имя, не равное null, для которого нужно получить контекст.
Возвращает:
Контекст URL для name или закэшированный начальный контекст. Результат не может быть равен null.
Исключения:
NoInitialContextException — если не удаётся найти начальный контекст.
NamingException — если возникает исключение именования.
См. также:
  • NamingManager.getURLContext(String, Hashtable)

lookup

public Object lookup(String name) throws NamingException
Описание скопировано из интерфейса: Context
Получает именованный объект. Подробности см. в разделе Context.lookup(Name).
Определено в:
lookup в интерфейсе Context
Параметры:
name — имя объекта для поиска
Возвращает:
объект, связанный с name
Исключения:
NamingException — если возникло исключение именования

lookup

public Object lookup(Name name) throws NamingException
Описание скопировано из интерфейса: Context
Получает именованный объект. Если name пусто, возвращает новый экземпляр этого контекста (который представляет тот же контекст именования, что и этот контекст, но его окружение можно изменять независимо, и к нему можно обращаться одновременно).
Определено в:
lookup в интерфейсе Context
Параметры:
name — имя объекта для поиска
Возвращает:
объект, связанный с name
Исключения:
NamingException — если возникло исключение именования
См. также:
  • Context.lookup(String)
  • Context.lookupLink(Name)

bind

public void bind(String name, Object obj) throws NamingException
Описание скопировано из интерфейса: Context
Связывает имя с объектом. Подробности см. в разделе Context.bind(Name, Object).
Определено в:
bind в интерфейсе Context
Параметры:
name — имя для связывания; не может быть пустым
obj — объект для связывания; может быть равен null
Исключения:
NameAlreadyBoundException — если имя уже связано
InvalidAttributesException — если объект не предоставил все обязательные атрибуты
NamingException — если возникло исключение именования

bind

public void bind(Name name, Object obj) throws NamingException
Описание скопировано из интерфейса: Context
Связывает имя с объектом. Все промежуточные контексты и целевой контекст (указанный всеми компонентами имени, кроме последнего атомарного компонента) должны уже существовать.
Определено в:
bind в интерфейсе Context
Параметры:
name — имя для связывания; не может быть пустым
obj — объект для связывания; может быть равен null
Исключения:
NameAlreadyBoundException — если имя уже связано
InvalidAttributesException — если объект не предоставил все обязательные атрибуты
NamingException — если возникло исключение именования
См. также:
  • Context.bind(String, Object)
  • Context.rebind(Name, Object)
  • DirContext.bind(Name, Object, javax.naming.directory.Attributes)

rebind

public void rebind(String name, Object obj) throws NamingException
Описание скопировано из интерфейса: Context
Связывает имя с объектом, перезаписывая существующую привязку. Подробности см. в разделе Context.rebind(Name, Object).
Определено в:
rebind в интерфейсе Context
Параметры:
name — имя для связывания; не может быть пустым
obj — объект для связывания; может быть равен null
Исключения:
InvalidAttributesException — если объект не предоставил все обязательные атрибуты
NamingException — если возникло исключение именования

rebind

public void rebind(Name name, Object obj) throws NamingException
Описание скопировано из интерфейса: Context
Привязывает имя к объекту, перезаписывая существующую привязку. Все промежуточные контексты и целевой контекст (указанный всеми компонентами имени, кроме конечного атомарного компонента) должны уже существовать.

Если объект является DirContext, все существующие атрибуты, связанные с этим именем, заменяются атрибутами объекта. В противном случае все существующие атрибуты, связанные с этим именем, остаются без изменений.

Определено в:
rebind в интерфейсе Context
Параметры:
name - имя для привязки; не может быть пустым
obj - объект для привязки; может быть null
Исключения:
InvalidAttributesException - если объект не предоставил все обязательные атрибуты
NamingException - если возникает исключение именования
См. также:
  • Context.rebind(String, Object)
  • Context.bind(Name, Object)
  • DirContext.rebind(Name, Object, javax.naming.directory.Attributes)
  • DirContext

unbind

public void unbind(String name) throws NamingException
Описание скопировано из интерфейса: Context
Отменяет привязку именованного объекта. Подробности см. в Context.unbind(Name).
Определено в:
unbind в интерфейсе Context
Параметры:
name - имя, привязку которого нужно отменить; не может быть пустым
Исключения:
NameNotFoundException - если промежуточный контекст не существует
NamingException - если возникает исключение именования

unbind

public void unbind(Name name) throws NamingException
Описание скопировано из интерфейса: Context
Отменяет привязку именованного объекта. Удаляет конечное атомарное имя из name в целевом контексте — том, который указан всеми компонентами name, кроме конечной атомарной части.

Этот метод идемпотентен. Он выполняется успешно, даже если конечное атомарное имя не привязано в целевом контексте, но выбрасывает NameNotFoundException, если какой-либо из промежуточных контекстов не существует.

Все атрибуты, связанные с именем, удаляются. Промежуточные контексты не изменяются.

Определено в:
unbind в интерфейсе Context
Параметры:
name - имя, привязку которого нужно отменить; не может быть пустым
Исключения:
NameNotFoundException - если промежуточный контекст не существует
NamingException - если возникает исключение именования
См. также:
  • Context.unbind(String)

rename

public void rename(String oldName, String newName) throws NamingException
Описание скопировано из интерфейса: Context
Привязывает новое имя к объекту, привязанному к старому имени, и отменяет привязку старого имени. Подробности см. в Context.rename(Name, Name).
Определено в:
rename в интерфейсе Context
Параметры:
oldName - имя существующей привязки; не может быть пустым
newName - имя новой привязки; не может быть пустым
Исключения:
NameAlreadyBoundException - если newName уже привязано
NamingException - если возникает исключение именования

rename

public void rename(Name oldName, Name newName) throws NamingException
Описание скопировано из интерфейса: Context
Привязывает новое имя к объекту, привязанному к старому имени, и отменяет привязку старого имени. Оба имени являются относительными к этому контексту. Все атрибуты, связанные со старым именем, становятся связанными с новым именем. Промежуточные контексты старого имени не изменяются.
Определено в:
rename в интерфейсе Context
Параметры:
oldName - имя существующей привязки; не может быть пустым
newName - имя новой привязки; не может быть пустым
Исключения:
NameAlreadyBoundException - если newName уже привязано
NamingException - если возникает исключение именования
См. также:
  • Context.rename(String, String)
  • Context.bind(Name, Object)
  • Context.rebind(Name, Object)

list

public NamingEnumeration<NameClassPair> list(String name) throws NamingException
Описание скопировано из интерфейса: Context
Перечисляет имена, привязанные в указанном контексте, вместе с именами классов привязанных к ним объектов. Подробности см. в Context.list(Name).
Определено в:
list в интерфейсе Context
Параметры:
name - имя контекста для перечисления
Возвращает:
перечисление имен и имен классов привязок в этом контексте. Каждый элемент перечисления имеет тип NameClassPair.
Исключения:
NamingException - если возникает исключение именования

list

public NamingEnumeration<NameClassPair> list(Name name) throws NamingException
Описание скопировано из интерфейса: Context
Перечисляет имена, привязанные в указанном контексте, вместе с именами классов привязанных к ним объектов. Содержимое вложенных контекстов не включается.

Если привязка добавлена в этот контекст или удалена из него, влияние этого изменения на ранее возвращенное перечисление не определено.

Определено в:
list в интерфейсе Context
Параметры:
name - имя контекста для перечисления
Возвращает:
перечисление имен и имен классов привязок в этом контексте. Каждый элемент перечисления имеет тип NameClassPair.
Исключения:
NamingException - если возникает исключение именования
См. также:
  • Context.list(String)
  • Context.listBindings(Name)
  • NameClassPair

listBindings

public NamingEnumeration<Binding> listBindings(String name) throws NamingException
Описание скопировано из интерфейса: Context
Перечисляет имена, привязанные в указанном контексте, вместе с привязанными к ним объектами. Подробности см. в Context.listBindings(Name).
Определено в:
listBindings в интерфейсе Context
Параметры:
name - имя контекста для перечисления
Возвращает:
перечисление привязок в этом контексте. Каждый элемент перечисления имеет тип Binding.
Исключения:
NamingException - если возникает исключение именования

listBindings

public NamingEnumeration<Binding> listBindings(Name name) throws NamingException
Описание скопировано из интерфейса: Context
Перечисляет имена, привязанные в указанном контексте, вместе с привязанными к ним объектами. Содержимое вложенных контекстов не включается.

Если привязка добавлена в этот контекст или удалена из него, влияние этого изменения на ранее возвращенное перечисление не определено.

Определено в:
listBindings в интерфейсе Context
Параметры:
name - имя контекста для перечисления
Возвращает:
перечисление привязок в этом контексте. Каждый элемент перечисления имеет тип Binding.
Исключения:
NamingException - если возникает исключение именования
См. также:
  • Context.listBindings(String)
  • Context.list(Name)
  • Binding

destroySubcontext

public void destroySubcontext(String name) throws NamingException
Описание скопировано из интерфейса: Context
Уничтожает указанный контекст и удаляет его из пространства имен. Подробности см. в Context.destroySubcontext(Name).
Определено в:
destroySubcontext в интерфейсе Context
Параметры:
name - имя контекста, который нужно уничтожить; не может быть пустым
Исключения:
NameNotFoundException - если промежуточный контекст не существует
NotContextException - если имя привязано, но не обозначает контекст или обозначает контекст неподходящего типа
ContextNotEmptyException - если указанный контекст не пуст
NamingException - если возникает исключение именования

destroySubcontext

public void destroySubcontext(Name name) throws NamingException
Описание скопировано из интерфейса: Context
Уничтожает указанный контекст и удаляет его из пространства имен. Все атрибуты, связанные с именем, также удаляются. Промежуточные контексты не уничтожаются.

Этот метод идемпотентен. Он выполняется успешно, даже если конечное атомарное имя не привязано в целевом контексте, но выбрасывает NameNotFoundException, если какой-либо из промежуточных контекстов не существует.

В федеративной системе именования контекст из одной системы именования может быть привязан к имени в другой системе. Впоследствии можно выполнять поиск и операции над внешним контекстом, используя составное имя. Однако попытка уничтожить контекст с помощью этого составного имени завершится ошибкой NotContextException, поскольку внешний контекст не является «вложенным контекстом» контекста, в котором он привязан. Вместо этого используйте unbind(), чтобы удалить привязку внешнего контекста. Для уничтожения внешнего контекста необходимо выполнить destroySubcontext() над контекстом из «родной» системы именования внешнего контекста.

Определено в:
destroySubcontext в интерфейсе Context
Параметры:
name - имя контекста, который нужно уничтожить; не может быть пустым
Исключения:
NameNotFoundException - если промежуточный контекст не существует
NotContextException - если имя привязано, но не обозначает контекст или обозначает контекст неподходящего типа
ContextNotEmptyException - если указанный контекст не пуст
NamingException - если возникает исключение именования
См. также:
  • Context.destroySubcontext(String)

createSubcontext

public Context createSubcontext(String name) throws NamingException
Описание скопировано из интерфейса: Context
Создает и привязывает новый контекст. Подробности см. в Context.createSubcontext(Name).
Определено в:
createSubcontext в интерфейсе Context
Параметры:
name - имя создаваемого контекста; не может быть пустым
Возвращает:
созданный контекст
Исключения:
NameAlreadyBoundException - если имя уже привязано
InvalidAttributesException - если для создания вложенного контекста необходимо указать обязательные атрибуты
NamingException - если возникает исключение именования

createSubcontext

public Context createSubcontext(Name name) throws NamingException
Описание скопировано из интерфейса: Context
Создает и привязывает новый контекст. Создает контекст с указанным именем и привязывает его в целевом контексте (который определяется всеми компонентами имени, кроме конечного атомарного компонента). Все промежуточные контексты и целевой контекст должны уже существовать.
Определено в:
createSubcontext в интерфейсе Context
Параметры:
name — имя создаваемого контекста; не может быть пустым
Возвращает:
вновь созданный контекст
Исключения:
NameAlreadyBoundException — если имя уже привязано
InvalidAttributesException — если для создания подчиненного контекста требуется указать обязательные атрибуты
NamingException — если возникло исключение именования
См. также:
  • Context.createSubcontext(String)
  • DirContext.createSubcontext(Name, Attributes)

lookupLink

public Object lookupLink(String name) throws NamingException
Описание скопировано из интерфейса: Context
Получает объект с указанным именем, переходя по ссылкам, кроме ссылки в конечном атомарном компоненте имени. Подробности см. в разделе Context.lookupLink(Name).
Определено в:
lookupLink в интерфейсе Context
Параметры:
name — имя искомого объекта
Возвращает:
объект, привязанный к name, без перехода по конечной ссылке (если она есть)
Исключения:
NamingException — если возникло исключение именования

lookupLink

public Object lookupLink(Name name) throws NamingException
Описание скопировано из интерфейса: Context
Получает объект с указанным именем, переходя по ссылкам, кроме ссылки в конечном атомарном компоненте имени. Если объект, привязанный к name, не является ссылкой, возвращает сам объект.
Определено в:
lookupLink в интерфейсе Context
Параметры:
name — имя искомого объекта
Возвращает:
объект, привязанный к name, без перехода по конечной ссылке (если она есть).
Исключения:
NamingException — если возникло исключение именования
См. также:
  • Context.lookupLink(String)

getNameParser

public NameParser getNameParser(String name) throws NamingException
Описание скопировано из интерфейса: Context
Получает анализатор, связанный с указанным контекстом. Подробности см. в разделе Context.getNameParser(Name).
Определено в:
getNameParser в интерфейсе Context
Параметры:
name — имя контекста, из которого нужно получить анализатор
Возвращает:
анализатор имен, который может разбирать составные имена на атомарные компоненты
Исключения:
NamingException — если возникло исключение именования

getNameParser

public NameParser getNameParser(Name name) throws NamingException
Описание скопировано из интерфейса: Context
Получает анализатор, связанный с указанным контекстом. В федерации пространств имен разные системы именования могут по-разному анализировать имена. Этот метод позволяет приложению получить анализатор для разбора имен на атомарные компоненты в соответствии с соглашениями об именовании конкретной системы именования. В пределах одной системы именования объекты NameParser, возвращаемые этим методом, должны быть равны (согласно проверке equals()).
Определено в:
getNameParser в интерфейсе Context
Параметры:
name — имя контекста, из которого нужно получить анализатор
Возвращает:
анализатор имен, который может разбирать составные имена на атомарные компоненты
Исключения:
NamingException — если возникло исключение именования
См. также:
  • Context.getNameParser(String)
  • CompoundName

composeName

public String composeName(String name, String prefix) throws NamingException
Объединяет имя этого контекста с именем, относительным к этому контексту. Поскольку начальный контекст не может быть именован относительно какого-либо контекста, кроме самого себя, значение параметра prefix должно быть пустым именем ("").
Определено в:
composeName в интерфейсе Context
Параметры:
name — имя, относительное к этому контексту
prefix — имя этого контекста относительно одного из его предков
Возвращает:
результат объединения prefix и name
Исключения:
NamingException — если возникло исключение именования

composeName

public Name composeName(Name name, Name prefix) throws NamingException
Объединяет имя этого контекста с именем, относительным к этому контексту. Поскольку начальный контекст не может быть именован относительно какого-либо контекста, кроме самого себя, значение параметра prefix должно быть пустым именем.
Определено в:
composeName в интерфейсе Context
Параметры:
name — имя, относительное к этому контексту
prefix — имя этого контекста относительно одного из его предков
Возвращает:
результат объединения prefix и name
Исключения:
NamingException — если возникло исключение именования
См. также:
  • Context.composeName(String, String)

addToEnvironment

public Object addToEnvironment(String propName, Object propVal) throws NamingException
Описание скопировано из интерфейса: Context
Добавляет новое свойство среды в среду этого контекста. Если свойство уже существует, его значение перезаписывается. Дополнительные сведения о свойствах среды см. в описании класса.
Определено в:
addToEnvironment в интерфейсе Context
Параметры:
propName — имя добавляемого свойства среды; не может быть null
propVal — значение добавляемого свойства; не может быть null
Возвращает:
предыдущее значение свойства или null, если до этого свойство отсутствовало в среде
Исключения:
NamingException — если возникло исключение именования
См. также:
  • Context.getEnvironment()
  • Context.removeFromEnvironment(String)

removeFromEnvironment

public Object removeFromEnvironment(String propName) throws NamingException
Описание скопировано из интерфейса: Context
Удаляет свойство среды из среды этого контекста. Дополнительные сведения о свойствах среды см. в описании класса.
Определено в:
removeFromEnvironment в интерфейсе Context
Параметры:
propName — имя удаляемого свойства среды; не может быть null
Возвращает:
предыдущее значение свойства или null, если свойство отсутствовало в среде
Исключения:
NamingException — если возникло исключение именования
См. также:
  • Context.getEnvironment()
  • Context.addToEnvironment(String, Object)

getEnvironment

public Hashtable<?,?> getEnvironment() throws NamingException
Описание скопировано из интерфейса: Context
Получает среду, действующую для этого контекста. Дополнительные сведения о свойствах среды см. в описании класса.

Вызывающему коду не следует изменять возвращаемый объект: влияние таких изменений на контекст не определено. Среду этого контекста можно изменить с помощью addToEnvironment() и removeFromEnvironment().

Определено в:
getEnvironment в интерфейсе Context
Возвращает:
среда этого контекста; никогда не равна null
Исключения:
NamingException — если возникло исключение именования
См. также:
  • Context.addToEnvironment(String, Object)
  • Context.removeFromEnvironment(String)

close

public void close() throws NamingException
Описание скопировано из интерфейса: Context
Закрывает этот контекст. Этот метод немедленно освобождает ресурсы контекста, не дожидаясь их автоматического освобождения сборщиком мусора.

Этот метод идемпотентен: его вызов для уже закрытого контекста не оказывает никакого эффекта. Вызов любого другого метода для закрытого контекста не допускается и приводит к неопределенному поведению.

Определено в:
close в интерфейсе Context
Исключения:
NamingException — если возникло исключение именования

getNameInNamespace

public String getNameInNamespace() throws NamingException
Описание скопировано из интерфейса: Context
Получает полное имя этого контекста в его собственном пространстве имен.

Многие службы именования используют понятие «полного имени» объектов в соответствующих пространствах имен. Например, запись LDAP имеет отличительное имя, а запись DNS — полное доменное имя. Этот метод позволяет клиентскому приложению получить такое имя. Строка, возвращаемая этим методом, не является составным именем JNDI и не должна непосредственно передаваться методам контекста. В системах именования, для которых понятие полного имени неприменимо, выбрасывается OperationNotSupportedException.

Определено в:
getNameInNamespace в интерфейсе Context
Возвращает:
имя этого контекста в его собственном пространстве имен; никогда не равно null
Исключения:
OperationNotSupportedException — если в системе именования отсутствует понятие полного имени
NamingException — если возникло исключение именования

Сообщить об ошибке или предложить улучшение
Дополнительные справочные материалы по API и документацию для разработчиков см. в документации Java SE, содержащей более подробные описания для разработчиков, обзоры концепций, определения терминов, обходные решения и примеры работающего кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или ее аффилированных лиц в США и других странах.
Авторское право © 1993, 2026, Oracle и/или ее аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API