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.