Spec-Zone.ru › OpenJDK 17

Класс 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 (строка формата scheme_id:rest_of_name) в качестве параметра имени в любой метод, используется фабрика контекста URL для обработки этого схемы для разрешения 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

APPLET, 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
Создаёт начальный контекст с опцией неинициализации. Это может использоваться конструктором подкласса, когда значение параметра окружения ещё неизвестно на момент вызова конструктора 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 для того, чтобы знать, что мы уже пытались это сделать.
Возвращает:
Непустой кэшированный начальный контекст.
Исключения:
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).
Specified by:
listBindings в интерфейсе Context
Параметры:
name — имя контекста для перечисления
Возвращает:
перечисление привязок в этом контексте. Каждый элемент перечисления имеет тип Binding.
Исключения:
NamingException — если возникает исключение при работе с именованием

listBindings

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

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

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

destroySubcontext

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

destroySubcontext

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

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

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

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

createSubcontext

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

createSubcontext

public Context createSubcontext(Name name) throws NamingException
Описание, скопированное из интерфейса: Context
Создаёт и привязывает новый контекст. Создаёт новый контекст с заданным именем и привязывает его в целевом контексте (определяемом всеми, кроме конечного атомного компонента имени). Все промежуточные контексты и целевой контекст должны уже существовать.
Specified by:
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).
Specified by:
lookupLink в интерфейсе Context
Параметры:
name — имя объекта для поиска
Возвращает:
объект, привязанный к name, без следования конечной ссылке (если таковая есть)
Исключения:
NamingException — если возникает исключение при работе с именованием

lookupLink

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

getNameParser

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

getNameParser

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

composeName

public String composeName(String name, String prefix) throws NamingException
Компонует имя этого контекста с именем, относительным к этому контексту. Поскольку начальный контекст никогда не может быть назван относительно какого-либо контекста, кроме самого себя, значение параметра prefix должно быть пустым именем ("").
Specified by:
composeName в интерфейсе Context
Parameters:
name - имя, относительное к этому контексту
prefix - имя этого контекста, относительное к одному из его предков
Returns:
составление prefix и name
Throws:
NamingException - если возникло исключение при именовании

composeName

public Name composeName(Name name, Name prefix) throws NamingException
Компонует имя этого контекста с именем, относительным к этому контексту. Поскольку начальный контекст никогда не может быть назван относительно какого-либо контекста, кроме самого себя, значение параметра prefix должно быть пустым именем.
Specified by:
composeName в интерфейсе Context
Parameters:
name - имя, относительное к этому контексту
prefix - имя этого контекста, относительное к одному из его предков
Returns:
составление prefix и name
Throws:
NamingException - если возникло исключение при именовании
See Also:
  • Context.composeName(String, String)

addToEnvironment

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

removeFromEnvironment

public Object removeFromEnvironment(String propName) throws NamingException
Описание скопировано из интерфейса: Context
Удаляет средовую переменную из среды этого контекста. Подробнее о средовых переменных см. описание класса.
Specified by:
removeFromEnvironment в интерфейсе Context
Parameters:
propName - имя удаляемой средовой переменной; не может быть null
Returns:
предыдущее значение свойства или null, если свойство отсутствовало в среде
Throws:
NamingException - если возникло исключение при именовании
See Also:
  • Context.getEnvironment()
  • Context.addToEnvironment(String, Object)

getEnvironment

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

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

Specified by:
getEnvironment в интерфейсе Context
Returns:
среду данного контекста; никогда не null
Throws:
NamingException - если возникло исключение при именовании
See Also:
  • Context.addToEnvironment(String, Object)
  • Context.removeFromEnvironment(String)

close

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

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

Specified by:
close в интерфейсе Context
Throws:
NamingException - если возникло исключение при именовании

getNameInNamespace

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

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

Specified by:
getNameInNamespace в интерфейсе Context
Returns:
имя контекста в его собственном пространстве имен; никогда не null
Throws:
OperationNotSupportedException - если система именования не имеет понятия полного имени
NamingException - если возникло исключение при именовании

© 1993, 2021, 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/17/docs/api/java.naming/javax/naming/InitialContext.html

Spec-Zone.ru

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