2014-02-18 64 views
1

我被困在一个问题上,我找不到答案,不管我多么努力地Google它。 我正在尝试在Lotus Domino Designer上创建WS消费者。该版本是8.5.3。尝试在Lotus Domino Designer上创建Web服务使用者时出现奇怪的错误(8.5.3)

我已经尝试过三种不同的WS,答案总是一样的。 这就是:

WebServiceEngineFault faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.generalException faultSubcode: faultString: Error connecting to 'www.webservicex.net' on port '80', You must enable the Notes TCPIP port. faultActor: faultNode: faultDetail: Error connecting to 'www.webservicex.net' on port '80', You must enable the Notes TCPIP port. 
       at lotus.domino.axis.InternalFault.makeFault(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 NET.webserviceX.www.AngleUnitSoapStub.changeAngleUnit(AngleUnitSoapStub.java:11) 
       at JavaAgent.NotesMain(Unknown Source) 
       at lotus.domino.AgentBase.runNotes(Unknown Source) 
       at lotus.domino.NotesThread.run(Unknown Source) Caused by: Error connecting to 'www.webservicex.net' on port '80', You must enable the Notes TCPIP port. 
       at lotus.domino.axis.transport.http.NotesSocket.openConnection(Native Method) 
       at lotus.domino.axis.transport.http.NotesSocket.<init>(Unknown Source) 
       at lotus.domino.axis.transport.http.HTTPSender.getSocket(Unknown Source) 
       ... 15 more 

我所做的是从一个非常简单的Web服务(Web Service的X)导入WSDL,www.webservicex.net只是为了测试的缘故,到Web服务消费者。我将它导入到我的Java代理中并试图调用一种方法。代理代码看起来像这样,我认为它几乎不会更简单:

import lotus.domino.*; 

import NET.webserviceX.www.*; 

public class JavaAgent extends AgentBase { 

    public void NotesMain() { 

     try { 
      Session session = getSession(); 
      AgentContext agentContext = session.getAgentContext(); 
      AngleUnitSoap stub; 
      double retVal; 

      System.out.println("Start"); 
      AngleUnitLocator locator = new AngleUnitLocator(); 
      stub = locator.getAngleUnitSoap(); 
      retVal = stub.changeAngleUnit(180,Angles.degrees, Angles.radians); 
      System.out.println("end"); 
     } catch(Exception e) { 
      e.printStackTrace(); 
     } 
    } 
} 

我尝试了更多的ws和结果是相同的。我确实声明我无法理解TCPIP错误。该端口在Lotus Domino Designer的首选项部分打开。再次,为了测试,我写了一个小的Java代理,它只是检索一个网页的HTML,它成功了。除非我犯错,否则我认为这意味着沟通工作正常。我真的不知道我做错了什么。我可能错过了一些明显的东西。 非常感谢您的帮助。我想根据您的角度单位提缩小我的问题尽可能的,但随时问其他信息, 我深深的体会到这个

用我最亲切的问候你的帮助, 卡洛斯

+0

WSDL文件中的端点是什么? –

+0

另外,如果您打开消费者XXXService类,它会向您显示自动生成的示例代码以实例化您的存根(上面看起来不正确)。 –

回答

0

在您的源代码中,我相信您试图使用的Web服务是Convert Angle示例。

望着WSDL File,在最顶部,你可以看到如下内容:

xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" 

这意味着Web服务使用SOAP1.2。 Domino只支持SOAP1.1,详见infocenter

如果你想创建自己的Appdev wiki上有一个tutorial

+0

嗨,西蒙。我遵循教程,并在LotusScript上遇到同样的问题。我发现问题与我在右下角将Domino Designer设置为Offline的事实有关。非常感谢你的帮助 –

相关问题