Service Code
package net.tianyu.sample.axis2.service;
import java.text.SimpleDateFormat;
import java.util.Calendar;
public class ClockService {
public String getClock(String userName) {
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
return userName + dateFormat.format(Calendar.getInstance().getTime());
}
}
Client Code
package net.tianyu.sample.axis2.client;
import javax.xml.namespace.QName;
import org.apache.axis2.AxisFault;
import org.apache.axis2.addressing.EndpointReference;
import org.apache.axis2.client.Options;
import org.apache.axis2.rpc.client.RPCServiceClient;
public class ClockClient {
@SuppressWarnings("unchecked")
public static void main(String[] args1) throws AxisFault {
RPCServiceClient serviceClient = new RPCServiceClient();
Options options = serviceClient.getOptions();
EndpointReference targetEPR = new EndpointReference("http://localhost:8080/axis2/services/ClockService");
options.setTo(targetEPR);
// Set Parameter
QName opGetClock = new QName("http://service.axis2.sample.tianyu.net", "getClock");
Object[] opGetClockArgs = new Object[] { "TianYu" };
Class[] returnTypes = new Class[] { String.class };
// Call Service
Object[] response = serviceClient.invokeBlocking(opGetClock, opGetClockArgs, returnTypes);
// Get Result
String result = (String) response[0];
if (result == null) {
System.out.println("Weather didn't initialize!");
} else {
System.out.println(result);
}
}
}
services.xml
<service name="ClockService" scope="application"> <description> Stock Quote Sample Service </description> <messageReceivers> <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-only" class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver" /> <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-out" class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" /> </messageReceivers> <parameter name="ServiceClass"> net.tianyu.sample.axis2.service.ClockService </parameter> </service>
client jar list
2009/08/17 16:46 245,780 axiom-api-1.2.8.jar
2009/08/17 16:46 161,377 axiom-dom-1.2.8.jar
2009/08/17 16:46 131,352 axiom-impl-1.2.8.jar
2009/08/17 16:36 777,095 axis2-adb-1.5.jar
2009/08/17 16:31 995,501 axis2-kernel-1.5.jar
2009/08/17 16:50 144,687 axis2-transport-http-1.5.jar
2009/08/17 16:50 10,836 axis2-transport-local-1.5.jar
2009/08/17 16:53 46,725 commons-codec-1.3.jar
2009/08/17 16:51 305,001 commons-httpclient-3.1.jar
2009/08/17 16:47 60,686 commons-logging-1.1.1.jar
2009/08/17 16:53 172,914 httpcore-4.0.jar
2009/08/17 16:51 388,826 mail-1.4.jar
2009/08/17 16:50 32,900 neethi-2.0.4.jar
2009/08/17 16:47 148,429 wsdl4j-1.6.2.jar
2009/08/17 16:50 143,145 XmlSchema-1.4.3.jar