Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Not A Problem
-
1.3
-
None
-
Windows XP SP2, Java 1.6.0, Tomcat 6.0
Description
I'm having some problems with rampart 1.3. Please, read 3 cases:
First problem is fixed when changing phase order on axis2.xml in Axis2 1.3. This was the first problem:
I'm using basic configuration on client as with 1.2 and policy on server side. Rampart is engaged in both. In server is engaged in service scope and in client at global scope. The exception was:
org.apache.axis2.AxisFault: The org.apache.axis2.AxisFault: A required
header representing a Message Addressing Property is not present
at org.apache.axis2.addressing.AddressingFaultsHelper.triggerAddressingFault(AddressingFaultsHelper.java:355)
at
org.apache.axis2.addressing.AddressingFaultsHelper.triggerMessageAddressingRequiredFault(AddressingFaultsHelper.java:281)
at org.apache.axis2.handlers.addressing.AddressingValidationHandler.checkMessageIDHeader(AddressingValidationHandler.java:168)
at org.apache.axis2.handlers.addressing.AddressingValidationHandler.invoke(AddressingValidationHandler.java:56)
at org.apache.axis2.engine.Phase.invoke(Phase.java:292)
at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:212)
at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:132)
at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:275)
at org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:120)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:261)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:581)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Unknown Source)
header is required when WS-Addressing is in use but was not sent.
at org.apache.axis2.handlers.addressing.AddressingInFaultHandler.invoke(AddressingInFaultHandler.java:114)
at org.apache.axis2.engine.Phase.invoke(Phase.java:292)
at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:212)
at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:132)
at org.apache.axis2.description.OutInAxisOperationClient.handleResponse(OutInAxisOperation.java:336)
at org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:389)
at org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:211)
at org.apache.axis2.client.OperationClient.execute(OperationClient.java:163)
at client.Medici_LinkStub.validate(Medici_LinkStub.java:744)
at client.ClientUtilities.validateTest(ClientUtilities.java:61)
at client.Client.main(Client.java:34)
Second, I removed configuration from client but keeping rampart engaged. In server side the configuration is the same: it expects that some elements in the message would come encrypted or signed. I receive this exception from the service:
org.apache.axis2.AxisFault: java.lang.NullPointerException
at org.apache.axis2.util.Utils.getInboundFaultFromMessageContext(Utils.java:486)
at org.apache.axis2.description.OutInAxisOperationClient.handleResponse(OutInAxisOperation.java:343)
at org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:389)
at org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:211)
at org.apache.axis2.client.OperationClient.execute(OperationClient.java:163)
at client.Medici_LinkStub.validate(Medici_LinkStub.java:744)
at client.ClientUtilities.validateTest(ClientUtilities.java:61)
at client.Client.main(Client.java:34)
Third, I disengage rampart in server side and the first operation I invoke works ok but for subsequent invocations. (I'm using soapsession). I see an exception ocurred in the client:
org.apache.axis2.AxisFault: Error in extracting message properties
at org.apache.rampart.handler.RampartSender.invoke(RampartSender.java:68)
at org.apache.axis2.engine.Phase.invoke(Phase.java:292)
at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:212)
at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:377)
at org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:374)
at org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:211)
at org.apache.axis2.client.OperationClient.execute(OperationClient.java:163)
at client.Medici_LinkStub.getDetailedMonitoringStages(Medici_LinkStub.java:4413)
at client.ClientUtilities.getDetailedMonitoringStagesTest(ClientUtilities.java:356)
at client.Client.main(Client.java:60)
Caused by: org.apache.rampart.RampartException: Error in extracting
message properties
at org.apache.rampart.RampartMessageData.<init>(RampartMessageData.java:293)
at org.apache.rampart.MessageBuilder.build(MessageBuilder.java:58)
at org.apache.rampart.handler.RampartSender.invoke(RampartSender.java:62)
... 9 more
Caused by: org.apache.ws.security.WSSecurityException: Error in
converting SOAP Envelope to Document; nested exception is:
java.lang.ClassCastException:
org.apache.axiom.om.impl.llom.OMElementImpl cannot be cast to org.apache.axiom.soap.SOAPHeaderBlock
at org.apache.rampart.util.Axis2Util.getDocumentFromSOAPEnvelope(Axis2Util.java:157)
at org.apache.rampart.RampartMessageData.<init>(RampartMessageData.java:150)
... 11 more
Caused by: java.lang.ClassCastException:
org.apache.axiom.om.impl.llom.OMElementImpl cannot be cast to org.apache.axiom.soap.SOAPHeaderBlock
at org.apache.rampart.util.Axis2Util.getDocumentFromSOAPEnvelope(Axis2Util.java:107)
... 12 more