Как получить идентификатор электронной почты в [email protected] вместо «CN = пример / OU = Сервер / O = компания» в заметках лотоса в Java

1

Привет, когда я получаю имя пользователя от дизайнера домино по указанному ниже пути

    Session session = getSession();
    AgentContext agentContext = session.getAgentContext();
    String userName=session.getUsername(); 
    system.out.println("UserName="+uesrName);

Я получаю имя пользователя в формате "CN = example/OU = Server/O = company", но я хочу быть в обычном формате, например [email protected]. Кто-нибудь может рассказать, как получить его на Java. любой другой подход, чтобы получить имя пользователя в ожидаемом формате.please help.It было бы здорово, если некоторые ссылки предоставляются.

Теги:
lotus-notes
lotus-domino
domino-designer-eclipse
lotus

1 ответ

1
Лучший ответ

[email protected] НЕ является именем пользователя, кроме адреса email- (который может использоваться в поле имени пользователя для входа в систему для веб-служб /traveler/ldap/и т.д., если сервер настроен соответствующим образом).

Существуют различные способы получить адрес email- для данного имени пользователя, самым простым может быть использование класса Directory- и его метода "lookupNames".

Вот пример, взятый из справки конструктора:

  Session session = getSession();
  AgentContext agentContext = session.getAgentContext();
  Directory dir = session.getDirectory("NameOfYourServer");
  String userName=session.getUsername(); 
  DirEntryCollection direc = dir.lookupNames("($Users)",userName,"email");
  DirEntry dirent = direc.getFirstEntry()
  while (dirent != null) {
    String name = dirent.getItemValue("InternetAddress");
    System.out.println(InternetAddress);
    dirent = direc.getNextEntry(); }

Помощь дизайнера может быть найдена во многих местах (локально установлена, если установлен конструктор) или, например, здесь

  • 0
    Я попробовал способ, которым вы сказали. Представление $ Users, похоже, относится к почтовым контактам. Поэтому, когда я печатал значения InternetAddress, я получил значение, которое я сохранил при создании контакта. Но мне нужен сопоставленный идентификатор электронной почты для конкретное имя пользователя. Можете ли вы рассказать, как получить идентификатор электронной почты для соответствующего имени пользователя.
  • 1
    Передайте имя вашего сервера Domino в метод getDirectory вместо null.
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню