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 bpanyarachun <bp...@gmail.com> on 2011/11/02 21:46:22 UTC
[Axis2] upgrading 1.4.1 to 1.6.1. Problems with org.apache.axis2.dispatchers.AddressingBasedDispatcher.java
Hi all,
My current software uses axis2 1.4.1 and I am upgrading it to 1.6.1.
My issue is that while using 1.6.1, whenever I use the axis2 validation or
deploy/undeploy, I receive the error below with the action being
"urn:anonOutInOpResponse".
ERROR: The [action] cannot be processed at the receiver.
org.apache.axis2.AxisFault: The [action] cannot be processed at the
receiver.
at
org.apache.axis2.addressing.AddressingFaultsHelper.triggerAddressingFault(AddressingFaultsHelper.java:373)
at
org.apache.axis2.addressing.AddressingFaultsHelper.triggerActionNotSupportedFault(AddressingFaultsHelper.java:336)
at
org.apache.axis2.dispatchers.AddressingBasedDispatcher.checkAction(AddressingBasedDispatcher.java:156)
at
org.apache.axis2.dispatchers.AddressingBasedDispatcher.invoke(AddressingBasedDispatcher.java:140)
at org.apache.axis2.engine.Phase.invokeHandler(Phase.java:340)
at org.apache.axis2.engine.Phase.invoke(Phase.java:313)
at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:262)
at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:168)
at
org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:182)
at
org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:147)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:185)
at
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:151)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:405)
at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:269)
at
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:515)
at
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:300)
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:897)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:919)
at java.lang.Thread.run(Thread.java:736)
What my concern here is that I noticed in
org.apache.axis2.dispatchers.AddressingBasedDispatcher.java the constant
"IS_ADDR_INFO_ALREADY_PROCESSED" is somehow being set to TRUE when being
checked at line ~121. I have not been able to figure out where this is
happening. I can see that it initially starts as FALSE is
org.apache.axis2.handlers.addressing.AddressingInHandler.java at line 79.
While using axis2 1.4.1, "IS_ADDR_INFO_ALREADY_PROCESSED" always stays
FALSE and I do not get this error.
One solution that I did was to change on line ~125 from
if (JavaUtils.isTrue(msgctx.getProperty(ADDR_VALIDATE_ACTION), true))
to
if (JavaUtils.isTrue(msgctx.getProperty(ADDR_VALIDATE_ACTION), false))
which will not do checkAction(msgctx) since it will default to FALSE.
Both installations are identical except for the axis2 versions. I'm not
sure why there is a change in behavior with axis2 1.6.1. I know I can solve
this issue also by disengaging the addressing module but I'd like to keep
use of addressing since I have been able to in 1.4.1. I'd like to know if
anyone has any idea about the different behavior that I am seeing and if
the solution I have done is acceptable in this situation. Thanks.
Re: [Axis2] upgrading 1.4.1 to 1.6.1. Problems with org.apache.axis2.dispatchers.AddressingBasedDispatcher.java
Posted by Deepal jayasinghe <de...@gmail.com>.
A possible reason would be that you are not sending the SOAP action when
you invoke the service. Could you please check the client code ?
Deepal
> Anybody have any feedback on this?
>
> On Wed, Nov 2, 2011 at 1:46 PM, bpanyarachun <bpanyarachun@gmail.com
> <ma...@gmail.com>> wrote:
>
> Hi all,
>
> My current software uses axis2 1.4.1 and I am upgrading it to 1.6.1.
>
> My issue is that while using 1.6.1, whenever I use the axis2
> validation or deploy/undeploy, I receive the error below with the
> action being "urn:anonOutInOpResponse".
>
> ERROR: The [action] cannot be processed at the receiver.
> org.apache.axis2.AxisFault: The [action] cannot be processed at
> the receiver.
> at
> org.apache.axis2.addressing.AddressingFaultsHelper.triggerAddressingFault(AddressingFaultsHelper.java:373)
> at
> org.apache.axis2.addressing.AddressingFaultsHelper.triggerActionNotSupportedFault(AddressingFaultsHelper.java:336)
> at
> org.apache.axis2.dispatchers.AddressingBasedDispatcher.checkAction(AddressingBasedDispatcher.java:156)
> at
> org.apache.axis2.dispatchers.AddressingBasedDispatcher.invoke(AddressingBasedDispatcher.java:140)
> at org.apache.axis2.engine.Phase.invokeHandler(Phase.java:340)
> at org.apache.axis2.engine.Phase.invoke(Phase.java:313)
> at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:262)
> at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:168)
> at
> org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:182)
> at
> org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:147)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
> at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224)
> at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:185)
> at
> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
> at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:151)
> at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
> at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
> at
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:405)
> at
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:269)
> at
> org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:515)
> at
> org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:300)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:897)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:919)
> at java.lang.Thread.run(Thread.java:736)
>
> What my concern here is that I noticed in
> org.apache.axis2.dispatchers.AddressingBasedDispatcher.java the
> constant "IS_ADDR_INFO_ALREADY_PROCESSED" is somehow being set to
> TRUE when being checked at line ~121. I have not been able to
> figure out where this is happening. I can see that it initially
> starts as FALSE is
> org.apache.axis2.handlers.addressing.AddressingInHandler.java at
> line 79.
>
> While using axis2 1.4.1, "IS_ADDR_INFO_ALREADY_PROCESSED" always
> stays FALSE and I do not get this error.
>
> One solution that I did was to change on line ~125 from
>
> if (JavaUtils.isTrue(msgctx.getProperty(ADDR_VALIDATE_ACTION), true))
>
> to
>
> if (JavaUtils.isTrue(msgctx.getProperty(ADDR_VALIDATE_ACTION), false))
>
> which will not do checkAction(msgctx) since it will default to FALSE.
>
> Both installations are identical except for the axis2 versions.
> I'm not sure why there is a change in behavior with axis2 1.6.1. I
> know I can solve this issue also by disengaging the addressing
> module but I'd like to keep use of addressing since I have been
> able to in 1.4.1. I'd like to know if anyone has any idea about
> the different behavior that I am seeing and if the solution I have
> done is acceptable in this situation. Thanks.
>
>
>
>
>
>
>
Re: [Axis2] upgrading 1.4.1 to 1.6.1. Problems with org.apache.axis2.dispatchers.AddressingBasedDispatcher.java
Posted by bpanyarachun <bp...@gmail.com>.
Anybody have any feedback on this?
On Wed, Nov 2, 2011 at 1:46 PM, bpanyarachun <bp...@gmail.com> wrote:
> Hi all,
>
> My current software uses axis2 1.4.1 and I am upgrading it to 1.6.1.
>
> My issue is that while using 1.6.1, whenever I use the axis2 validation or
> deploy/undeploy, I receive the error below with the action being
> "urn:anonOutInOpResponse".
>
> ERROR: The [action] cannot be processed at the receiver.
> org.apache.axis2.AxisFault: The [action] cannot be processed at the
> receiver.
> at
> org.apache.axis2.addressing.AddressingFaultsHelper.triggerAddressingFault(AddressingFaultsHelper.java:373)
> at
> org.apache.axis2.addressing.AddressingFaultsHelper.triggerActionNotSupportedFault(AddressingFaultsHelper.java:336)
> at
> org.apache.axis2.dispatchers.AddressingBasedDispatcher.checkAction(AddressingBasedDispatcher.java:156)
> at
> org.apache.axis2.dispatchers.AddressingBasedDispatcher.invoke(AddressingBasedDispatcher.java:140)
> at org.apache.axis2.engine.Phase.invokeHandler(Phase.java:340)
> at org.apache.axis2.engine.Phase.invoke(Phase.java:313)
> at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:262)
> at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:168)
> at
> org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:182)
> at
> org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:147)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
> at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224)
> at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:185)
> at
> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
> at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:151)
> at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
> at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
> at
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:405)
> at
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:269)
> at
> org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:515)
> at
> org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:300)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:897)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:919)
> at java.lang.Thread.run(Thread.java:736)
>
> What my concern here is that I noticed in
> org.apache.axis2.dispatchers.AddressingBasedDispatcher.java the constant
> "IS_ADDR_INFO_ALREADY_PROCESSED" is somehow being set to TRUE when being
> checked at line ~121. I have not been able to figure out where this is
> happening. I can see that it initially starts as FALSE is
> org.apache.axis2.handlers.addressing.AddressingInHandler.java at line 79.
>
> While using axis2 1.4.1, "IS_ADDR_INFO_ALREADY_PROCESSED" always stays
> FALSE and I do not get this error.
>
> One solution that I did was to change on line ~125 from
>
> if (JavaUtils.isTrue(msgctx.getProperty(ADDR_VALIDATE_ACTION), true))
>
> to
>
> if (JavaUtils.isTrue(msgctx.getProperty(ADDR_VALIDATE_ACTION), false))
>
> which will not do checkAction(msgctx) since it will default to FALSE.
>
> Both installations are identical except for the axis2 versions. I'm not
> sure why there is a change in behavior with axis2 1.6.1. I know I can solve
> this issue also by disengaging the addressing module but I'd like to keep
> use of addressing since I have been able to in 1.4.1. I'd like to know if
> anyone has any idea about the different behavior that I am seeing and if
> the solution I have done is acceptable in this situation. Thanks.
>
>
>
>
>