[wsas-java-dev] [jira] Resolved: (WSAS-244) WSAS Clustering: context replication failure with in-only MEP

Afkham Azeez (JIRA) jira at wso2.org
Thu May 24 05:02:02 PDT 2007


     [ http://www.wso2.org/jira/browse/WSAS-244?page=all ]

Afkham Azeez resolved WSAS-244.
-------------------------------

    Fix Version/s: Nightly
       Resolution: Fixed

Fixed. This was due to the adding of the ClusteringPhase after the DispatchPhase in the global InFlow. All phases added after the DispatchPhase in the global InFlow have no effect.

> WSAS Clustering: context replication failure with in-only MEP
> -------------------------------------------------------------
>
>                 Key: WSAS-244
>                 URL: http://www.wso2.org/jira/browse/WSAS-244
>             Project: WSO2 WSAS-Java
>          Issue Type: Bug
>    Affects Versions: Nightly
>         Environment: winxp, jdk15
>            Reporter: Charitha Kankanamge
>         Assigned To: Afkham Azeez
>            Priority: Critical
>             Fix For: Nightly
>
>
> I always get the following exception when invoking a service which includes in-only mep through a cluster with 2 nodes. 
> ERROR [2007-05-24 16:44:25,578]  Exception occurred while trying to invoke service method getResult java.lang.reflect.InvocationTargetException
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:585)
>         at org.apache.axis2.rpc.receivers.RPCMessageReceiver.invokeBusinessLogic(RPCMessageReceiver.java:91)
>         at org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.receive(AbstractInOutSyncMessageReceiver.java:39)
>         at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:143)
>         at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:229)
>         at org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:102)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>         at org.wso2.adminui.AdminUIServletFilter.doFilter(AdminUIServletFilter.java:133)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>         at org.wso2.wsas.transport.RequestRedirectionFilter.doFilter(RequestRedirectionFilter.java:57)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>         at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
>         at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
>         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
>         at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
>         at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
>         at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
>         at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
>         at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:667)
>         at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
>         at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
>         at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
>         at java.lang.Thread.run(Thread.java:595)
> Caused by: java.lang.NullPointerException
>         at mysessionservice.getResult(mysessionservice.java:19)
> Steps to reproduce:
> ================
> 1. Set up a wsas cluster with 2 nodes
> 2. Deploy the following service in those 2 nodes
> public class mysessionservice {
> 	 public void multiply(int x, int y){
> 		 System.out.println("Setting context!!!!!");
> 		 ConfigurationContext configContext =
>              MessageContext.getCurrentMessageContext().getConfigurationContext();
> 		 configContext.setProperty("VALUE", new Integer(x * y));
> 		 
>  }
> 	 	 public int getResult(){
> 		 System.out.println("Getting results!!!!!");
> 		 ConfigurationContext configContext =
>              MessageContext.getCurrentMessageContext().getConfigurationContext();
> 		 
>      return ((Integer) configContext.getProperty("VALUE")).intValue();
> 	 }
> 3. Generate stubs and write a client as follows.
> public class sessionawareclient {
> 	 public static void main(String[] args) throws AxisFault {
> 		
> 		 MysessionservicemysessionserviceSOAP11Port_http1Stub stub1 = new MysessionservicemysessionserviceSOAP11Port_http1Stub("http://10.100.1.244:9762/services/mysessionservice");
> 		 MysessionservicemysessionserviceSOAP11Port_http1Stub.Multiply request = new MysessionservicemysessionserviceSOAP11Port_http1Stub.Multiply();
> 		 request.setX(9);
> 		 request.setY(5);
> 		 try {
> 			stub1.multiply(request);
> 		} catch (RemoteException e1) {
> 			// TODO Auto-generated catch block
> 			e1.printStackTrace();
> 		}
> 		 
> 		try {
> 			Thread.sleep(200);
> 		} catch (InterruptedException e1) {
> 			// TODO Auto-generated catch block
> 			e1.printStackTrace();
> 		}
> 		
> 		 MysessionservicemysessionserviceSOAP11Port_http1Stub stub2 = new MysessionservicemysessionserviceSOAP11Port_http1Stub("http://10.100.1.58:9762/services/mysessionservice");
> 		 try {
> 			 System.out.println("Getting results from node2");
> 			 MysessionservicemysessionserviceSOAP11Port_http1Stub.GetResultResponse res = stub2.getResult();
> 			 System.out.println(res.get_return());
> 		} catch (RemoteException e) {
> 			// TODO Auto-generated catch block
> 			e.printStackTrace();
> 		}
> 	 }
> }
> 4. Run the client

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://www.wso2.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        




More information about the Wsas-java-dev mailing list