[ https://issues.apache.org/jira/browse/RAMPART-70?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Ruchith Udayanga Fernando closed RAMPART-70. -------------------------------------------- Resolution: Not A Problem Fix Version/s: 1.6.1 Rampart can encrypt was headers. Verified with version : 1.6.1 > RAMPART Problems on building messages > ------------------------------------- > > Key: RAMPART-70 > URL: https://issues.apache.org/jira/browse/RAMPART-70 > Project: Rampart > Issue Type: Bug > Components: rampart-core > Affects Versions: 1.3 > Environment: Windows XP SP2, Java 1.6.0, Tomcat 6.0 > Reporter: Jorge Fernández > Fix For: 1.6.1 > > Attachments: JIRA70.rar, WebServiceTest.rar > > > 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 -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira --------------------------------------------------------------------- To unsubscribe, e-mail: java-dev-unsubscr...@axis.apache.org For additional commands, e-mail: java-dev-h...@axis.apache.org