Spec-Zone.ru › OpenJDK 25

Класс 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, JNDI 1.1
См. также:
  • 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

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

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

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

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. Конструктор подкласса вызовет этот конструктор, вычислит значение среды, а затем вызовет 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, 2025, 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.
https://docs.oracle.com/en/java/javase/25/docs/api/java.naming/javax/naming/InitialContext.html

Spec-Zone.ru

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