关注Lotus Domino Designer: Add a button in the default calendar
该链接实际上是一个SSO链接(单点登录),由我们的API提供,用于将用户连接到我们的应用程序。
我们必须执行网址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中对其进行编程?
如果有必要,我们可以将按钮放在新的东西中(实际上不一定在默认日历中)。
答案 0 :(得分:2)
因为您想从初始URL请求获取另一个URL,所以您需要使用java代理打开URL连接,并处理响应以确定。最好的方法是使用J2SE URLConnection类。进入Java代理后,您可以捕获响应并将其存储在Documents中。
如果在收到响应后需要在UI中执行某些操作,则需要从视图操作或表单按钮中从LotusScript函数中调用Java代理。但是,如果不需要,您还可以直接在视图操作和表单按钮中调用Java代理。除了Java调试控制台之外,Java代理没有UI输出。在多米诺圈子里,Bob Balaban是一位大师,最近开始修改他的Java in Domino着作。它可以很好地了解它如何与Domino API“挂在一起”。
互联网上有很多关于在Domino中使用Java的例子。 IBM已发布有关Java Agents in Domino的信息。可以找到一些好的示例here,here和here。最新版本的Domino Designer在Eclipse下运行,因此可能是help到。
答案 1 :(得分:0)
我在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