Spec-Zone.ru › OpenJDK 24

Пакет javax.naming

package javax.naming
Предоставляет классы и интерфейсы для доступа к службам именования.

Этот пакет определяет операции именования в интерфейсе Java Naming and Directory Interface (JNDI). JNDI предоставляет функциональность именования и каталогов для приложений, написанных на языке программирования Java. Он разработан таким образом, чтобы быть независимым от любой конкретной реализации службы именования или каталога. Таким образом, к различным службам — новым, развивающимся и уже развернутым — можно получить доступ стандартным способом.

Контекст

Этот пакет определяет понятие контекста, представленного интерфейсом Context. Контекст состоит из набора связей имя-объект. Context является основным интерфейсом для поиска, связывания, развязывания и переименования объектов, а также для создания и уничтожения подконтекстов.

lookup() является наиболее часто используемой операцией. Вы предоставляете lookup() имя объекта, который вы хотите найти, и он возвращает объект, связанный с этим именем. Например, следующий фрагмент кода ищет принтер и отправляет документ объекту принтера для печати:

Printer printer = (Printer)ctx.lookup("treekiller");
printer.print(report);

Имена

Каждый метод именования в интерфейсе Context имеет два перегрузки: один принимает аргумент Name, а другой — строковое имя. Name — это интерфейс, представляющий общее имя — упорядоченную последовательность нуля или более компонентов. Для этих методов Name можно использовать для представления составного имени (CompositeName), чтобы вы могли именовать объект с использованием имени, охватывающего несколько пространств имен.

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

Связи

Класс Binding представляет собой связь имя-объект. Это кортеж, содержащий имя связанного объекта, имя класса объекта и сам объект.

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

Ссылки

Объекты хранятся в службах именования и каталогов различными способами. Если хранилище объектов поддерживает хранение объектов Java, оно может поддерживать хранение объекта в сериализованной форме. Однако некоторые службы именования и каталогов не поддерживают хранение объектов Java. Кроме того, для некоторых объектов в каталоге программы Java — лишь одна группа приложений, которые к ним обращаются. В этом случае сериализованный объект Java может быть не самым подходящим представлением. JNDI определяет ссылку, представленную классом Reference, которая содержит информацию о том, как создать копию объекта. JNDI будет пытаться преобразовать ссылки, полученные из каталога, в представляющие их Java-объекты, чтобы клиенты JNDI имели иллюзию того, что в каталоге хранятся Java-объекты.

Начальный контекст

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

Исключения

JNDI определяет иерархию классов исключений, которые могут быть выброшены во время выполнения операций именования и каталогов. Корень этой иерархии — класс NamingException. Программы, заинтересованные в работе с конкретным исключением, могут перехватить соответствующий подкласс исключения. В противном случае программы должны перехватить NamingException.

Спецификация пакета

Спецификация API JNDI и связанные документы можно найти в документации JNDI.
С:
1.3
Пакет Описание
javax.naming.directory
Расширяет пакет javax.naming, предоставляя функциональность для доступа к службам каталогов.
javax.naming.event
Обеспечивает поддержку уведомлений об событиях при доступе к службам именования и каталогов.
javax.naming.ldap
Обеспечивает поддержку расширенных операций и управляющих элементов LDAPv3.
javax.naming.spi
Предоставляет средства для динамической подгрузки поддержки доступа к службам именования и каталогов через пакеты javax.naming и родственные.
Класс Описание
AuthenticationException
Это исключение выбрасывается при возникновении ошибки аутентификации при доступе к службе именования или каталога.
AuthenticationNotSupportedException
Это исключение выбрасывается, когда конкретный тип запрошенной аутентификации не поддерживается.
BinaryRefAddr
Этот класс представляет двоичную форму адреса конечной точки связи.
Binding
Этот класс представляет привязку имени к объекту, найденную в контексте.
CannotProceedException
Это исключение выбрасывается, чтобы указать, что операция достигла точки в имени, где операция не может быть продолжена дальше.
CommunicationException
Это исключение выбрасывается, когда клиент не может взаимодействовать со службой каталогов или службой именования.
CompositeName
Этот класс представляет составное имя — последовательность имен компонентов, охватывающую несколько пространств имен.
CompoundName
Этот класс представляет составное имя — имя из иерархического пространства имен.
ConfigurationException
Это исключение выбрасывается при возникновении проблемы с конфигурацией.
Context
Этот интерфейс представляет контекст именования, состоящий из набора привязок имя-объект.
ContextNotEmptyException
Это исключение выбрасывается при попытке уничтожить контекст, который не пуст.
InitialContext
Этот класс является начальным контекстом для выполнения операций именования.
InsufficientResourcesException
Это исключение выбрасывается, когда ресурсы недоступны для завершения запрошенной операции.
InterruptedNamingException
Это исключение выбрасывается, когда вызываемая операция именования была прервана.
InvalidNameException
Это исключение указывает, что указанное имя не соответствует синтаксису именования системы именования.
LimitExceededException
Это исключение выбрасывается, когда метод завершается аномально из-за заданного пользователем или системой ограничения.
LinkException
Это исключение используется для описания проблем, возникших при разрешении ссылок.
LinkLoopException
Это исключение выбрасывается, когда при попытке разрешить ссылку был обнаружен цикл или достигнуто ограничение реализации по количеству ссылок.
LinkRef
Этот класс представляет ссылку, содержимое которой — имя, называемое именем ссылки, которое привязано к атомному имени в контексте.
MalformedLinkException
Это исключение выбрасывается, когда была обнаружена неправильно сформированная ссылка при разрешении или построении ссылки.
Name
Интерфейс Name представляет общее имя — упорядоченную последовательность компонентов.
NameAlreadyBoundException
Это исключение выбрасывается методами для указания того, что привязка не может быть добавлена, потому что имя уже привязано к другому объекту.
NameClassPair
Этот класс представляет пару имени объекта и имени класса привязки, найденной в контексте.
NameNotFoundException
Это исключение выбрасывается, когда компонент имени не может быть разрешен, потому что он не привязан.
NameParser
Этот интерфейс используется для разбора имен из иерархического пространства имен.
NamingEnumeration<T>
Этот интерфейс предназначен для перечисления списков, возвращаемых методами в пакетах javax.naming и javax.naming.directory.
NamingException
Это суперкласс всех исключений, выбрасываемых операциями в интерфейсах Context и DirContext.
NamingSecurityException
Это суперкласс исключений, связанных с безопасностью, выбрасываемых операциями в интерфейсах Context и DirContext.
NoInitialContextException
Это исключение выбрасывается, когда невозможно создать реализацию начального контекста.
NoPermissionException
Это исключение выбрасывается при попытке выполнения операции, на которую у клиента нет разрешения.
NotContextException
Это исключение выбрасывается, когда операция именования доходит до точки, где требуется контекст для продолжения операции, но разрешенный объект не является контекстом.
OperationNotSupportedException
Это исключение выбрасывается, когда реализация контекста не поддерживает вызываемую операцию.
PartialResultException
Это исключение выбрасывается для указания того, что возвращаемый или частично возвращаемый результат является частичным и что операция не может быть завершена.
RefAddr
Этот класс представляет адрес конечной точки связи.
Reference
Этот класс представляет ссылку на объект, который находится за пределами системы именования/каталога.
Referenceable
Этот интерфейс реализуется объектом, который может предоставить ссылку на себя.
ReferralException
Этот абстрактный класс используется для представления исключения переадресации, которое генерируется в ответ на переадресацию, например, возвращаемую серверами LDAP v3.
ServiceUnavailableException
Это исключение выбрасывается при попытке взаимодействия со службой каталогов или службой именования, и эта служба недоступна.
SizeLimitExceededException
Это исключение выбрасывается, когда метод производит результат, который превышает ограничение, связанное с размером.
StringRefAddr
Этот класс представляет строковую форму адреса конечной точки связи.
TimeLimitExceededException
Это исключение выбрасывается, когда метод не завершается в течение заданного лимита времени.

© 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/package-summary.html

Spec-Zone.ru

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