了解用于axis2 / c的Java2Wsdl的用法

时间:2013-07-30 10:54:16

标签: web-services maven-2 installation axis2 axis2c

我遇到安装Java2Wsdl工具的问题。

我已成功创建和编译(从.java文件生成.class文件)一个简单的Java类,位于目录/ home / user / examples / com / mycompany / app中。 在那里我编译我的SimpleClass,所以,我有两个文件:SimpleClass.java&一个SimpleClass.class。

接下来,我在我的ubuntu系统上安装了axis2 / c

$ echo $AXIS2C_HOME
/usr/local/axis2c

我也安装了axis2 / java

echo $AXIS2_HOME
/opt/axis2-1.6.2

我还从this链接java2wsdl插件下载,解压缩并安装。

这是bin目录的样子。 username@usernamePC:/opt/axis2-1.6.2/bin$ ls
axis2.bat axis2server.sh java2wsdl.bat setenv.sh wsdl2java.sh axis2server.bat axis2.sh java2wsdl.sh wsdl2java.bat

现在,我想将我的初始项目从java转换为带有java2wsdl的wsdl,但我无法理解我应该放入的目录的正确位置,如果我有正确的classpath(?)和什么是正确的命令转换发生。

我正在尝试这样的事情:
Java2WSDL.sh -cn com.mycompany.app.SimpleClass 在这里我放.而不是/,我在顶级目录中输入,即com目录。

你可以帮我解决这个问题吗? 我很抱歉这个问题很长,但我需要把所有事情都搞定。

my-app是通过this指南使用简单的maven项目(maven 2.2.1)构建的。

1 个答案:

答案 0 :(得分:2)

您应该从build/classes目录开始代码生成。 该目录必须包含comMETA-INF子目录。

生成WSDL的示例:

# compile your project using ant or mvn
ant
# go to binary dir
cd build/classes
# check SimpleClass.class is here
ls com/mycompany/app/SimpleClass.class
# generate WSDL into current directory
$AXIS2_HOME/bin/java2wsdl.sh -cn com.mycompany.app.SimpleClass
# see generated WSDL
cat SimpleClass.wsdl

要将WSDL生成到不同的目录,请将-o <directory>切换到wsdl2java.sh脚本的命令行。