使用Axis2快速开发web服务
使用Axis2开发web服务一般有以下三种形式:
1.pojo模式,此方法最为简便,但是也有很多的局限性,最为明显的就是不能有package
step1:编写pojo对象
public class HelloWorld{
public String sayHello(String name){
return "Hello,"+name;
}
}
编译成class文件。
step2:在Tomcat目录/webapps/axis2/WEB-INF/下新建pojo文件夹。
step3:将class文件拷贝到pojo文件夹中。
setp4:启动tomcat,在浏览器中输入:
http://localhost:8080/axis2/services/HelloWorld/sayHello?
param0="ningkun"将会看到,"Hello,ningkun"的消息。
2.如果我们想以pojo的形式发布web服务,并且与package的话,可以使用jar包的形式发
布web服务。
step1:编写java类
AddressService类
package sample;
import javax.jws.WebService;
@WebService
public class AddressService {
public Address getAddress(){
Address address = new Address();
address.setStreet("Street");
address.setNumber("Number 15");
return address;
}
}
Address类
package sample;
public class Address {
private String street;
private String number;
public String getNumber() {
return number;
}
public void setNumber(String number) {
this.number = number;
}
public String getStreet() {
return street;
}
public void setStreet(String street) {
this.street = street;
}
}
step2:修改axis2/WEB-INF/conf/axis2.xml
添加
<deployer extension=".jar" derectory="pojo" locked="false">
HelloWorld
</parameter>
<operation name="sayHello">
<messageReceiver
但是在wsdl定义中是找不到这个属性定义的,有的soap解析会出问题的,这不是标准通用的方式
目前尚未发现,有待进一步研究。
不是吧,正常情况下是可以得到回应的啊。
目前尚未发现,有待进一步研究。
axis2有一个SOAPMonitor,你可以配置好用它查看发送的soap消息
本来我也没注意到这个问题,我是在使用tuscany做客户端调用axis2的pojo服务端的时候,出问题了,死循环导致溢出,后来跟踪eclipse的sdo实现发现到这个问题的,因为这个type属性在wsdl和schema中未定义,所以导致循环解析出错
不是吧,正常情况下是可以得到回应的啊。
我用 .Net WebServiceStudio 2.0 的工具是正常,
但我比好奇的是, 可以使用原作者 所提的方式,在IE的入址Resquest
,真的可以?? 7 楼 点子二木 2008-11-04 难道说还有其他形式吗