asix2eclipse插件生成文件service.xml问题及解决办法.txt
2007-02-15 14:07
615 查看
1 使用axis2 的eclipse插件axis2-eclipse-service-archiver-wizard.zip
生成的XXXXarr.jar中的service.xml文件有问题
它生成的文件内容如下[错误的内容]
- <service name="HappyService">
<description>Please Type your service description here</description>
<parameter name="ServiceClass" locked="false">samples.Happy</parameter>
<excludeOperations>
<operation>sayHappy</operation>
</excludeOperations>
</service>
实际上,正确的情况物应该为
- <service name="HappyService">
<description>Please Type your service description here</description>
<parameter name="ServiceClass" locked="false">samples.Happy</parameter>
<operation name="sayHappy"></operation>
</service>
或
下面代码中的RPCMessageReceiver是为了在tomcat界面上可以生成wsdl
- <service name="HappyService">
<description>Please Type your service description here</description>
<parameter name="ServiceClass" locked="false">samples.Happy</parameter>
<operation name="sayHappy">
<messageReceiver class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" />
</operation>
</service>
***********修改插件方法***********
修改源文件:Axis_Service_Archiver_1.0.0/src/org/apache/axis2/tool/core/ServiceXMLCreater.java
public String toString() {
String serviceXML = "<service name=/"" + serviceName + "/" >/n" +
"<description>/n" +
"Please Type your service description here/n" +
"</description>/n" +
"<parameter name=/"ServiceClass/" locked=/"false/">" + serviceClass + "</parameter>/n";
if (operations.size() > 0) {
serviceXML = serviceXML + "<excludeOperations>/n";
for (int i = 0; i < operations.size(); i++) {
String s = (String) operations.get(i);
String op = "<operation>" + s + "</operation>/n";
serviceXML = serviceXML + op;
}
serviceXML = serviceXML + "</excludeOperations>/n";
}
serviceXML = serviceXML + "</service>/n";
return serviceXML;
}
----------------->
public String toString() {
String serviceXML = "<service name=/"" + serviceName + "/" >/n" +
"<description>/n" +
"Please Type your service description here/n" +
"</description>/n" +
"<parameter name=/"ServiceClass/" locked=/"false/">" + serviceClass + "</parameter>/n";
if (operations.size() > 0) {
//serviceXML = serviceXML + "<excludeOperations>/n";
for (int i = 0; i < operations.size(); i++) {
String s = (String) operations.get(i);
String op = "<operation name=/"" + s + "/"></operation>/n";
serviceXML = serviceXML + op;
}
// serviceXML = serviceXML + "</excludeOperations>/n";
}
serviceXML = serviceXML + "</service>/n";
return serviceXML;
}
写一个build.xml放在Axis_Service_Archiver_1.0.0目录下
执行 ant
build.xml内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<project name="service_archive" default="create_jar" basedir=".">
<!-- set global properties for this build -->
<property name="src" value="./src"/>
<property name="class" value="./class"/>
<property name="lib" value="lib"/>
<target name="init">
<!-- Create the time stamp -->
<tstamp/>
</target>
<target name="compile" depends="init">
<!-- Compile the java code from ${src} into ${class} -->
<javac srcdir="${src}" destdir="${class}">
<classpath>
<fileset dir="${lib}">
<include name="**/*.jar"/>
</fileset>
</classpath>
</javac>
</target>
<target name="create_jar" depends="compile">
<jar destfile="./Axis_Service_Archiver.jar"
basedir="${class}"
/>
</target>
</project>
生成的XXXXarr.jar中的service.xml文件有问题
它生成的文件内容如下[错误的内容]
- <service name="HappyService">
<description>Please Type your service description here</description>
<parameter name="ServiceClass" locked="false">samples.Happy</parameter>
<excludeOperations>
<operation>sayHappy</operation>
</excludeOperations>
</service>
实际上,正确的情况物应该为
- <service name="HappyService">
<description>Please Type your service description here</description>
<parameter name="ServiceClass" locked="false">samples.Happy</parameter>
<operation name="sayHappy"></operation>
</service>
或
下面代码中的RPCMessageReceiver是为了在tomcat界面上可以生成wsdl
- <service name="HappyService">
<description>Please Type your service description here</description>
<parameter name="ServiceClass" locked="false">samples.Happy</parameter>
<operation name="sayHappy">
<messageReceiver class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" />
</operation>
</service>
***********修改插件方法***********
修改源文件:Axis_Service_Archiver_1.0.0/src/org/apache/axis2/tool/core/ServiceXMLCreater.java
public String toString() {
String serviceXML = "<service name=/"" + serviceName + "/" >/n" +
"<description>/n" +
"Please Type your service description here/n" +
"</description>/n" +
"<parameter name=/"ServiceClass/" locked=/"false/">" + serviceClass + "</parameter>/n";
if (operations.size() > 0) {
serviceXML = serviceXML + "<excludeOperations>/n";
for (int i = 0; i < operations.size(); i++) {
String s = (String) operations.get(i);
String op = "<operation>" + s + "</operation>/n";
serviceXML = serviceXML + op;
}
serviceXML = serviceXML + "</excludeOperations>/n";
}
serviceXML = serviceXML + "</service>/n";
return serviceXML;
}
----------------->
public String toString() {
String serviceXML = "<service name=/"" + serviceName + "/" >/n" +
"<description>/n" +
"Please Type your service description here/n" +
"</description>/n" +
"<parameter name=/"ServiceClass/" locked=/"false/">" + serviceClass + "</parameter>/n";
if (operations.size() > 0) {
//serviceXML = serviceXML + "<excludeOperations>/n";
for (int i = 0; i < operations.size(); i++) {
String s = (String) operations.get(i);
String op = "<operation name=/"" + s + "/"></operation>/n";
serviceXML = serviceXML + op;
}
// serviceXML = serviceXML + "</excludeOperations>/n";
}
serviceXML = serviceXML + "</service>/n";
return serviceXML;
}
写一个build.xml放在Axis_Service_Archiver_1.0.0目录下
执行 ant
build.xml内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<project name="service_archive" default="create_jar" basedir=".">
<!-- set global properties for this build -->
<property name="src" value="./src"/>
<property name="class" value="./class"/>
<property name="lib" value="lib"/>
<target name="init">
<!-- Create the time stamp -->
<tstamp/>
</target>
<target name="compile" depends="init">
<!-- Compile the java code from ${src} into ${class} -->
<javac srcdir="${src}" destdir="${class}">
<classpath>
<fileset dir="${lib}">
<include name="**/*.jar"/>
</fileset>
</classpath>
</javac>
</target>
<target name="create_jar" depends="compile">
<jar destfile="./Axis_Service_Archiver.jar"
basedir="${class}"
/>
</target>
</project>
相关文章推荐
- 解决使用Oracle库利用MyBatis配置文件逆向生成的实体类时mapping.xml里有重复的节点问题
- ArcGIS中使用工具后,没有反应,没有结果文件生成的问题解决办法。
- “无法找到xxx.exe的调试信息,或者调试信息不匹配。未调用调试信息生成二进制文件……”问题的解决办法
- R文件不能生成问题解决办法
- 关于IDEA找不到classpath中package内的xml文件问题和解决办法
- InfoPath 生成的XML文件用XPATH查询出错的问题解决(转)
- hibernate tool连接oracle生成pojo和xml文件无法查询表解决办法
- python3.2打开utf8的txt文件时BOM问题的解决办法
- cxfreeze打包工程文件生成.exe,运行exe出现闪退问题,相关解决办法总结
- python3.2打开utf8的txt文件时BOM问题的解决办法
- Android Project from Existing Code 生成 R 文件错误、失败等问题解决办法 - 持续更新
- SQLServer 2008 导入txt文件,中文乱码问题解决办法
- XML布局文件出错问题解决办法
- 问题:Custom tool error: Failed to generate code for the service reference 'AppVot;结果:添加Service Reference, 无法为服务生成代码错误的解决办法
- Maven pom.xml文件引入jar包出现 missing artifact问题解决办法
- android 典型问题:R.java文件不能自动生成的解决办法
- android 典型问题:R.java文件不能自动生成的解决办法
- myeclipse 生成hbm.xml文件时问题的解决
- mysql 数据库的安装与配置 有关msi文件start service 停滞不前的问题及其解决办法
- android 典型问题:R.java文件不能自动生成的解决办法