近期在做多个数据库应用交互系统,其中数据交互采用了webservice的方式,说到webservice项目中不得不用到xfire这个框架,有了它我们几乎不用写代码,就可以很快速的创建自己的webservice
但在使用的过程中遇到一些小细节上的问题:
就是在写webservice接口的时候,通常大家都会定义一些方法的参数,但是根据xfire的xsd文件描述情况来看,它的参数命名通常是in0,in1等等,一次类推,很不友好。
按照XFire-Spring生成的WSDL文档中接口参数名极不友好:
<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" />
<xsd:element maxOccurs="1" minOccurs="1" name="in3" nillable="true" type="xsd:string" />
大家都知道,作为一个合格的程序员,在写代码的时候方法参数命名什么的要尽量做到见名知意,显然他这种风格是不适合我们的。因此我们要创新,这就有了下文。
如何自动将in0与in1替换成友好的参数名称呢 ?
方法如下:
1.在与接口类同一包下面建一个接口类名称.aegis.xml 的文件,内容如下
<?xml version="1.0" encoding="UTF-8"?>
<mappings>
<mapping>
<method name="settleMessage">
<parameter index="0" mappedName="id" />
<parameter index="1" mappedName="username" />
<parameter index="2" mappedName="pass" />
</method>
</mapping>
</mappings>
注意:
name为接口中方法名称
index为方法中第一个参数
mappedName为替换后的名称
该XML文件的位置一定要与你定义的webservice的接口位于同一个目录(包下)否则不起作用
分享到:
相关推荐
xfire 插件 wsdl生成 工作的地方不能上网更新 xfire 插件 wsdl生成 工作的地方不能上网更新
xfire根据WSDL生成客户端代码.rar
xfire webservice wsdl 文件中字段名称变化
其他common相关的包请自己从配置; 具体如何使用xfire发布webservice服务以及如何通过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....
WebService经典24篇网文汇总,包含axis2_Xfire搭建_WSDL详解_自动生成客户端和WSDL等,自己找了好久的内容; 都是自己学习过程中网络的知识,找了很久,里边有一些自己的标记,如果发现chm内容是空白,注意看一下,其实是...
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....
以下四个类调用了XmlSchema-1.1.jar包 因与cxf包xmlschema-core-*.jar 冲突 故重新打包 XmlSchema-1.1.jar 源码修改原类径的方法来重新打包避免冲突 ... org.codehaus.xfire.wsdl11.parser.XmlSchemaURIResolver
此程序demo详细描述的从发布接口到调用接口的全部过程,详细描述了Xfire调用webservice参数无法传递的问题。
此程序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....
cxf_axis_xfire客户端调用的几种方法.docx
xfire 使用外部类、返回collection及输入数组参数示例
手动编写,利用xfire jar自动生成 wsdl,部署到tomcat等应用服务器,进而请求发布webservices
java webservice AXIS,XFire , CXF介绍,包含简单的CFX例子,对于初步接触、入门有帮助。
进行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、...
spring+xfire集成解决方案spring+xfire集成解决方案
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...
XFire中实现WS-SecurityXFire中实现WS-SecurityXFire中实现WS-Security