Lotus Domino Designer: AJAX или какой-либо другой способ открыть URL для получения данных - PullRequest
1 голос
/ 03 ноября 2011

После Lotus Domino Designer: добавьте кнопку в календарь по умолчанию

Ссылка на самом деле является ссылкой SSO (единый вход), которая предоставляется нашим API для подключения пользователяв наше приложение.

Мы должны выполнить URL http://foo.com/api.asp?cas=GETUSERTOKEN&rdn=9428521&login=mike&logincnx=adminAPIHays&pwdcnx=app

, который возвращает ограниченную по времени ссылку SSO http://foo.com/hays/array.asp?key=750EA68A476C9F8D26F9704B203205FDF64D2B849B688F169B398D217FFF570F54C1CB6B4635A494E504E624EDF3266D0D5C2A1210AA43EE3CD2098AE8B42DBF, которая соединяет пользователя.

Каким образом яМожно ли запрограммировать это в Domino Designer?

При необходимости мы можем поместить кнопку в новое что-то (фактически не обязательно в календаре по умолчанию).

Ответы [ 2 ]

2 голосов
/ 04 ноября 2011

Поскольку вы хотите получить другой URL-адрес из первоначального запроса URL-адреса, вам потребуется использовать Java-агент, чтобы открыть соединение URL-адреса, и обработать ответ, чтобы определить.Наилучшим подходом является использование класса J2SE URLConnection .Как только вы работаете с Java-агентом, вы можете собирать ответы и сохранять их в Документах.

Если вам нужно что-то сделать в пользовательском интерфейсе после получения ответа, вам нужно будет вызвать Java-агент из функции LotusScript либо из действия представления, либо из кнопки формы.Но если это не требуется, вы также можете вызвать Java-агент непосредственно в действиях просмотра и кнопках формы.Агенты Java не имеют вывода пользовательского интерфейса, кроме консоли отладки Java.В кругах Domino Боб Балабан - гуру, и он недавно начал пересматривать свои работы Java in Domino .Он дает хорошее представление о том, как он «связывается» с Domino API.

В Интернете можно найти множество примеров использования Java в Domino.IBM опубликовала информацию о Java-агентах в Domino .Несколько хороших примеров можно найти здесь , здесь и здесь .Последняя версия Domino Designer работает под Eclipse, так что это может быть help to.

0 голосов
/ 04 ноября 2011

Я сделал это в LotusScript:

Sub Click(Source As Button)
    Dim objHttp As Variant
    Dim url As String
    Dim response As String

    Set objHttp = CreateObject("Microsoft.XMLHTTP")

    url = "http://foo.com/api.asp?cas=GETUSERTOKEN&rdn=9428521&login=mike&logincnx=adminAPIHays&pwdcnx=app"

    objHttp.open "GET", url, False
    objHttp.setRequestHeader "Content-type", "application/x-www-form-urlencoded"

    objHttp.send

    newUrl = objHttp.responseText

    Set w = New NotesUIWorkspace
    w.UrlOpen newUrl
End Sub
...