`
mzh_2008beijing
  • 浏览: 230383 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

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;

@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>
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics