打开某个地址后,页面是这样子的
And now... Some Services RequestCoSupply (wsdl)
transRequestCoSupply
MonSale (wsdl)
getMonSale
PurchConsult (wsdl)
transMonPurchSupply
transHalfYearPurchSupply
transYearPurchSupply 点击wsdl会产生wsdl文件,我想问,这个wsdl怎么产生的,还有客户端怎么用这个wsdl文件
And now... Some Services RequestCoSupply (wsdl)
transRequestCoSupply
MonSale (wsdl)
getMonSale
PurchConsult (wsdl)
transMonPurchSupply
transHalfYearPurchSupply
transYearPurchSupply 点击wsdl会产生wsdl文件,我想问,这个wsdl怎么产生的,还有客户端怎么用这个wsdl文件
一个WEBSERVICE服务发布后,访问它的URL,显示出来的就是这个WSDL,它描述了这个WS,比如用了什么类,里面有什么方法,传递什么样的参数,返回什么样的结果.
这些简单的WS知识点,去搜搜就知道了.
wsdl我们都不用关心它是怎么生成的,你只要知道客户端怎么调用就行
记得服务器端创建一个WEB SERVICE以后 会有一个SOAP协议WSDL的地址把, 客户端想使用这个的话创建WEB SERVICE CLIENT时根据这个地址在客户端生成相应的类 然后客户端直接调用这个客户端的类就可以访问到服务器端的类了
<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions name="TestService"
targetNamespace="http://www.example.org/TestService/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:tns="http://www.example.org/TestService/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<wsdl:types>
<xsd:schema targetNamespace="http://www.example.org/TestService/">
<xsd:element name="TestServiceReq">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="in" type="tns:TestServiceReq" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="TestServiceResp">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="out" type="tns:TestServiceResp" />
</xsd:sequence>
</xsd:complexType>
</xsd:element> <xsd:complexType name="TestServiceReq">
<xsd:sequence>
<xsd:element name="ReqID" type="xsd:string"></xsd:element>
<xsd:element name="ReqName" type="xsd:string"></xsd:element>
</xsd:sequence>
</xsd:complexType> <xsd:complexType name="TestServiceResp">
<xsd:sequence>
<xsd:element name="RespID" type="xsd:string"></xsd:element>
<xsd:element name="RespContent" type="xsd:string"></xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:schema>
</wsdl:types>
<wsdl:message name="NewOperationRequest">
<wsdl:part element="tns:TestServiceReq" name="parameters" />
</wsdl:message>
<wsdl:message name="NewOperationResponse">
<wsdl:part element="tns:TestServiceResp" name="parameters" />
</wsdl:message>
<wsdl:portType name="TestService">
<wsdl:operation name="NewOperation">
<wsdl:input message="tns:NewOperationRequest" />
<wsdl:output message="tns:NewOperationResponse" />
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="TestServiceSOAP" type="tns:TestService">
<soap:binding style="document"
transport="http://schemas.xmlsoap.org/soap/http" />
<wsdl:operation name="NewOperation">
<soap:operation soapAction="http://www.example.org/TestService/NewOperation" />
<wsdl:input>
<soap:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="TestService">
<wsdl:port binding="tns:TestServiceSOAP" name="TestServiceSOAP">
<soap:address location="http://www.example.org/TestService" />
</wsdl:port>
</wsdl:service>
</wsdl:definitions>客户端应该怎么调用呢?
还有服务端产生wsdl文件时根据什么产生的,我那上面是随便设计的一个。
1:先把那个wsdl的内容复制下来,好像你上面的内容,保存为"接口名.wsdl"。
2:编写客户端的代码:
String wsdl = "ClientService.wsdl"; // 对应的WSDL文件
Resource resource = new ClassPathResource(wsdl);
Client client = new Client(resource.getInputStream(), null); // 根据WSDL创建客户实例
Object[] objArray = new Object[1];
objArray[0] = "test"; // 调用特定的Web Service方法
Object[] results = client.invoke("TestServiceReq", objArray);
System.out.println("result: " + results[0]);
1.wsdl
2.通过接口这两种我都用过,不过我还是用第二种
IM(权限管理系统)和应用系统之间通过WebService接口来完成信息同步
如果我要修改用户,那么
应用系统需要提供该用户在应用系统中具有的角色列表的WebServices,IM通过URL获取角色列表的XML,应用管理员对用户对应的角色进行修改并保存之后, IM通过调用应用系统的WebServices实现在应用系统内对该用户的信息进行修改。作为应用系统就是要做的就是提供一个WebServices,然后供IM调用?
那么应用系统中的角色列表的XML怎么产生的,IM怎么在获取角色列表的XML
如果只是想要知道怎么用就去google一下"java xfire webservice"
毕竟论坛里面大家没办法给你上课