WebServices接口的描述文件WSDL中经常出现类似 name="in0" 的参数配置,如下:
<xsd:element maxOccurs="1" minOccurs="1" name="in0" nillable="true" type="xsd:string" />
<xsd:element maxOccurs="1" minOccurs="1" name="in1" nillable="true" type="xsd:string" />
<xsd:element maxOccurs="1" minOccurs="1" name="in2" nillable="true" type="xsd:string" />
这样对于客户端来说太不方便了,可读性很差,只能对着接口文档才知道每个参数的名字。那么,如何让这些不友好的名称改成友好的参数名呢?如:name="callTime"。实现步骤如下:
第一步、JSR181注解配置(也称:annotation方式),对webservice接口类进行注解:
package com.metarnet.webservice;
import javax.jws.WebMethod;
import javax.jws.WebParam;
import javax.jws.WebResult;
import javax.jws.WebService;
@WebService
public interface IAlarmSwitchService {
@WebMethod
@WebResult(name="resultMsg")
public String transferAlarm(@WebParam(name="serSupplier")String serSupplier,
@WebParam(name="serCaller")String serCaller,
@WebParam(name="callerPwd")String callerPwd,
@WebParam(name="callTime")String callTime,
@WebParam(name="opDetail")String opDetail);
}
第二步、services.xml文件配置
<?xml version="1.0" encoding="UTF-8"?>
<beans>
<service xmlns="http://xfire.codehaus.org/config/1.0">
<name>AlarmSwitchService</name>
<serviceClass>
com.metarnet.webservice.IAlarmSwitchService
</serviceClass>
<implementationClass>
com.metarnet.webservice.AlarmSwitchServiceImpl
</implementationClass>
<serviceFactory>jsr181</serviceFactory><!--这个必须配置,否则还是显示in0...-->
</service>
</beans>
第三步、至此,配置步骤已完成,查看效果:
<xsd:complexType>
<xsd:sequence>
<xsd:element maxOccurs="1" minOccurs="1" name="serSupplier" type="xsd:string"/>
<xsd:element maxOccurs="1" minOccurs="1" name="serCaller" type="xsd:string"/>
<xsd:element maxOccurs="1" minOccurs="1" name="callerPwd" type="xsd:string"/>
<xsd:element maxOccurs="1" minOccurs="1" name="callTime" type="xsd:string"/>
<xsd:element maxOccurs="1" minOccurs="1" name="opDetail" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
分享到:
相关推荐
xfire根据WSDL生成客户端代码.rar
xfire 插件 wsdl生成 工作的地方不能上网更新 xfire 插件 wsdl生成 工作的地方不能上网更新
xfire webservice wsdl 文件中字段名称变化
其他common相关的包请自己从配置; 具体如何使用xfire发布webservice服务以及如何通过xfire调用webservice接口在很多网站都有介绍,这里就不说明了。
WebService经典24篇网文汇总,包含axis2_Xfire搭建_WSDL详解_自动生成客户端和WSDL等,自己找了好久的内容; 都是自己学习过程中网络的知识,找了很久,里边有一些自己的标记,如果发现chm内容是空白,注意看一下,其实是...
以下四个类调用了XmlSchema-1.1.jar包 因与cxf包xmlschema-core-*.jar 冲突 故重新打包 XmlSchema-1.1.jar 源码修改原类径的方法来重新打包避免冲突 ... org.codehaus.xfire.wsdl11.parser.XmlSchemaURIResolver
org.codehaus.xfire.wsdl11.parser.SchemaInfo org.codehaus.xfire.wsdl11.parser.WSDLServiceBuilder org.codehaus.xfire.wsdl11.parser.WSDLServiceConfigurator org.codehaus.xfire.wsdl11.parser....
org.codehaus.xfire.wsdl11.parser.SchemaInfo org.codehaus.xfire.wsdl11.parser.WSDLServiceBuilder org.codehaus.xfire.wsdl11.parser.WSDLServiceConfigurator org.codehaus.xfire.wsdl11.parser....
org.codehaus.xfire.wsdl11.parser.SchemaInfo org.codehaus.xfire.wsdl11.parser.WSDLServiceBuilder org.codehaus.xfire.wsdl11.parser.WSDLServiceConfigurator org.codehaus.xfire.wsdl11.parser....
此程序demo详细描述的从发布接口到调用接口的全部过程,详细描述了Xfire调用webservice参数无法传递的问题。
org.codehaus.xfire.wsdl11.parser.SchemaInfo org.codehaus.xfire.wsdl11.parser.WSDLServiceBuilder org.codehaus.xfire.wsdl11.parser.WSDLServiceConfigurator org.codehaus.xfire.wsdl11.parser....
此程序demo详细描述的从发布接口到调用接口的全部过程,详细描述了Xfire调用webservice参数无法传递的问题。
xfire 使用外部类、返回collection及输入数组参数示例
cxf_axis_xfire客户端调用的几种方法.docx
java webservice AXIS,XFire , CXF介绍,包含简单的CFX例子,对于初步接触、入门有帮助。
手动编写,利用xfire jar自动生成 wsdl,部署到tomcat等应用服务器,进而请求发布webservices
wsdl4j-1.5.2.jar wstx-asl-3.0.1.jar xfire-aegis-1.2.2.jar xfire-annotations-1.2.2.jar xfire-core-1.2.2.jar xfire-java5-1.2.2.jar xfire-jsr181-api-1.0-M1.jar xfire-spring-1.2.2.jar xfire-xmlbeans-1.2.2...
进行WebService开发中所用到的xfire所有相关包如:xfire-jsr181-api-1.0-M1.jar、xfire-jaxws-1.2.6.jar、xfire-java5-1.2.6.jar、xfire-core-1.2.6.jar、xfire-annotations-1.2.6.jar、xfire-aegis-1.2.6.jar、...
xfire客户端jar包以及一个Demo样板 Demo样板不能直接使用,因为和每个人调用的wsdl直接相关。 请修改后使用!
从网上看到xfire的例子不少,大多都是只返回一个string就拉到,往往与实际情况有天壤之别.这个小实例有server和client的代码,server直接用myeclipse导入,然后添加spring2.0 aop和core,xfire1.2即可.client也是...