You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by "Matthias Weber (JIRA)" <ji...@apache.org> on 2008/06/27 16:24:45 UTC

[jira] Created: (AXIS2-3876) first SSL POST request to AxisServlet with transportsession scope leads to NPE in DispatchPhase.fillContextsFromSessionContext

first SSL POST request to AxisServlet with transportsession scope leads to NPE in DispatchPhase.fillContextsFromSessionContext
------------------------------------------------------------------------------------------------------------------------------

                 Key: AXIS2-3876
                 URL: https://issues.apache.org/jira/browse/AXIS2-3876
             Project: Axis 2.0 (Axis2)
          Issue Type: Bug
          Components: transports
    Affects Versions: 1.4
         Environment: WLS8.1, AIX
            Reporter: Matthias Weber
            Priority: Critical


We use Axis 1.4 in an WLS 8.1 environment. There are no TransportReceivers registered in axis2.xml.

After server start or redeploy it is impossible to get an answer to a POST request via SSL. We see following exception:

@|27.06.2008 11:01:53|ERROR|org.apache.axis2.transport.http.AxisServlet|
java.lang.NullPointerException
        at org.apache.axis2.engine.DispatchPhase.fillContextsFromSessionContext(DispatchPhase.java:229)
        at org.apache.axis2.engine.DispatchPhase.loadContexts(DispatchPhase.java:158)
        at org.apache.axis2.engine.DispatchPhase.checkPostConditions(DispatchPhase.java:97)
        at org.apache.axis2.engine.Phase.invoke(Phase.java:333)
        at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:264)
        at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:163)
        at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:275)
        at org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:131)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:854)
        at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:1077)
        at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:465)
        at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:349)
        at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:7047)
        at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
        at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
        at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3902)
        at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2773)
        at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:224)
        at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:183)

After the first sent GET there is no problem anymore.

The NPE is thrown here:

TransportListener listener = msgContext.getTransportIn().getReceiver();

Seems that msgContext.getTransportIn() returns null. 

Maybe this is because AxisServlet only resisters itself as TransportListener for HTTP scheme. From AxisServlet.init(ServletConfig config):

TransportInDescription transportInDescription = new TransportInDescription(Constants.TRANSPORT_HTTP);
transportInDescription.setReceiver(this);
listenerManager.addListener(transportInDescription, true); 

Would it be possible to register AxisServlet here also for HTTPS?

A GET request never fails because doGet() does an agent.initTransportListener(request); but doPost() never does.

I know, there was already an Jira issue AXIS2-3141 which addresses the same thing. But the attached patch seems to be only a workaround.


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org


[jira] Reopened: (AXIS2-3876) first SSL POST request to AxisServlet with transportsession scope leads to NPE in DispatchPhase.fillContextsFromSessionContext

Posted by "Matthias Weber (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/AXIS2-3876?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Matthias Weber reopened AXIS2-3876:
-----------------------------------


I had a look to trunk AxisServlet.java today. The registration for HTTPS scheme is still missing:

TransportInDescription transportInDescription = new TransportInDescription(
                    Constants.TRANSPORT_HTTP);
            transportInDescription.setReceiver(this);
            listenerManager.addListener(transportInDescription, true);

We need this to be added:

+            transportInDescription = new TransportInDescription(
+              Constants.TRANSPORT_HTTPS);
+            transportInDescription.setReceiver(this);
+            listenerManager.addListener(transportInDescription, true); 

Regards,
Matthias


> first SSL POST request to AxisServlet with transportsession scope leads to NPE in DispatchPhase.fillContextsFromSessionContext
> ------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: AXIS2-3876
>                 URL: https://issues.apache.org/jira/browse/AXIS2-3876
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>          Components: transports
>    Affects Versions: 1.5, 1.4.1, 1.4
>         Environment: WLS8.1, AIX
>            Reporter: Matthias Weber
>            Priority: Critical
>         Attachments: AxisServlet.patch
>
>
> We use Axis 1.4 in an WLS 8.1 environment. There are no TransportReceivers registered in axis2.xml.
> After server start or redeploy it is impossible to get an answer to a POST request via SSL. We see following exception:
> @|27.06.2008 11:01:53|ERROR|org.apache.axis2.transport.http.AxisServlet|
> java.lang.NullPointerException
>         at org.apache.axis2.engine.DispatchPhase.fillContextsFromSessionContext(DispatchPhase.java:229)
>         at org.apache.axis2.engine.DispatchPhase.loadContexts(DispatchPhase.java:158)
>         at org.apache.axis2.engine.DispatchPhase.checkPostConditions(DispatchPhase.java:97)
>         at org.apache.axis2.engine.Phase.invoke(Phase.java:333)
>         at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:264)
>         at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:163)
>         at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:275)
>         at org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:131)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:854)
>         at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:1077)
>         at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:465)
>         at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:349)
>         at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:7047)
>         at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
>         at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
>         at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3902)
>         at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2773)
>         at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:224)
>         at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:183)
> After the first sent GET there is no problem anymore.
> The NPE is thrown here:
> TransportListener listener = msgContext.getTransportIn().getReceiver();
> Seems that msgContext.getTransportIn() returns null. 
> Maybe this is because AxisServlet only resisters itself as TransportListener for HTTP scheme. From AxisServlet.init(ServletConfig config):
> TransportInDescription transportInDescription = new TransportInDescription(Constants.TRANSPORT_HTTP);
> transportInDescription.setReceiver(this);
> listenerManager.addListener(transportInDescription, true); 
> Would it be possible to register AxisServlet here also for HTTPS?
> A GET request never fails because doGet() does an agent.initTransportListener(request); but doPost() never does.
> I know, there was already an Jira issue AXIS2-3141 which addresses the same thing. But the attached patch seems to be only a workaround.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (AXIS2-3876) first SSL POST request to AxisServlet with transportsession scope leads to NPE in DispatchPhase.fillContextsFromSessionContext

Posted by "Matthias Weber (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/AXIS2-3876?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Matthias Weber updated AXIS2-3876:
----------------------------------

    Attachment: AxisServlet.patch

> first SSL POST request to AxisServlet with transportsession scope leads to NPE in DispatchPhase.fillContextsFromSessionContext
> ------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: AXIS2-3876
>                 URL: https://issues.apache.org/jira/browse/AXIS2-3876
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>          Components: transports
>    Affects Versions: 1.4
>         Environment: WLS8.1, AIX
>            Reporter: Matthias Weber
>            Priority: Critical
>         Attachments: AxisServlet.patch
>
>
> We use Axis 1.4 in an WLS 8.1 environment. There are no TransportReceivers registered in axis2.xml.
> After server start or redeploy it is impossible to get an answer to a POST request via SSL. We see following exception:
> @|27.06.2008 11:01:53|ERROR|org.apache.axis2.transport.http.AxisServlet|
> java.lang.NullPointerException
>         at org.apache.axis2.engine.DispatchPhase.fillContextsFromSessionContext(DispatchPhase.java:229)
>         at org.apache.axis2.engine.DispatchPhase.loadContexts(DispatchPhase.java:158)
>         at org.apache.axis2.engine.DispatchPhase.checkPostConditions(DispatchPhase.java:97)
>         at org.apache.axis2.engine.Phase.invoke(Phase.java:333)
>         at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:264)
>         at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:163)
>         at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:275)
>         at org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:131)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:854)
>         at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:1077)
>         at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:465)
>         at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:349)
>         at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:7047)
>         at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
>         at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
>         at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3902)
>         at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2773)
>         at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:224)
>         at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:183)
> After the first sent GET there is no problem anymore.
> The NPE is thrown here:
> TransportListener listener = msgContext.getTransportIn().getReceiver();
> Seems that msgContext.getTransportIn() returns null. 
> Maybe this is because AxisServlet only resisters itself as TransportListener for HTTP scheme. From AxisServlet.init(ServletConfig config):
> TransportInDescription transportInDescription = new TransportInDescription(Constants.TRANSPORT_HTTP);
> transportInDescription.setReceiver(this);
> listenerManager.addListener(transportInDescription, true); 
> Would it be possible to register AxisServlet here also for HTTPS?
> A GET request never fails because doGet() does an agent.initTransportListener(request); but doPost() never does.
> I know, there was already an Jira issue AXIS2-3141 which addresses the same thing. But the attached patch seems to be only a workaround.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org


[jira] Commented: (AXIS2-3876) first SSL POST request to AxisServlet with transportsession scope leads to NPE in DispatchPhase.fillContextsFromSessionContext

Posted by "Andreas Veithen (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/AXIS2-3876?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12732934#action_12732934 ] 

Andreas Veithen commented on AXIS2-3876:
----------------------------------------

Matthias,

The suggested fix will probably work for you, but I don't believe it is correct. It would cause Axis2 to generate WSDLs with HTTPS endpoints even if the servlet container has no HTTPS connector.

> first SSL POST request to AxisServlet with transportsession scope leads to NPE in DispatchPhase.fillContextsFromSessionContext
> ------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: AXIS2-3876
>                 URL: https://issues.apache.org/jira/browse/AXIS2-3876
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>          Components: transports
>    Affects Versions: 1.5, 1.4.1, 1.4
>         Environment: WLS8.1, AIX
>            Reporter: Matthias Weber
>            Priority: Critical
>         Attachments: AxisServlet.patch
>
>
> We use Axis 1.4 in an WLS 8.1 environment. There are no TransportReceivers registered in axis2.xml.
> After server start or redeploy it is impossible to get an answer to a POST request via SSL. We see following exception:
> @|27.06.2008 11:01:53|ERROR|org.apache.axis2.transport.http.AxisServlet|
> java.lang.NullPointerException
>         at org.apache.axis2.engine.DispatchPhase.fillContextsFromSessionContext(DispatchPhase.java:229)
>         at org.apache.axis2.engine.DispatchPhase.loadContexts(DispatchPhase.java:158)
>         at org.apache.axis2.engine.DispatchPhase.checkPostConditions(DispatchPhase.java:97)
>         at org.apache.axis2.engine.Phase.invoke(Phase.java:333)
>         at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:264)
>         at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:163)
>         at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:275)
>         at org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:131)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:854)
>         at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:1077)
>         at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:465)
>         at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:349)
>         at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:7047)
>         at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
>         at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
>         at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3902)
>         at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2773)
>         at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:224)
>         at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:183)
> After the first sent GET there is no problem anymore.
> The NPE is thrown here:
> TransportListener listener = msgContext.getTransportIn().getReceiver();
> Seems that msgContext.getTransportIn() returns null. 
> Maybe this is because AxisServlet only resisters itself as TransportListener for HTTP scheme. From AxisServlet.init(ServletConfig config):
> TransportInDescription transportInDescription = new TransportInDescription(Constants.TRANSPORT_HTTP);
> transportInDescription.setReceiver(this);
> listenerManager.addListener(transportInDescription, true); 
> Would it be possible to register AxisServlet here also for HTTPS?
> A GET request never fails because doGet() does an agent.initTransportListener(request); but doPost() never does.
> I know, there was already an Jira issue AXIS2-3141 which addresses the same thing. But the attached patch seems to be only a workaround.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Resolved: (AXIS2-3876) first SSL POST request to AxisServlet with transportsession scope leads to NPE in DispatchPhase.fillContextsFromSessionContext

Posted by "Deepal Jayasinghe (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/AXIS2-3876?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Deepal Jayasinghe resolved AXIS2-3876.
--------------------------------------

    Resolution: Fixed

Thank you very much for the patch, I just checked the code. As I can see your patch is already checked in.

Deepal

> first SSL POST request to AxisServlet with transportsession scope leads to NPE in DispatchPhase.fillContextsFromSessionContext
> ------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: AXIS2-3876
>                 URL: https://issues.apache.org/jira/browse/AXIS2-3876
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>          Components: transports
>    Affects Versions: 1.4
>         Environment: WLS8.1, AIX
>            Reporter: Matthias Weber
>            Priority: Critical
>         Attachments: AxisServlet.patch
>
>
> We use Axis 1.4 in an WLS 8.1 environment. There are no TransportReceivers registered in axis2.xml.
> After server start or redeploy it is impossible to get an answer to a POST request via SSL. We see following exception:
> @|27.06.2008 11:01:53|ERROR|org.apache.axis2.transport.http.AxisServlet|
> java.lang.NullPointerException
>         at org.apache.axis2.engine.DispatchPhase.fillContextsFromSessionContext(DispatchPhase.java:229)
>         at org.apache.axis2.engine.DispatchPhase.loadContexts(DispatchPhase.java:158)
>         at org.apache.axis2.engine.DispatchPhase.checkPostConditions(DispatchPhase.java:97)
>         at org.apache.axis2.engine.Phase.invoke(Phase.java:333)
>         at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:264)
>         at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:163)
>         at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:275)
>         at org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:131)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:854)
>         at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:1077)
>         at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:465)
>         at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:349)
>         at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:7047)
>         at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
>         at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
>         at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3902)
>         at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2773)
>         at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:224)
>         at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:183)
> After the first sent GET there is no problem anymore.
> The NPE is thrown here:
> TransportListener listener = msgContext.getTransportIn().getReceiver();
> Seems that msgContext.getTransportIn() returns null. 
> Maybe this is because AxisServlet only resisters itself as TransportListener for HTTP scheme. From AxisServlet.init(ServletConfig config):
> TransportInDescription transportInDescription = new TransportInDescription(Constants.TRANSPORT_HTTP);
> transportInDescription.setReceiver(this);
> listenerManager.addListener(transportInDescription, true); 
> Would it be possible to register AxisServlet here also for HTTPS?
> A GET request never fails because doGet() does an agent.initTransportListener(request); but doPost() never does.
> I know, there was already an Jira issue AXIS2-3141 which addresses the same thing. But the attached patch seems to be only a workaround.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (AXIS2-3876) first SSL POST request to AxisServlet with transportsession scope leads to NPE in DispatchPhase.fillContextsFromSessionContext

Posted by "Matthias Weber (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/AXIS2-3876?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12609205#action_12609205 ] 

Matthias Weber commented on AXIS2-3876:
---------------------------------------

Registering AxisServlet as TransportListener for HTTPS in AxisServlet.init fixed this error. Attached a patch.

> first SSL POST request to AxisServlet with transportsession scope leads to NPE in DispatchPhase.fillContextsFromSessionContext
> ------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: AXIS2-3876
>                 URL: https://issues.apache.org/jira/browse/AXIS2-3876
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>          Components: transports
>    Affects Versions: 1.4
>         Environment: WLS8.1, AIX
>            Reporter: Matthias Weber
>            Priority: Critical
>         Attachments: AxisServlet.patch
>
>
> We use Axis 1.4 in an WLS 8.1 environment. There are no TransportReceivers registered in axis2.xml.
> After server start or redeploy it is impossible to get an answer to a POST request via SSL. We see following exception:
> @|27.06.2008 11:01:53|ERROR|org.apache.axis2.transport.http.AxisServlet|
> java.lang.NullPointerException
>         at org.apache.axis2.engine.DispatchPhase.fillContextsFromSessionContext(DispatchPhase.java:229)
>         at org.apache.axis2.engine.DispatchPhase.loadContexts(DispatchPhase.java:158)
>         at org.apache.axis2.engine.DispatchPhase.checkPostConditions(DispatchPhase.java:97)
>         at org.apache.axis2.engine.Phase.invoke(Phase.java:333)
>         at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:264)
>         at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:163)
>         at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:275)
>         at org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:131)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:854)
>         at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:1077)
>         at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:465)
>         at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:349)
>         at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:7047)
>         at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
>         at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
>         at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3902)
>         at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2773)
>         at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:224)
>         at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:183)
> After the first sent GET there is no problem anymore.
> The NPE is thrown here:
> TransportListener listener = msgContext.getTransportIn().getReceiver();
> Seems that msgContext.getTransportIn() returns null. 
> Maybe this is because AxisServlet only resisters itself as TransportListener for HTTP scheme. From AxisServlet.init(ServletConfig config):
> TransportInDescription transportInDescription = new TransportInDescription(Constants.TRANSPORT_HTTP);
> transportInDescription.setReceiver(this);
> listenerManager.addListener(transportInDescription, true); 
> Would it be possible to register AxisServlet here also for HTTPS?
> A GET request never fails because doGet() does an agent.initTransportListener(request); but doPost() never does.
> I know, there was already an Jira issue AXIS2-3141 which addresses the same thing. But the attached patch seems to be only a workaround.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org


[jira] Commented: (AXIS2-3876) first SSL POST request to AxisServlet with transportsession scope leads to NPE in DispatchPhase.fillContextsFromSessionContext

Posted by "Matthias Weber (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/AXIS2-3876?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12733152#action_12733152 ] 

Matthias Weber commented on AXIS2-3876:
---------------------------------------

Andreas,

I see that I'm not deep enough into Axis2.

Would a call to agent.initTransportListener(request); in AxisServlet.doPost be better? Do you have any other solutions?

Regards,
Matthias




> first SSL POST request to AxisServlet with transportsession scope leads to NPE in DispatchPhase.fillContextsFromSessionContext
> ------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: AXIS2-3876
>                 URL: https://issues.apache.org/jira/browse/AXIS2-3876
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>          Components: transports
>    Affects Versions: 1.5, 1.4.1, 1.4
>         Environment: WLS8.1, AIX
>            Reporter: Matthias Weber
>            Priority: Critical
>         Attachments: AxisServlet.patch
>
>
> We use Axis 1.4 in an WLS 8.1 environment. There are no TransportReceivers registered in axis2.xml.
> After server start or redeploy it is impossible to get an answer to a POST request via SSL. We see following exception:
> @|27.06.2008 11:01:53|ERROR|org.apache.axis2.transport.http.AxisServlet|
> java.lang.NullPointerException
>         at org.apache.axis2.engine.DispatchPhase.fillContextsFromSessionContext(DispatchPhase.java:229)
>         at org.apache.axis2.engine.DispatchPhase.loadContexts(DispatchPhase.java:158)
>         at org.apache.axis2.engine.DispatchPhase.checkPostConditions(DispatchPhase.java:97)
>         at org.apache.axis2.engine.Phase.invoke(Phase.java:333)
>         at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:264)
>         at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:163)
>         at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:275)
>         at org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:131)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:854)
>         at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:1077)
>         at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:465)
>         at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:349)
>         at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:7047)
>         at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
>         at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
>         at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3902)
>         at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2773)
>         at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:224)
>         at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:183)
> After the first sent GET there is no problem anymore.
> The NPE is thrown here:
> TransportListener listener = msgContext.getTransportIn().getReceiver();
> Seems that msgContext.getTransportIn() returns null. 
> Maybe this is because AxisServlet only resisters itself as TransportListener for HTTP scheme. From AxisServlet.init(ServletConfig config):
> TransportInDescription transportInDescription = new TransportInDescription(Constants.TRANSPORT_HTTP);
> transportInDescription.setReceiver(this);
> listenerManager.addListener(transportInDescription, true); 
> Would it be possible to register AxisServlet here also for HTTPS?
> A GET request never fails because doGet() does an agent.initTransportListener(request); but doPost() never does.
> I know, there was already an Jira issue AXIS2-3141 which addresses the same thing. But the attached patch seems to be only a workaround.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Resolved: (AXIS2-3876) first SSL POST request to AxisServlet with transportsession scope leads to NPE in DispatchPhase.fillContextsFromSessionContext

Posted by "Andreas Veithen (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/AXIS2-3876?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Andreas Veithen resolved AXIS2-3876.
------------------------------------

       Resolution: Fixed
    Fix Version/s: 1.6

This should be fixed by the changes in AXIS2-4465.

> first SSL POST request to AxisServlet with transportsession scope leads to NPE in DispatchPhase.fillContextsFromSessionContext
> ------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: AXIS2-3876
>                 URL: https://issues.apache.org/jira/browse/AXIS2-3876
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>          Components: transports
>    Affects Versions: 1.5, 1.4.1, 1.4
>         Environment: WLS8.1, AIX
>            Reporter: Matthias Weber
>            Priority: Critical
>             Fix For: 1.6
>
>         Attachments: AxisServlet.patch
>
>
> We use Axis 1.4 in an WLS 8.1 environment. There are no TransportReceivers registered in axis2.xml.
> After server start or redeploy it is impossible to get an answer to a POST request via SSL. We see following exception:
> @|27.06.2008 11:01:53|ERROR|org.apache.axis2.transport.http.AxisServlet|
> java.lang.NullPointerException
>         at org.apache.axis2.engine.DispatchPhase.fillContextsFromSessionContext(DispatchPhase.java:229)
>         at org.apache.axis2.engine.DispatchPhase.loadContexts(DispatchPhase.java:158)
>         at org.apache.axis2.engine.DispatchPhase.checkPostConditions(DispatchPhase.java:97)
>         at org.apache.axis2.engine.Phase.invoke(Phase.java:333)
>         at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:264)
>         at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:163)
>         at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:275)
>         at org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:131)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:854)
>         at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:1077)
>         at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:465)
>         at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:349)
>         at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:7047)
>         at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
>         at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
>         at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3902)
>         at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2773)
>         at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:224)
>         at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:183)
> After the first sent GET there is no problem anymore.
> The NPE is thrown here:
> TransportListener listener = msgContext.getTransportIn().getReceiver();
> Seems that msgContext.getTransportIn() returns null. 
> Maybe this is because AxisServlet only resisters itself as TransportListener for HTTP scheme. From AxisServlet.init(ServletConfig config):
> TransportInDescription transportInDescription = new TransportInDescription(Constants.TRANSPORT_HTTP);
> transportInDescription.setReceiver(this);
> listenerManager.addListener(transportInDescription, true); 
> Would it be possible to register AxisServlet here also for HTTPS?
> A GET request never fails because doGet() does an agent.initTransportListener(request); but doPost() never does.
> I know, there was already an Jira issue AXIS2-3141 which addresses the same thing. But the attached patch seems to be only a workaround.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (AXIS2-3876) first SSL POST request to AxisServlet with transportsession scope leads to NPE in DispatchPhase.fillContextsFromSessionContext

Posted by "Matthias Weber (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/AXIS2-3876?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Matthias Weber updated AXIS2-3876:
----------------------------------

    Affects Version/s: 1.5
                       1.4.1

> first SSL POST request to AxisServlet with transportsession scope leads to NPE in DispatchPhase.fillContextsFromSessionContext
> ------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: AXIS2-3876
>                 URL: https://issues.apache.org/jira/browse/AXIS2-3876
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>          Components: transports
>    Affects Versions: 1.5, 1.4.1, 1.4
>         Environment: WLS8.1, AIX
>            Reporter: Matthias Weber
>            Priority: Critical
>         Attachments: AxisServlet.patch
>
>
> We use Axis 1.4 in an WLS 8.1 environment. There are no TransportReceivers registered in axis2.xml.
> After server start or redeploy it is impossible to get an answer to a POST request via SSL. We see following exception:
> @|27.06.2008 11:01:53|ERROR|org.apache.axis2.transport.http.AxisServlet|
> java.lang.NullPointerException
>         at org.apache.axis2.engine.DispatchPhase.fillContextsFromSessionContext(DispatchPhase.java:229)
>         at org.apache.axis2.engine.DispatchPhase.loadContexts(DispatchPhase.java:158)
>         at org.apache.axis2.engine.DispatchPhase.checkPostConditions(DispatchPhase.java:97)
>         at org.apache.axis2.engine.Phase.invoke(Phase.java:333)
>         at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:264)
>         at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:163)
>         at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:275)
>         at org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:131)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:854)
>         at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:1077)
>         at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:465)
>         at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:349)
>         at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:7047)
>         at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
>         at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
>         at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3902)
>         at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2773)
>         at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:224)
>         at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:183)
> After the first sent GET there is no problem anymore.
> The NPE is thrown here:
> TransportListener listener = msgContext.getTransportIn().getReceiver();
> Seems that msgContext.getTransportIn() returns null. 
> Maybe this is because AxisServlet only resisters itself as TransportListener for HTTP scheme. From AxisServlet.init(ServletConfig config):
> TransportInDescription transportInDescription = new TransportInDescription(Constants.TRANSPORT_HTTP);
> transportInDescription.setReceiver(this);
> listenerManager.addListener(transportInDescription, true); 
> Would it be possible to register AxisServlet here also for HTTPS?
> A GET request never fails because doGet() does an agent.initTransportListener(request); but doPost() never does.
> I know, there was already an Jira issue AXIS2-3141 which addresses the same thing. But the attached patch seems to be only a workaround.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.