Spec-Zone.ru › OpenJDK 24

Класс 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-адресов для обработки этого схемы. Если такая фабрика не найдена, используется исходный контекст, указанный "java.naming.factory.initial". Аналогично, если в качестве параметра имени в любой метод передаётся объект CompositeName, первым компонентом которого является строка URL-адреса, ищется и используется фабрика контекста URL-адресов для разрешения первого компонента имени. См. NamingManager.getURLContext() для описания того, как находятся фабрики контекста URL-адресов.

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

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

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

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

С момента:
1.3, JNDI 1.1
См. также:
  • Context
  • NamingManager.setInitialContextFactoryBuilder

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

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

Поля, объявленные в интерфейсе javax.naming.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

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

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)
Отвязывает именованный объект.

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

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

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

myProps

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

defaultInitCtx

protected Context defaultInitCtx
Поле, содержащее результат вызова NamingManager.getInitialContext(). Устанавливается методом 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, чтобы знать, что это уже делалось ранее.
Возвращает:
Не нулевой кэшированный начальный контекст.
Исключения:
NoInitialContextException - Если начальный контекст не найден.
NamingException - Если при работе с именованием возникло исключение.

getURLOrDefaultInitCtx

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

См. getURLOrDefaultInitCtx(Name) для описания того, как подкласс должен использовать этот метод.

Параметры:
name - Не нулевое имя, для которого нужно получить контекст.
Возвращает:
Контекст URL для name или кэшированный начальный контекст. Результат не может быть null.
Исключения:
NoInitialContextException - Если начальный контекст не найден.
NamingException - При возникновении исключения при работе с именованием.
См. также:
  • NamingManager.getURLContext(java.lang.String, java.util.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 - Не нулевое имя, для которого нужно получить контекст.
Возвращает:
Контекст URL для name или кэшированный начальный контекст. Результат не может быть null.
Исключения:
NoInitialContextException - Если начальный контекст не найден.
NamingException - При возникновении исключения при работе с именованием.
См. также:
  • NamingManager.getURLContext(java.lang.String, java.util.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(javax.naming.Name, javax.naming.directory.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 - если возникло исключение при работе с именованием

© 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.
https://download.java.net/java/early_access/jdk24/docs/api/java.naming/javax/naming/InitialContext.html

Spec-Zone.ru

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