由JAVA代码生成Axis1.4容器WebService服务!
[size=x-large][color=darkred]通过WTP正常发布WebService服务[/color][/size]
[*]下载Axis1.4,并验证环境!
[*]IDE使用eclipse,并且集成WTP工具!
[*]创建Web工程;
[img]http://watching2008.iteye.com/upload/attachment/113411/58b2220d-a412-3eda-b227-59d5d31bc3e0.jpg[/img]
[*]新建java类ToLowerCase,[b]建议加个包名,否则后面自动生成的wsdd要手工修改[/b]:
[*]WEB工程导入Axis1.4容器依赖包:axis.jar、jaxrpc.jar、saaj.jar、wsdl4j-1.5.1.jar;
[*]通过WTP工具生成WSDL(类型声明"wsdl:types"、消息"wsdl:message"(依赖类型声明)、服务端口声明"wsdl:portType"(包含操作,操作依赖消息)、绑定(服务端口实现)、服务发布)!
[img]http://watching2008.iteye.com/upload/attachment/113415/74b2119f-0857-3a85-906a-b51fc174baf3.jpg[/img]
服务发布成功后:
[img]http://watching2008.iteye.com/upload/attachment/113438/444db501-7db0-3b6c-b220-0ecdac6e076f.jpg[/img]
[size=x-large][color=darkred]通过WTP正常发布WebService服务失败,或者需要生产客户端代码和服务端代码,请继续![/color][/size]
发布服务过程中如果出错,那就不用管它,主要关注生成的wsdl文件,一步一步继续我们的服务发布。
[img]http://watching2008.iteye.com/upload/attachment/113417/d7dba981-ecb4-34d1-ad71-dbb8a1d665b7.jpg[/img]
[*]修改wsdl服务地址,例如:http://localhost:8088/AxisTest/services/ToLowerCase;
[*]在WebContent下创建build.xml,注意设置为上步定义的服务地址;
例如:
根据以上信息,需要设置axis1.4的home;在web工程下增加server_code目录和client_code目录!
[*]生成服务端代码;
执行build.xml,如图:
[img]http://watching2008.iteye.com/upload/attachment/113429/f371212c-8f8a-3fce-b2da-792fd1baa194.jpg[/img]
选择先生成服务端代码,如图:
[img]http://watching2008.iteye.com/upload/attachment/113430/efd353ac-a30a-34f6-903e-3e1104a31b1b.jpg[/img]
[*]同理生成客户端代码;
[*]将生成服务端代码中(server_code目录下)的deploy.wsdd拷贝到build.xml指定的位置"./WEB-INF/ToLowerCaseService/DefaultNamespace/deploy.wsdd"。
[b]注意:最初新建的ToLowerCase类,如果没有包名,需要手工修改服务端代码(server_code目录下)中的wsdd,<parameter name="className" value="DefaultNamespace.ToLowerCaseSoapBindingImpl"/>,value值"ToLowerCase";否则发起服务后无法识别DefaultNamespace![/b]
[*]启动tomcat,发布应用;
[*]再次执行build.xml发布服务,生成server-config.wsdd(此文件一般在运行时tomcat文件夹中,因为tomcat集成到eclipse时一般会单独有个临时目录),拷贝到WEB-INF下,重启tomcat即可;
小结,理解由java代码生成ws服务,axis1.4容器自动化过程:
第一步:创建出ToLowerCase.wsdl,对所要发布服务类进行描述(此过程选择服务描述 样式和编码格式);
第二步:创建deploy.wsdd、undeploy.wsdd,描述所部署的服务(此过程可以创建服务端代码stub)!
第三步:发布服务,创建运行时server-config.wsdd,以后web服务所最终依赖!(服务发布后也可以手工创建客户端代码stub)
[size=x-large][color=darkred]通过WTP正常发布WebService服务[/color][/size]
[*]下载Axis1.4,并验证环境!
[*]IDE使用eclipse,并且集成WTP工具!
[*]创建Web工程;
[img]http://watching2008.iteye.com/upload/attachment/113411/58b2220d-a412-3eda-b227-59d5d31bc3e0.jpg[/img]
[*]新建java类ToLowerCase,[b]建议加个包名,否则后面自动生成的wsdd要手工修改[/b]:
package test;
public class ToLowerCase {
public String getLowerCase(String str) {
return str.toLowerCase();
}
}
[*]WEB工程导入Axis1.4容器依赖包:axis.jar、jaxrpc.jar、saaj.jar、wsdl4j-1.5.1.jar;
[*]通过WTP工具生成WSDL(类型声明"wsdl:types"、消息"wsdl:message"(依赖类型声明)、服务端口声明"wsdl:portType"(包含操作,操作依赖消息)、绑定(服务端口实现)、服务发布)!
[img]http://watching2008.iteye.com/upload/attachment/113415/74b2119f-0857-3a85-906a-b51fc174baf3.jpg[/img]
服务发布成功后:
[img]http://watching2008.iteye.com/upload/attachment/113438/444db501-7db0-3b6c-b220-0ecdac6e076f.jpg[/img]
[size=x-large][color=darkred]通过WTP正常发布WebService服务失败,或者需要生产客户端代码和服务端代码,请继续![/color][/size]
发布服务过程中如果出错,那就不用管它,主要关注生成的wsdl文件,一步一步继续我们的服务发布。
[img]http://watching2008.iteye.com/upload/attachment/113417/d7dba981-ecb4-34d1-ad71-dbb8a1d665b7.jpg[/img]
[*]修改wsdl服务地址,例如:http://localhost:8088/AxisTest/services/ToLowerCase;
[*]在WebContent下创建build.xml,注意设置为上步定义的服务地址;
例如:
<project name="SimpleService">
<property name="axis.home" value="H:/OpenSource/Apache Axis/axis-1_4" />
<property name="server_gen" value="../server_code" />
<property name="client_gen" value="../client_code" />
<path id="axis.classpath">
<fileset dir="${axis.home}/lib">
<include name="**/*.jar" />
</fileset>
</path>
<taskdef resource="axis-tasks.properties" classpathref="axis.classpath" />
<target name="generate-service-stub">
<axis-wsdl2java serverside="true" url="./wsdl/ToLowerCase.wsdl" output="${server_gen}">
</axis-wsdl2java>
</target>
<target name="generate-client-stub">
<axis-wsdl2java url="./wsdl/ToLowerCase.wsdl" output="${client_gen}">
<mapping namespace="http://DefaultNamespace" package="" />
</axis-wsdl2java>
</target>
<target name="deploy">
<axis-admin url="http://localhost:8088/AxisTest/services/ToLowerCase" xmlfile="./WEB-INF/ToLowerCaseService/DefaultNamespace/deploy.wsdd" />
</target>
</project>
根据以上信息,需要设置axis1.4的home;在web工程下增加server_code目录和client_code目录!
[*]生成服务端代码;
执行build.xml,如图:
[img]http://watching2008.iteye.com/upload/attachment/113429/f371212c-8f8a-3fce-b2da-792fd1baa194.jpg[/img]
选择先生成服务端代码,如图:
[img]http://watching2008.iteye.com/upload/attachment/113430/efd353ac-a30a-34f6-903e-3e1104a31b1b.jpg[/img]
[*]同理生成客户端代码;
[*]将生成服务端代码中(server_code目录下)的deploy.wsdd拷贝到build.xml指定的位置"./WEB-INF/ToLowerCaseService/DefaultNamespace/deploy.wsdd"。
[b]注意:最初新建的ToLowerCase类,如果没有包名,需要手工修改服务端代码(server_code目录下)中的wsdd,<parameter name="className" value="DefaultNamespace.ToLowerCaseSoapBindingImpl"/>,value值"ToLowerCase";否则发起服务后无法识别DefaultNamespace![/b]
[*]启动tomcat,发布应用;
[*]再次执行build.xml发布服务,生成server-config.wsdd(此文件一般在运行时tomcat文件夹中,因为tomcat集成到eclipse时一般会单独有个临时目录),拷贝到WEB-INF下,重启tomcat即可;
小结,理解由java代码生成ws服务,axis1.4容器自动化过程:
第一步:创建出ToLowerCase.wsdl,对所要发布服务类进行描述(此过程选择服务描述 样式和编码格式);
第二步:创建deploy.wsdd、undeploy.wsdd,描述所部署的服务(此过程可以创建服务端代码stub)!
第三步:发布服务,创建运行时server-config.wsdd,以后web服务所最终依赖!(服务发布后也可以手工创建客户端代码stub)