那里有很多信息,但我无法弄清楚: 什么是Java对PHP的SoapClient()的答案?
没有多余的装饰,只是想创建一个客户端来访问.wsdl文档描述的方法。
答案 0 :(得分:0)
JAX-WS,大多数appserver供应商都提供实现和工具。
请参阅glassfish了解一个简单的实现。 glassfish guide docs详细说明了如何开发,有很多变化取决于你通常如何进行Java开发。对我来说,我使用IBM工具,因此只需将RAD点作为WSDL加载,然后单击“生成”。
答案 1 :(得分:0)
见question。 Java中有许多Web服务框架可以从WSDL文件生成客户端。 Eclipse有一个插件,可以使用Axis2框架从WSDL文件创建客户端存根。也许对初学者来说这是最简单的选择。
答案 2 :(得分:0)
如果你想要的只是一个从现有的WSDL生成客户端代码的软件,那么你有更多的选择,而不是你可以动摇。我尝试了几个,它们都以同样的方式做同样的事情,它们之间的巨大差异就是文档。对我来说,最好记录的是Apache CXF,它将生成符合JAX-WS的代码,然后您可以将其用于应用程序中的任何JAX-WS库(例如CXF本身或Sun的JAX-WS) -RI等等。
我想象它会比SoapClient更复杂。
答案 3 :(得分:0)
您可以尝试在axis2中使用RCPServiceClient类。
这是它的java文档: ws.apache.org/axis2/1_1_1/api/org/apache/axis2/rpc/client/RPCServiceClient.html
它不需要您生成调用Web服务的代码。
这是一个很好的例子,说明如何使用RPCServiceClient与服务进行交互。
ws.apache.org/axis2/1_2/pojoguide.html#testingpojows
请记住,java是强类型语言,所以你不能做像serviceClient-> someRandomFunction(params)这样的事情,因为如果你试图做像PHP的SoapClient这样的事情,将不会提前定义someRandomFunction。
然而,它将相当于$ soapClient-> _soapCall函数,因为你可以做类似的事情 serviceClient.invokeBlocking( opProcess, - 你试图调用的函数.. opResponseArgs, - 这些是你传递的参数 returnTypes); - 您期待的类型
希望这有帮助。