在此之前,我想让您知道我已经可以连接到Web服务服务器了.我问这个问题是因为我希望深入了解wsimport生成的客户端是如何工作的.根据我的研究,wsimport使用JAXWS.请注意,我不了解JAXWS.
我使用wsimport生成了我的客户端.我使用的WSDL来自Axis2 Web服务,由Axis2自动生成.下面的类是wsimport的结果:
下 com.datamodel.xsd
DataBeanRequest.java
DataBeanResponse.java
ObjectFactory.java
package-info.java
下 com.service
MyWebService.java
MyWebServicePortType.java
MyMethod.java
MyMethodResponse.java
ObjectFactory.java
package-info.java
使用上面的类,我可以告诉它com.datamodel.xsd
包含Web服务服务器使用的bean(不包括ObjectFactory
和package-info
).同时,MyMethod
和MyMethodResponse
也用于设置的web服务方法/操作的请求和响应参数豆.
以下是我的问题:(如果你不知道我的一些问题的答案,你真的不必回答所有问题.:)请随时分享你认为我可能会觉得有用的任何信息.)
我是否正确
MyWebService
,它包含一个注释,指的是我用来生成客户端的WSDL的绝对位置.wsdllocation
在客户端中指定的相关性是什么?客户如何使用该信息?wsimport
命令有一个wsdllocation
属性,其中wsdllocation
可以指定值.)我正在尝试用Java创建一个Web服务客户端.我不知道该怎么做.这是WSDL的URL:https://testservices.gatewayedi.com/PayerList/payerlist.asmx?wsdl
这是WSDL:
<wsdl:definitions xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:tns="https://ws.gatewayedi.com/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" targetNamespace="https://ws.gatewayedi.com/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
<wsdl:types>
<s:schema elementFormDefault="qualified" targetNamespace="https://ws.gatewayedi.com/">
<s:element name="Ping">
<s:complexType />
</s:element>
<s:element name="PingResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="PingResult" type="s:string" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="AuthSOAPHeader" type="tns:AuthSOAPHeader" />
<s:complexType name="AuthSOAPHeader">
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="User" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="Password" type="s:string" />
</s:sequence>
<s:anyAttribute />
</s:complexType>
<s:element name="GetXMLPayerList">
<s:complexType />
</s:element>
<s:element name="GetXMLPayerListResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="GetXMLPayerListResult" type="s:string" />
</s:sequence>
</s:complexType>
</s:element>
<s:element …
Run Code Online (Sandbox Code Playgroud) 我必须生成一个WS客户端,我无法决定使用哪个插件.到目前为止,我的选择是:jaxb2-maven-plugin,axistools-maven-plugin和jaxws-maven-plugin.
我目前使用的是Apache Axis.但是我在Intellij IDEA中创建了一个新项目,我可以选择添加以下内容之一:
我选择Axis因为它是我习惯的那个,但我仍然想知道它是否更容易.
我是Web服务的新手.我正在尝试编写一个Java独立客户端,它可以从Web服务获得响应.
我尝试搜索SO和谷歌,但现在我更加困惑.以下是我经历过的广泛链接.
我有一个网址:http://api.something.com/remote/wsdl/SomeEncryptedText
我也有一个SOAP请求:
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
<soap12:Body>
<AuthUsername>someName@someWhere.com</AuthUsername>
<AuthPassword>mypassword</AuthPassword>
<Sid>12121</Sid>
<DynamicProductFeedsRequest xmlns="http://api.something.com/remote/SomeEncryptedText">
</DynamicProductFeedsRequest>
</soap12:Body>
</soap12:Envelope>
Run Code Online (Sandbox Code Playgroud)
有了这个,我如何编写一个独立的Java客户端,我想在稍后阶段与某些Web应用程序集成?
从前面提到的资源看,有很多软件可供选择:SoapUI,WSDL2Java,Apache Axis,Maven插件,JAX-WS,Apache CXF.
我在上面提到的一个SO答案中使用了http://www.soapclient.com/soaptest.html,我可以在浏览器上获得一个完美的html/xml文件.
现在我很困惑我应该使用哪个软件?由于我在SOA中不了解任何内容,因此链接中的信息很少,我无法彼此关联.
有谁能告诉我编写一个独立的Java客户端的高级步骤,它接收WSDL URL和SOAP请求并给我输出它?
如果我错过了任何信息,请告诉我.
我实际上正在开发一个网站项目.我是网络服务的新手.我有4年的面向对象编程经验(java,c#,...).我已经阅读了很多关于Web服务的内容,但我的文档都没有告诉我们如何使用所有技术来制作真正的Web服务项目.
我想要做的是:1.在Java中使用与JPA映射的MySQL后端; 2.使用Web服务来呈现一些功能...(JBoss,...有很多可能性,我不知道应该选择哪个)3.创建一个动态Web项目(可能在Jsp中保持Java透视图) )使用HTML,Javascript,jQuery,...向最终用户呈现Web服务数据...
如果您可以帮助我提供文档,链接或实际项目实施示例,那么它将非常受欢迎.
谢谢