首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

XFire 怎么修改WSDL 参数名

2012-12-21 
XFire 如何修改WSDL 参数名WebServices接口的描述文件WSDL中经常出现类似 namein0 的参数配置,如下:xs

XFire 如何修改WSDL 参数名
    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;@WebServicepublic 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>

热点排行