WebService(五)Axis2发布多个WS

使用版本:

eclipse:eclipse-jee-kepler-R-win32.zip
JDK:jdk-7u25-windows-i586.exe j2sdk1.4.2_06.rar
Myeclipse:myeclipse-8.5.0-win32.exe
Tomcat:apache-tomcat-7.0.42-windows-x86.zip apache-tomcat-5.0.12.zip
Axis2:axis2-1.6.2-bin.zip axis2-1.6.2-war.zip axis2-eclipse-codegen-plugin-1.6.2.zip axis2-eclipse-service-plugin-1.6.2.zip
Axis1:axis-1.4.rar
WebLogic:oepe-indigo-installer-12.1.1.0.1.201203120349-12.1.1-win32.exe
Spring:spring-framework-3.1.1.RELEASE-with-docs.zip
Hibernate:hibernate-distribution-3.6.10.Final-dist.zip
Structs2;struts-2.3.15.1-all.zip
SVN:eclipse-svnplugin(subclipse site-1.6.2)
Oracle9i:Oracle 9i Disk1.iso Oracle 9i Disk2.iso Oracle 9i Disk3.iso

用《SSH序列(三)WebService(Axis2+POJO+wsdl2java)》实现Web Service,虽然可以将POJO类放在axis2\WEB-INF\pojo目录中直接发布成Web Service,这样做不需要进行任何配置,但这些POJO类不能在任何包中。这似乎有些不方便,为此,Axis2也允许将带包的POJO类发布成Web Service。

一、发布一个WS

1.1 编写服务类

package com.service1;

public class MyService1 {
	public String getGreeting(String name) {
		return "您好 " + name;
	}

	public void update(String data) {
		System.out.println("<" + data + ">已经更新");
	}
}

编写services.xml文件

<service name="myService">     
	<description>         
		Web Service例子     
	</description>      
	<parameter name="ServiceClass">         
		com.service1.MyService1       
	</parameter>     
	<messageReceivers>          
		<messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-out"             
			class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" />         
	<messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-only"             
			class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver" />     
	</messageReceivers> 
</service>

1.2 生成及发布aar文件

二、发布多个WS

2.1 编写服务类

package com.service2;

public class MyService2 {
	public String getName() {
		return "bill";
	}
}

编辑services.xml文件

<serviceGroup>
	<service name="myService1">
		<description>
			Web Service例子
		</description>
		<parameter name="ServiceClass">
			com.service1.MyService1
		</parameter>
		<messageReceivers>
			<messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-out"
				class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" />
			<messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-only"
				class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver" />
		</messageReceivers>
	</service>
	<service name="myService2">
		<description>
			Web Service例子
		</description>
		<parameter name="ServiceClass">
			com.service2.MyService2
		</parameter>
		<messageReceivers>
			<messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-out"
				class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" />
			<messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-only"
				class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver" />
		</messageReceivers>
	</service>
</serviceGroup>

2.2 生成及发布aar文件

发表回复