package com.test.session;
import org.apache.axis2.context.MessageContext;
import org.apache.axis2.context.ServiceContext;
public class LoginService {
public boolean login(String username, String password)
{
if("xiewenbo".equals(username) && "xiewenbo".equals(password)) {
// 第1步:设置key-value对
MessageContext mc = MessageContext.getCurrentMessageContext();
ServiceContext sc = mc.getServiceContext();
sc.setProperty("login", "成功登录");
return true;
}
else {
return false;
}
}
public String getLoginMsg() {
// 第1步:获得key-value对中的value
MessageContext mc = MessageContext.getCurrentMessageContext();
ServiceContext sc = mc.getServiceContext();
System.out.println((String)sc.getProperty("login"));
return (String)sc.getProperty("login");
}
public boolean loginname(String username){
MessageContext mc = MessageContext.getCurrentMessageContext();
ServiceContext sc = mc.getServiceContext();
sc.setProperty("login",username);
return true;
}
public String getLoginmsg(){
MessageContext mc = MessageContext.getCurrentMessageContext();
ServiceContext sc = mc.getServiceContext();
System.out.println((String)sc.getProperty("login"));
return (String)sc.getProperty("login");
}
}
Client1:
public class Client {
public static void main(String args[])throws Exception{
LoginStub stub = new LoginStub();
Loginname loginname = new Loginname();
loginname.setUsername("nicholas");
stub.loginname(loginname);
System.out.println(stub.loginname(loginname));
GetLoginmsg msg = new GetLoginmsg ();
while(true){
Thread.sleep(2000);
System.out.println(stub.getLoginmsg(msg).get_return());
}
}
}
Client2:
public class Client {
public static void main(String args[])throws Exception{
LoginStub stub = new LoginStub();
Loginname loginname = new Loginname();
loginname.setUsername("xiewenbo");
stub.loginname(loginname);
System.out.println(stub.loginname(loginname));
GetLoginmsg msg = new GetLoginmsg ();
while(true){
Thread.sleep(2000);
System.out.println(stub.getLoginmsg(msg).get_return());
}
}
}
public LoginStub(org.apache.axis2.context.ConfigurationContext configurationContext,
java.lang.String targetEndpoint, boolean useSeparateListener)
throws org.apache.axis2.AxisFault {
//To populate AxisService
populateAxisService();
populateFaults();
_serviceClient = new org.apache.axis2.client.ServiceClient(configurationContext,_service);
configurationContext = _serviceClient.getServiceContext().getConfigurationContext();
_serviceClient.getOptions().setTo(new org.apache.axis2.addressing.EndpointReference(
targetEndpoint));
_serviceClient.getOptions().setUseSeparateListener(useSeparateListener);
//Set the soap version
_serviceClient.getOptions().setSoapVersionURI(org.apache.axiom.soap.SOAP12Constants.SOAP_ENVELOPE_NAMESPACE_URI);
_serviceClient.getOptions().setManageSession(true);
}