Класс InitialDirContext
- Все реализуемые интерфейсы:
-
Context,DirContext
- Прямые известные подклассы:
InitialLdapContext
public class InitialDirContext extends InitialContext implements DirContext
- С:
- 1.3
- См. также:
Краткое описание полей
Поля, объявленные в классе javax.naming.InitialContext
defaultInitCtx, gotDefault, myProps
Поля, объявленные в интерфейсе 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
Поля, объявленные в интерфейсе javax.naming.directory.DirContext
ADD_ATTRIBUTE, REMOVE_ATTRIBUTE, REPLACE_ATTRIBUTE
Краткое описание конструкторов
| Модификатор | Конструктор | Описание |
|---|---|---|
| Создает Initial DirContext. |
||
protected |
Создает Initial DirContext с опцией неинициализации. |
|
| Создает Initial DirContext, используя предоставленную среду. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
bind |
Связывает имя с объектом, вместе с ассоциированными атрибутами. |
void |
bind |
Связывает имя с объектом, вместе с ассоциированными атрибутами. |
DirContext |
createSubcontext |
Создаёт и связывает новый контекст, вместе с ассоциированными атрибутами. |
DirContext |
createSubcontext |
Создаёт и связывает новый контекст, вместе с ассоциированными атрибутами. |
Attributes |
getAttributes |
Возвращает все атрибуты, связанные с именованным объектом. |
Attributes |
getAttributes |
Возвращает выбранные атрибуты, связанные с именованным объектом. |
Attributes |
getAttributes |
Возвращает все атрибуты, связанные с именованным объектом. |
Attributes |
getAttributes |
Возвращает выбранные атрибуты, связанные с именованным объектом. |
DirContext |
getSchema |
Возвращает схему, связанную с именованным объектом. |
DirContext |
getSchema |
Возвращает схему, связанную с именованным объектом. |
DirContext |
getSchemaClassDefinition |
Возвращает контекст, содержащий объекты схемы определений классов именованного объекта. |
DirContext |
getSchemaClassDefinition |
Возвращает контекст, содержащий объекты схемы определений классов именованного объекта. |
void |
modifyAttributes |
Изменяет атрибуты, связанные с именованным объектом. |
void |
modifyAttributes |
Изменяет атрибуты, связанные с именованным объектом, используя упорядоченный список изменений. |
void |
modifyAttributes |
Изменяет атрибуты, связанные с именованным объектом. |
void |
modifyAttributes |
Изменяет атрибуты, связанные с именованным объектом, используя упорядоченный список изменений. |
void |
rebind |
Связывает имя с объектом, вместе с ассоциированными атрибутами, перезаписывая любое существующее связывание. |
void |
rebind |
Связывает имя с объектом, вместе с ассоциированными атрибутами, перезаписывая любое существующее связывание. |
NamingEnumeration |
search |
Ищет в именованном контексте или объекте записи, удовлетворяющие заданному фильтру поиска. |
NamingEnumeration |
search |
Ищет в именованном контексте или объекте записи, удовлетворяющие заданному фильтру поиска. |
NamingEnumeration |
search |
Ищет в единственном контексте объекты, содержащие указанный набор атрибутов. |
NamingEnumeration |
search |
Ищет в единственном контексте объекты, содержащие указанный набор атрибутов, и возвращает выбранные атрибуты. |
NamingEnumeration |
search |
Ищет в именованном контексте или объекте записи, удовлетворяющие заданному фильтру поиска. |
NamingEnumeration |
search |
Ищет в именованном контексте или объекте записи, удовлетворяющие заданному фильтру поиска. |
NamingEnumeration |
search |
Ищет в единственном контексте объекты, содержащие указанный набор атрибутов. |
NamingEnumeration |
search |
Ищет в единственном контексте объекты, содержащие указанный набор атрибутов, и возвращает выбранные атрибуты. |
Методы, объявленные в классе javax.naming.InitialContext
addToEnvironment, bind, bind, close, composeName, composeName, createSubcontext, createSubcontext, destroySubcontext, destroySubcontext, doLookup, doLookup, getDefaultInitCtx, getEnvironment, getNameInNamespace, getNameParser, getNameParser, getURLOrDefaultInitCtx, getURLOrDefaultInitCtx, init, list, list, listBindings, listBindings, lookup, lookup, lookupLink, lookupLink, rebind, rebind, removeFromEnvironment, rename, rename, unbind, unbind
Методы, объявленные в классе java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Методы, объявленные в интерфейсе javax.naming.Context
addToEnvironment, bind, bind, close, composeName, composeName, createSubcontext, createSubcontext, destroySubcontext, destroySubcontext, getEnvironment, getNameInNamespace, getNameParser, getNameParser, list, list, listBindings, listBindings, lookup, lookup, lookupLink, lookupLink, rebind, rebind, removeFromEnvironment, rename, rename, unbind, unbind
Подробное описание конструкторов
InitialDirContext
protected InitialDirContext(boolean lazy) throws NamingException
InitialDirContext. Конструктор подкласса вызовет этот конструктор, вычислит значение среды, а затем вызовет init() перед возвратом.- Параметры:
-
lazy- true означает, что начальный DirContext не будет инициализирован; false эквивалентно вызовуnew InitialDirContext() - Исключения:
-
NamingException- если возникло исключение именования - С момента:
- 1.3
- См. также:
InitialDirContext
public InitialDirContext() throws NamingException
new InitialDirContext(null).- Исключения:
-
NamingException- если возникло исключение именования - См. также:
InitialDirContext
public InitialDirContext(Hashtable<?,?> environment) throws NamingException
javax.naming.InitialContext. Если свойство java.naming.provider.url предоставленной среды состоит из URL (или списка URL) с использованием протокола ldap, то полученный LdapContext будет использовать сервер LDAP, определённый с помощью настроенного LdapDnsProviders:
- Если это первый
InitialDirContext, созданный сjava.naming.provider.url, использующим протокол ldap, то используется механизм ServiceLoader для поиска реализаций LdapDnsProvider с использованием системного загрузчика классов. Порядок поиска поставщиков определяется конкретной реализацией, и реализация свободна кешировать найденных поставщиков. - Метод
lookupEndpointsкаждого поставщика, если он был создан, вызывается один раз с комбинацией каждого из URL в свойствеjava.naming.provider.urlи средой, пока поставщик не вернёт непустой результат или не будут исчерпаны все поставщики. Если ни один из LdapDnsProviders не вернёт непустой результат, то реализация предпримет все возможные усилия для определения конечной точки. ServiceConfigurationError,ErrorилиRuntimeException, возникающие при загрузке или вызове LdapDnsProvider, будут переданы в поток вызова.
Этот конструктор не будет изменять environment или сохранять ссылку на него, но может сохранить клон. Вызывающий поток не должен изменять изменяемые ключи и значения в environment после того, как они были переданы в конструктор.
- Параметры:
-
environment- среда, используемая для создания начального DirContext. Null означает пустую среду. - Исключения:
-
NamingException- если возникло исключение именования
Подробное описание методов
getAttributes
public Attributes getAttributes(String name) throws NamingException
DirContextDirContext.getAttributes(Name).- Определено в:
-
getAttributesв интерфейсеDirContext - Параметры:
-
name- имя объекта, атрибуты которого нужно получить - Возвращает:
- множество атрибутов, связанных с
name - Исключения:
-
NamingException- если возникло исключение именования
getAttributes
public Attributes getAttributes(String name, String[] attrIds) throws NamingException
DirContextDirContext.getAttributes(Name, String[]).- Определено в:
-
getAttributesв интерфейсеDirContext - Параметры:
-
name- Имя объекта, атрибуты которого нужно получить -
attrIds- идентификаторы атрибутов, которые нужно получить. null указывает на получение всех атрибутов; пустой массив указывает на то, что ни один атрибут не должен быть получен. - Возвращает:
- запрошенные атрибуты; никогда не null
- Исключения:
-
NamingException- если возникло исключение именования
getAttributes
public Attributes getAttributes(Name name) throws NamingException
DirContext- Определено в:
-
getAttributesв интерфейсеDirContext - Параметры:
-
name- имя объекта, атрибуты которого нужно получить - Возвращает:
- набор атрибутов, связанных с
name. Возвращает пустой набор атрибутов, если у имени нет атрибутов; никогда не null. - Исключения:
-
NamingException- если возникло исключение именования - См. также:
getAttributes
public Attributes getAttributes(Name name, String[] attrIds) throws NamingException
DirContextЕсли у объекта нет указанного атрибута, каталог проигнорирует отсутствующий атрибут и вернёт те запрошенные атрибуты, которые у объекта есть.
Каталог может вернуть больше атрибутов, чем было запрошено (см. Имена типов атрибутов в описании класса), но не имеет права возвращать произвольные, не связанные атрибуты.
См. также Операционные атрибуты в описании класса.
- Определено в:
-
getAttributesв интерфейсеDirContext - Параметры:
-
name- имя объекта, атрибуты которого нужно получить -
attrIds- идентификаторы атрибутов, которые нужно получить. null указывает на получение всех атрибутов; пустой массив указывает на то, что ни один атрибут не должен быть получен. - Возвращает:
- запрошенные атрибуты; никогда не null
- Исключения:
-
NamingException- если возникло исключение именования
modifyAttributes
public void modifyAttributes(String name, int mod_op, Attributes attrs) throws NamingException
DirContextDirContext.modifyAttributes(Name, int, Attributes).- Определено в:
-
modifyAttributesв интерфейсеDirContext - Параметры:
-
name- имя объекта, атрибуты которого нужно обновить -
mod_op- операция модификации, одна из:ADD_ATTRIBUTE,REPLACE_ATTRIBUTE,REMOVE_ATTRIBUTE. -
attrs- атрибуты, используемые для модификации; не может быть null - Исключения:
-
AttributeModificationException- если модификация не может быть выполнена успешно -
NamingException- если возникло исключение именования
изменитьАтрибуты
public void modifyAttributes(Name name, int mod_op, Attributes attrs) throws NamingException
DirContext- Указано в:
-
modifyAttributesв интерфейсеDirContext - Параметры:
-
name- имя объекта, атрибуты которого будут обновлены -
mod_op- операция изменения, одна из:ADD_ATTRIBUTE,REPLACE_ATTRIBUTE,REMOVE_ATTRIBUTE. -
attrs- атрибуты, используемые для изменения; не может быть null - Исключения:
-
AttributeModificationException- если изменение не может быть выполнено успешно -
NamingException- если возникает исключение именования - См. также:
изменитьАтрибуты
public void modifyAttributes(String name, ModificationItem[] mods) throws NamingException
DirContextDirContext.modifyAttributes(Name, ModificationItem[]) для получения подробностей.- Указано в:
-
modifyAttributesв интерфейсеDirContext - Параметры:
-
name- имя объекта, атрибуты которого будут обновлены -
mods- упорядоченная последовательность изменений, которые нужно выполнить; не может быть null - Исключения:
-
AttributeModificationException- если изменения не могут быть выполнены успешно -
NamingException- если возникает исключение именования
изменитьАтрибуты
public void modifyAttributes(Name name, ModificationItem[] mods) throws NamingException
DirContext- Указано в:
-
modifyAttributesв интерфейсеDirContext - Параметры:
-
name- имя объекта, атрибуты которого будут обновлены -
mods- упорядоченная последовательность изменений, которые нужно выполнить; не может быть null - Исключения:
-
AttributeModificationException- если изменения не могут быть выполнены успешно -
NamingException- если возникает исключение именования - См. также:
связать
public void bind(String name, Object obj, Attributes attrs) throws NamingException
DirContextDirContext.bind(Name, Object, Attributes) для получения подробностей.- Указано в:
-
bindв интерфейсеDirContext - Параметры:
-
name- имя для связи; не может быть пустым -
obj- объект для связи; возможно null -
attrs- атрибуты, ассоциированные с связыванием - Исключения:
-
NameAlreadyBoundException- если имя уже связано -
InvalidAttributesException- если некоторые «обязательные» атрибуты связывания не предоставлены -
NamingException- если возникает исключение именования
связать
public void bind(Name name, Object obj, Attributes attrs) throws NamingException
DirContextattrs равно null, результирующее связывание будет иметь атрибуты, связанные с obj, если obj является DirContext, и не имеет атрибутов в противном случае. Если attrs не равно null, результирующее связывание будет иметь attrs в качестве своих атрибутов; любые атрибуты, связанные с obj, игнорируются.- Указано в:
-
bindв интерфейсеDirContext - Параметры:
-
name- имя для связи; не может быть пустым -
obj- объект для связи; возможно null -
attrs- атрибуты, ассоциированные с связыванием - Исключения:
-
NameAlreadyBoundException- если имя уже связано -
InvalidAttributesException- если некоторые «обязательные» атрибуты связывания не предоставлены -
NamingException- если возникает исключение именования - См. также:
пересвязать
public void rebind(String name, Object obj, Attributes attrs) throws NamingException
DirContextDirContext.rebind(Name, Object, Attributes) для получения подробностей.- Указано в:
-
rebindв интерфейсеDirContext - Параметры:
-
name- имя для связи; не может быть пустым -
obj- объект для связи; возможно null -
attrs- атрибуты, ассоциированные с связыванием - Исключения:
-
InvalidAttributesException- если некоторые «обязательные» атрибуты связывания не предоставлены -
NamingException- если возникает исключение именования
пересвязать
public void rebind(Name name, Object obj, Attributes attrs) throws NamingException
DirContextattrs равно null и obj является DirContext, используются атрибуты из obj. Если attrs равно null и obj не является DirContext, любые существующие атрибуты, связанные с объектом, уже связанным в каталоге, остаются неизменными. Если attrs не равно null, любые существующие атрибуты, связанные с объектом, уже связанным в каталоге, удаляются, и attrs связываются с объектом с именем. Если obj является DirContext и attrs не равно null, атрибуты obj игнорируются.- Указано в:
-
rebindв интерфейсеDirContext - Параметры:
-
name- имя для связи; не может быть пустым -
obj- объект для связи; возможно null -
attrs- атрибуты, ассоциированные с связыванием - Исключения:
-
InvalidAttributesException- если некоторые «обязательные» атрибуты связывания не предоставлены -
NamingException- если возникает исключение именования - См. также:
создатьПодконтекст
public DirContext createSubcontext(String name, Attributes attrs) throws NamingException
DirContextDirContext.createSubcontext(Name, Attributes) для получения подробностей.- Указано в:
-
createSubcontextв интерфейсеDirContext - Параметры:
-
name- имя контекста для создания; не может быть пустым -
attrs- атрибуты, ассоциированные с вновь созданным контекстом - Возвращает:
- новый созданный контекст
- Исключения:
-
NameAlreadyBoundException- если имя уже связано -
InvalidAttributesException- еслиattrsне содержит все необходимые атрибуты для создания -
NamingException- если возникает исключение именования
createSubcontext
public DirContext createSubcontext(Name name, Attributes attrs) throws NamingException
DirContextattrs равно null, этот метод эквивалентен Context.createSubcontext().- Определено в:
-
createSubcontextв интерфейсеDirContext - Параметры:
-
name- имя создаваемого контекста; не может быть пустым -
attrs- атрибуты, которые следует ассоциировать с вновь созданным контекстом - Возвращает:
- новый созданный контекст
- Исключения:
-
NameAlreadyBoundException- если имя уже связано -
InvalidAttributesException- еслиattrsне содержит все необходимые обязательные атрибуты для создания -
NamingException- если возникло исключение при именовании - См. также:
getSchema
public DirContext getSchema(String name) throws NamingException
DirContextDirContext.getSchema(Name).- Определено в:
-
getSchemaв интерфейсеDirContext - Параметры:
-
name- имя объекта, схема которого требуется - Возвращает:
- схема, связанная с контекстом; никогда не null
- Исключения:
-
OperationNotSupportedException- если схема не поддерживается -
NamingException- если возникло исключение при именовании
getSchema
public DirContext getSchema(Name name) throws NamingException
DirContextЭтот метод возвращает корень дерева схемы, применимого к указанному объекту. Несколько объектов с именами (или даже весь каталог) могут использовать одну и ту же схему.
Такие вопросы, как структура и содержимое дерева схемы, разрешение на изменение содержимого дерева схемы и влияние таких изменений на каталог, зависят от базового каталога.
- Определено в:
-
getSchemaв интерфейсеDirContext - Параметры:
-
name- имя объекта, схема которого требуется - Возвращает:
- схема, связанная с контекстом; никогда не null
- Исключения:
-
OperationNotSupportedException- если схема не поддерживается -
NamingException- если возникло исключение при именовании
getSchemaClassDefinition
public DirContext getSchemaClassDefinition(String name) throws NamingException
DirContextDirContext.getSchemaClassDefinition(Name).- Определено в:
-
getSchemaClassDefinitionв интерфейсеDirContext - Параметры:
-
name- имя объекта, определение класса которого нужно получить - Возвращает:
- контекст
DirContext, содержащий определения классов указанного объекта; никогда не null - Исключения:
-
OperationNotSupportedException- если схема не поддерживается -
NamingException- если возникло исключение при именовании
getSchemaClassDefinition
public DirContext getSchemaClassDefinition(Name name) throws NamingException
DirContext Одна категория информации в схемах каталога - это определения классов. Определение "класса объекта" определяет тип объекта и какие атрибуты (обязательные и необязательные) объект должен/может иметь. Обратите внимание, что термин "класс объекта", к которому здесь обращаются, используется в смысле каталога, а не в смысле Java. Например, если указанный объект является объектом каталога класса "Person", getSchemaClassDefinition() вернёт DirContext, представляющий определение (класса каталога) "Person".
Информация, которая может быть извлечена из определения класса объекта, зависит от каталога.
До JNDI 1.2 этот метод возвращал один объект схемы, представляющий определение класса указанного объекта. Начиная с JNDI 1.2, этот метод возвращает DirContext, содержащий все определения классов указанного объекта.
- Определено в:
-
getSchemaClassDefinitionв интерфейсеDirContext - Параметры:
-
name- имя объекта, определение класса которого нужно получить - Возвращает:
- контекст
DirContext, содержащий определения классов указанного объекта; никогда не null - Исключения:
-
OperationNotSupportedException- если схема не поддерживается -
NamingException- если возникло исключение при именовании
search
public NamingEnumeration<SearchResult> search(String name, Attributes matchingAttributes) throws NamingException
DirContextDirContext.search(Name, Attributes).- Определено в:
-
searchв интерфейсеDirContext - Параметры:
-
name- имя контекста для поиска -
matchingAttributes- атрибуты, которые нужно искать - Возвращает:
- перечисление объектов
SearchResult - Исключения:
-
NamingException- если возникло исключение при именовании
search
public NamingEnumeration<SearchResult> search(Name name, Attributes matchingAttributes) throws NamingException
DirContextattributesToReturn методу search(Name, Attributes, String[]). Подробнее см.
DirContext.search(Name, Attributes, String[]).- Определено в:
-
searchв интерфейсеDirContext - Параметры:
-
name- имя контекста для поиска -
matchingAttributes- атрибуты, которые нужно искать - Возвращает:
- перечисление объектов
SearchResult - Исключения:
-
NamingException- если возникло исключение при именовании - См. также:
search
public NamingEnumeration<SearchResult> search(String name, Attributes matchingAttributes, String[] attributesToReturn) throws NamingException
DirContextDirContext.search(Name, Attributes, String[]).- Определено в:
-
searchв интерфейсеDirContext - Параметры:
-
name- имя контекста для поиска -
matchingAttributes- атрибуты, которые нужно искать -
attributesToReturn- атрибуты, которые нужно вернуть - Возвращает:
- не-null перечисление объектов
SearchResult - Исключения:
-
NamingException- если возникло исключение при именовании
поиск
public NamingEnumeration<SearchResult> search(Name name, Attributes matchingAttributes, String[] attributesToReturn) throws NamingException
DirContextSearchControls. Для выбора объекта каждый атрибут в matchingAttributes должен совпадать с каким-либо атрибутом объекта. Если matchingAttributes пусто или равно null, возвращаются все объекты в целевом контексте.
Атрибут A1 в matchingAttributes считается соответствующим атрибуту A2 объекта, если A1 и A2 имеют одинаковый идентификатор, а каждое значение A1 равно какому-либо значению A2. Это подразумевает, что порядок значений не имеет значения, и что A2 может содержать «дополнительные» значения, отсутствующие в A1, без влияния на сравнение. Это также подразумевает, что если A1 не имеет значений, то проверка соответствия эквивалентна проверке наличия атрибута A2 с тем же идентификатором.
Точное определение «равенства», используемое при сравнении значений атрибутов, определяется базовой службой каталогов. Например, она может использовать метод Object.equals или может использовать схему для определения другой операции равенства. Для сопоставления на основе операций, отличных от равенства (например, сравнения подстрок), используйте версию метода search, принимающую аргумент фильтра.
При внесении изменений в этот DirContext, влияние на перечисления, возвращаемые предыдущими вызовами этого метода, не определено.
Если у объекта отсутствует указанный атрибут, каталог проигнорирует несуществующий атрибут и вернет запрошенные атрибуты, которые у объекта есть.
Каталог может вернуть больше атрибутов, чем было запрошено (см. Имена типов атрибутов в описании класса), но не имеет права возвращать произвольные, не связанные атрибуты.
См. также Операционные атрибуты в описании класса.
- Указано в:
-
searchв интерфейсеDirContext - Параметры:
-
name- имя контекста для поиска -
matchingAttributes- атрибуты для поиска. Если пусто или null, возвращаются все объекты в целевом контексте. -
attributesToReturn- атрибуты для возврата. null указывает на возврат всех атрибутов; пустой массив указывает на возврат ни одного. - Возвращает:
- непустое перечисление объектов
SearchResult. КаждыйSearchResultсодержит атрибуты, идентифицированные поattributesToReturn, и имя соответствующего объекта, указанного относительно контекста, названногоname. - Исключение:
-
NamingException- если возникает исключение при работе с именами - См. также:
поиск
public NamingEnumeration<SearchResult> search(String name, String filter, SearchControls cons) throws NamingException
DirContextDirContext.search(Name, String, SearchControls).- Указано в:
-
searchв интерфейсеDirContext - Параметры:
-
name- имя контекста или объекта для поиска -
filter- выражение фильтра, используемое для поиска; не должно быть null -
cons- настройки поиска, контролирующие поиск. Если null, используются настройки поиска по умолчанию (эквивалентно(new SearchControls())). - Возвращает:
- перечисление объектов
SearchResultдля объектов, удовлетворяющих фильтру. - Исключение:
-
InvalidSearchFilterException- если заданный фильтр поиска не поддерживается или не понят базовым каталогом -
InvalidSearchControlsException- если настройки поиска содержат недопустимые параметры -
NamingException- если возникает исключение при работе с именами
поиск
public NamingEnumeration<SearchResult> search(Name name, String filter, SearchControls cons) throws NamingException
DirContext Формат и интерпретация filter следуют RFC 2254 с указанными в RFC интерпретациями для attr и value.
attr — идентификатор атрибута.
value — строковое представление значения атрибута. Преобразование этого строкового представления в значение атрибута зависит от каталога.
Например, для утверждения «someCount=127», attr — «someCount», а value — «127». Поставщик определяет, основываясь на идентификаторе атрибута («someCount») (и, возможно, его схеме), что значение атрибута является целым числом. Затем он должным образом анализирует строку «127».
Любые не-ASCII символы в строке фильтра должны быть представлены соответствующими символами Java (Unicode), а не кодироваться как байты UTF-8. В качестве альтернативы можно использовать обозначение «обратная косая черта-шестнадцатеричный код», описанное в RFC 2254.
Если каталог не поддерживает строковое представление некоторых или всех своих атрибутов, можно использовать форму search, принимающую аргументы фильтра в виде объектов. В этом случае поставщик службы переведёт аргументы фильтра в свою внутреннюю форму для оценки фильтра. См. search(Name, String, Object[], SearchControls).
RFC 2254 определяет определенные операторы для фильтра, включая сопоставление подстрок, равенство, приблизительное соответствие, больше чем, меньше чем. Эти операторы сопоставляются с операторами с соответствующей семантикой в базовом каталоге. Например, для оператора равенства предположим, что каталог имеет правило сопоставления, определяющее «равенство» атрибутов в фильтре. Это правило будет использоваться для проверки равенства атрибутов, указанных в фильтре, с атрибутами объектов в каталоге. Аналогично, если в каталоге есть правило сопоставления для упорядочения, это правило будет использоваться для сравнения «больше чем» и «меньше чем».
Не все операторы, определенные в RFC 2254, применимы ко всем атрибутам. Когда оператор неприменим, генерируется исключение InvalidSearchFilterException.
Результат возвращается в перечислении объектов SearchResult. Каждый SearchResult содержит имя объекта и другую информацию об объекте (см. SearchResult). Имя является либо относительным к целевому контексту поиска (который назван параметром name), либо это строка URL. Если целевой контекст включён в перечисление (что возможно, когда cons задаёт область поиска SearchControls.OBJECT_SCOPE или SearchControls.SUBSTREE_SCOPE), его имя — пустая строка. SearchResult также может содержать атрибуты соответствующего объекта, если аргумент cons указывает на возврат атрибутов.
Если у объекта отсутствует запрашиваемый атрибут, этот несуществующий атрибут будет пропущен. Те запрошенные атрибуты, которые у объекта есть, будут возвращены.
Каталог может вернуть больше атрибутов, чем было запрошено (см. Имена типов атрибутов в описании класса), но не имеет права возвращать произвольные, не связанные атрибуты.
См. также Операционные атрибуты в описании класса.
- Указано в:
-
searchв интерфейсеDirContext - Параметры:
-
name- имя контекста или объекта для поиска -
filter- выражение фильтра, используемое для поиска; не должно быть null -
cons- настройки поиска, контролирующие поиск. Если null, используются настройки поиска по умолчанию (эквивалентно(new SearchControls())). - Возвращает:
- перечисление объектов
SearchResultсоответствующих объектов; никогда не null - Исключение:
-
InvalidSearchFilterException- если заданный фильтр поиска не поддерживается или не понят базовым каталогом -
InvalidSearchControlsException- если настройки поиска содержат недопустимые параметры -
NamingException- если возникает исключение при работе с именами - См. также:
поиск
public NamingEnumeration<SearchResult> search(String name, String filterExpr, Object[] filterArgs, SearchControls cons) throws NamingException
DirContextDirContext.search(Name, String, Object[], SearchControls).- Указано в:
-
searchв интерфейсеDirContext - Параметры:
-
name- имя контекста или объекта для поиска -
filterExpr- выражение фильтра поиска. Выражение может содержать переменные вида "{i}", гдеi- неотрицательное целое число. Не может быть null. -
filterArgs- массив аргументов для подстановки переменных вfilterExpr. ЗначениеfilterArgs[i]заменит каждое вхождение "{i}". Если null, эквивалентно пустому массиву. -
cons- параметры поиска, управляющие поиском. Если null, используются стандартные параметры поиска (эквивалентно(new SearchControls())). - Возвращает:
- перечисление
SearchResultобъектов, удовлетворяющих фильтру; никогда не null - Исключения:
-
InvalidSearchControlsException- еслиconsсодержит недопустимые настройки -
InvalidSearchFilterException- еслиfilterExprсfilterArgsпредставляет недопустимый фильтр поиска -
NamingException- если возникло исключение именования
поиск
public NamingEnumeration<SearchResult> search(Name name, String filterExpr, Object[] filterArgs, SearchControls cons) throws NamingException
DirContext Интерпретация filterExpr основана на RFC 2254. Она может дополнительно содержать переменные вида {i} — где i — целое число — которые ссылаются на объекты в массиве filterArgs. Интерпретация filterExpr в остальном идентична параметру filter метода search(Name, String, SearchControls).
Когда в фильтре поиска появляется переменная {i}, это указывает на то, что аргумент фильтра filterArgs[i] должен использоваться на этом месте. Такие переменные могут использоваться там, где в грамматике фильтра RFC 2254, раздел 4, появляются производства attr, value или matchingrule. При подстановке строкового аргумента фильтра в переменную, фильтр интерпретируется так, как если бы строка была задана вместо переменной, при этом любые символы, имеющие специальное значение в фильтрах (например, '*'), были экранированы в соответствии с правилами RFC 2254.
Для каталогов, которые не используют строковое представление для некоторых или всех своих атрибутов, аргумент фильтра, соответствующий значению атрибута, может быть другого типа, нежели String. Например, каталоги, поддерживающие несвязные бинарные значения атрибутов, должны принимать массивы байтов в качестве аргументов фильтра. Интерпретация (если она есть) аргументов фильтра любого другого типа определяется поставщиком услуг для этого каталога, который сопоставляет операции фильтра с операциями с соответствующей семантикой в базовом каталоге.
Этот метод возвращает перечисление результатов. Каждый элемент перечисления содержит имя объекта и другую информацию об объекте (см. SearchResult). Имя является либо относительным к целевому контексту поиска (который называется параметром name), либо строкой URL. Если целевой контекст включен в перечисление (как это возможно, когда cons задает область поиска SearchControls.OBJECT_SCOPE или SearchControls.SUBSTREE_SCOPE), его имя — пустая строка.
SearchResult также может содержать атрибуты соответствующего объекта, если аргумент cons указывает на то, что атрибуты должны быть возвращены.
Если у объекта отсутствует запрашиваемый атрибут, этот отсутствующий атрибут игнорируется. Запрашиваемые атрибуты, которые у объекта есть, будут возвращены.
Каталог может возвращать больше атрибутов, чем было запрошено (см. Имена типов атрибутов в описании класса), но не имеет права возвращать произвольные, не связанные атрибуты.
Если фильтру поиска с недопустимыми подстановками переменных предоставляется этому методу, результат неопределен. При внесении изменений в этот DirContext, влияние на перечисления, возвращённые предыдущими вызовами этого метода, неопределённо.
См. также Операционные атрибуты в описании класса.
- Указано в:
-
searchв интерфейсеDirContext - Параметры:
-
name- имя контекста или объекта для поиска -
filterExpr- выражение фильтра поиска. Выражение может содержать переменные вида "{i}", гдеi- неотрицательное целое число. Не может быть null. -
filterArgs- массив аргументов для подстановки переменных вfilterExpr. ЗначениеfilterArgs[i]заменит каждое вхождение "{i}". Если null, эквивалентно пустому массиву. -
cons- параметры поиска, управляющие поиском. Если null, используются стандартные параметры поиска (эквивалентно(new SearchControls())). - Возвращает:
- перечисление
SearchResultобъектов, удовлетворяющих фильтру; никогда не null - Исключения:
-
InvalidSearchControlsException- еслиconsсодержит недопустимые настройки -
InvalidSearchFilterException- еслиfilterExprсfilterArgsпредставляет недопустимый фильтр поиска -
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/directory/InitialDirContext.html