我需要通过它的 SOAP Web 服务连接到 .net 应用程序,但无法从 Domino 中运行它。使用 XPages 我想连接到 Web 服务以将数据返回到 xpage。我尝试创建一个代理来拨打电话,但没有奏效。我在运行代理时收到以下 java StackTrace:
WebServiceEngineFault
faultCode: {http://www.lotus.com/domino/ws/}HTTP
faultSubcode:
faultString: (401) Unauthorized
faultActor:
faultNode:
faultDetail:
{}string:
(401) Unauthorized
at lotus.domino.axis.transport.http.HTTPSender.readFromSocket(Unknown Source)
at lotus.domino.axis.transport.http.HTTPSender.invoke(Unknown Source)
at lotus.domino.axis.strategies.InvocationStrategy.visit(Unknown Source)
at lotus.domino.axis.SimpleChain.doVisiting(Unknown Source)
at lotus.domino.axis.SimpleChain.invoke(Unknown Source)
at lotus.domino.axis.client.AxisClient.invoke(Unknown Source)
at lotus.domino.axis.client.Call.invokeEngine(Unknown Source)
at lotus.domino.axis.client.Call.invoke(Unknown Source)
at lotus.domino.axis.client.Call.invoke(Unknown Source)
at lotus.domino.axis.client.Call.invoke(Unknown Source)
at lotus.domino.axis.client.Call.invoke(Unknown Source)
at lotus.domino.websvc.client.Call.invoke(Unknown Source)
at com.imanage.worksite.IWOVServicesSoapStub.getFolders(Unknown Source)
at JavaAgent.NotesMain(Unknown Source)
at lotus.domino.AgentBase.runNotes(Unknown Source)
at lotus.domino.NotesThread.run(Unknown Source)
我可以从soapUI 中成功调用它,传入用户ID、密码和域凭据。
我在使用 Web 服务的代理中设置凭据:
String arg0 = "DOMAINNAME\\USERID";
String arg1 = "PASSWORD";
stub.setCredentials(arg0, arg1);
以及 Web 服务使用者本身(在 SoapStub 类中 - 在 getFolders 调用中):
_call.setUsername("DOMAINNAME\\USERID");
_call.setPassword("PASSWORD");
我是 XPages 和 Java 的新手。有谁知道我可能遗漏了什么或应该检查什么?
(我不能将 Lotusscript 用于 Web 服务使用者,因为 WSDL 生成的变量名太长,所以在这种情况下我必须使用 java)。