2012-04-30 71 views
0

我试图用使用Java客户端来访问.NET Web服务.NET Web服务:访问使用Java客户端

  1. 的NetBeans 7.01
  2. JAXWS
  3. JDK6
  4. GlassFish服务器。

我能够使用.NET Web服务给出的WSDL文件创建存根。但我收到错误:

Exception in thread "main" javax.xml.ws.soap.SOAPFaultException: MustUnderstand 
headers:[{http://www.w3.org/2005/08/addressing}Action] are not understood 
at com.sun.xml.internal.ws.protocol.soap.MUTube.createMUSOAPFaultException(MUTube.java:143) 
at com.sun.xml.internal.ws.protocol.soap.ClientMUTube.processResponse(ClientMUTube.java:85) 
at com.sun.xml.internal.ws.api.pipe.Fiber.__doRun(Fiber.java:597) 
at com.sun.xml.internal.ws.api.pipe.Fiber._doRun(Fiber.java:546) 
at com.sun.xml.internal.ws.api.pipe.Fiber.doRun(Fiber.java:531) 
at com.sun.xml.internal.ws.api.pipe.Fiber.runSync(Fiber.java:428) 
at com.sun.xml.internal.ws.client.Stub.process(Stub.java:211) 
at com.sun.xml.internal.ws.client.sei.SEIStub.doProcess(SEIStub.java:124) 
at com.sun.xml.internal.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:98) 
at com.sun.xml.internal.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:78) 
at com.sun.xml.internal.ws.client.sei.SEIStub.invoke(SEIStub.java:107) 
at $Proxy30.helloMperks(Unknown Source) 
at HTTPMain.main(HTTPMain.java:25)  

当我通过Java客户端访问.NET Web服务时。

但我可以使用.NET Web客户端访问.NET Web服务,但不会出现任何错误。我该如何解决这个问题?

+0

看到这个链接:http://www.opcfoundation.org/forum/viewtopic.php?p=12524。如果它没有帮助,我建议你生成你的Java客户端使用例如ANT jax-ws ws-import实用程序。我的猜测是netbeans没有正确生成某些东西。 –

回答

0

在尝试了不同风格的webservice客户端生成器之后,我终于使用Apache Axis2作为web服务类生成器,用于连接MS Dynamics 3和4版本(基于.Net框架)。生成器(基于命令行)生成一堆类,我将它们复制到我的Netbeans 6.9项目的src文件夹中,从中进行编译,构建和部署。从那里我遇到的主要困难是:

  • 身份验证/授权部分,前者是ntlm,后者必须在MS Dynamics CRM内配置。
  • 向MS Crm构造肥皂问题的链接实体方法。

有很多库可以使用(ear file = + 40Mb),但事情运行良好。我使用Jdk1.4开始了Weblogic 8项目,现在它运行在带有Jdk1.6的Weblogic 10上。 Regards