[ 
https://issues.apache.org/jira/browse/RAMPART-24?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ruchith Udayanga Fernando resolved RAMPART-24.
----------------------------------------------

    Resolution: Fixed

Axis2 was updated to fix this issue with the ADB changes

> Axis2: Security phase (Rampart) alters response
> -----------------------------------------------
>
>                 Key: RAMPART-24
>                 URL: https://issues.apache.org/jira/browse/RAMPART-24
>             Project: Rampart
>          Issue Type: Bug
>         Environment: Windows XP, Tomcat 5.5 & WebSphere 5.1
>            Reporter: Torben Riis
>
> I have registered a strange behaviour with Axis2 1.1.1 and rampart 1.1. It 
> seams like rampart alters the soap body response.
> Below are two soap response messages, taken with soapUI. One with Rampart 
> enabled and one without. As you can see the elements in 
> RetrieveFolderURIResponse isn't the same.
> Response without Rampart
> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/";>
>    <soapenv:Header/>
>    <soapenv:Body>
>       <ns2:RetrieveFolderURIResponse 
> xmlns:ns2="http://www.multi-support.com/URIService/types";>
>          <myUrl>www.mrtg.org</myUrl>
>          <uri>www.google.com</uri>
>          <some>mytest</some>
>       </ns2:RetrieveFolderURIResponse>
>    </soapenv:Body>
> </soapenv:Envelope>
> Response with rampart enabled
> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/";>
>    <soapenv:Header/>
>    <soapenv:Body>
>       <ns2:RetrieveFolderURIResponse 
> xmlns:ns2="http://www.multi-support.com/URIService/types";>
>          <myUrl>www.mrtg.org</myUrl>
>          <ns1:URI 
> xmlns:ns1="http://www.multi-support.com/xsd/matypes";>www.google.com</ns1:URI>
>          <ns2:MyTest>mytest</ns2:MyTest>
>       </ns2:RetrieveFolderURIResponse>
>    </soapenv:Body>
> </soapenv:Envelope>
> If we look at the definition in the wsdl, it looks like element types from 
> RetrieveFolderURIResponse is used as element name
> in the response when rampart is enabled. But only for types referring to 
> simple and complex types.
> URIService.wsdl
> <?xml version="1.0" encoding="UTF-8"?>
> <wsdl:definitions name="URIService"
>       xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/";
>       xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/";
>       targetNamespace="http://www.multi-support.com/URIService/";
>       xmlns:ma="http://www.multi-support.com/URIService/types";
>       xmlns:mau="http://www.multi-support.com/URIService/";
>       xmlns:mat="http://www.multi-support.com/xsd/matypes";
>       xmlns:xsd="http://www.w3.org/2001/XMLSchema";>
>       <wsdl:types>
>               <xsd:schema
>                       
> targetNamespace="http://www.multi-support.com/URIService/types";
>                       xmlns:xsd="http://www.w3.org/2001/XMLSchema";>
>                       <xsd:import
>                               
> namespace="http://www.multi-support.com/xsd/matypes";
>                               schemaLocation="maTypes.xsd" />
>                       <xsd:simpleType name="MyTest">
>                               <xsd:restriction 
> base="xsd:string"></xsd:restriction>
>                       </xsd:simpleType>
>                       <xsd:element name="RetrieveFolderURIRequest"
>                               nillable="false">
>                               <xsd:annotation>
>                                       <xsd:documentation>
>                                               Input parameter is an element 
> consisting of the
>                                               following elements: &lt;br&gt;
>                                               Archive - Identification of 
> Archive. &lt;br&gt;
>                                               Folder - Archive folder path 
> for folder where
>                                               items are filed in 
> MultiArchive. &lt;br&gt;
>                                       </xsd:documentation>
>                               </xsd:annotation>
>                               <xsd:complexType>
>                                       <xsd:sequence minOccurs="1" 
> maxOccurs="1">
>                                               <xsd:element name="archive"
>                                                       type="mat:ArchiveName" 
> nillable="false" maxOccurs="1"
>                                                       minOccurs="1">
>                                               </xsd:element>
>                                               <xsd:element name="folder"
>                                                       
> type="mat:FilingFolderPath" maxOccurs="1" minOccurs="1">
>                                               </xsd:element>
>                                       </xsd:sequence>
>                               </xsd:complexType>
>                       </xsd:element>
>                       <xsd:element name="RetrieveFolderURIResponse">
>                               <xsd:complexType>
>                                       <xsd:sequence>
>                                               <xsd:element name="myUrl" 
> type="xsd:string" />
>                                               <xsd:element name="uri" 
> type="mat:URI"/>
>                                               <xsd:element name="some" 
> type="ma:MyTest"/>
>                                       </xsd:sequence>
>                               </xsd:complexType>
>                       </xsd:element>
>                       <xsd:element name="RetrieveFolderURIFault">
>                               <xsd:annotation>
>                                       <xsd:documentation>
>                                               RetrieveFolderURIException is 
> fault thrown when
>                                               some error has occured during 
> execution of web
>                                               service. &lt;br&gt; Error code 
> and message can
>                                               be resolved from fault.
>                                       </xsd:documentation>
>                               </xsd:annotation>
>                               <xsd:complexType>
>                                       <xsd:sequence>
>                                               <xsd:element name="reasonCode" 
> type="xsd:int">
>                                                       <xsd:annotation>
>                                                               
> <xsd:documentation>
>                                                                       Error 
> code, identifying type of
>                                                                       error 
> when generating a URI for an
>                                                                       archive 
> folder.
>                                                               
> </xsd:documentation>
>                                                       </xsd:annotation>
>                                               </xsd:element>
>                                               <xsd:element name="description"
>                                                       type="xsd:string">
>                                                       <xsd:annotation>
>                                                               
> <xsd:documentation>
>                                                                       
> Description of the error code.
>                                                               
> </xsd:documentation>
>                                                       </xsd:annotation>
>                                               </xsd:element>
>                                       </xsd:sequence>
>                               </xsd:complexType>
>                       </xsd:element>
>               </xsd:schema>
>       </wsdl:types>
>       <wsdl:message name="RetrieveFolderURIResponse">
>               <wsdl:documentation>
>                       Output parameter is the generated uri for the 
> MultiArchive
>                       archive folder.
>               </wsdl:documentation>
>               <wsdl:part element="ma:RetrieveFolderURIResponse"
>                       name="RetrieveFolderURIResponse">
>                       <wsdl:documentation>
>                               Element containing generated folder uri.
>                       </wsdl:documentation>
>               </wsdl:part>
>       </wsdl:message>
>       <wsdl:message name="RetrieveFolderURIRequest">
>               <wsdl:documentation>
>                       Input parameter is an element consisting of an element
>                       containing archive and archive folder path.
>               </wsdl:documentation>
>               <wsdl:part element="ma:RetrieveFolderURIRequest"
>                       name="RetrieveFolderURIRequest">
>                       <wsdl:documentation>
>                               Input parameter is an element consisting of the
>                               following elements: &lt;br&gt; Archive - 
> Identification
>                               of Archive. &lt;br&gt; Archive folder path. 
> &lt;br&gt;
>                       </wsdl:documentation>
>               </wsdl:part>
>       </wsdl:message>
>       <wsdl:message name="RetrieveFolderURIFault">
>               <wsdl:documentation>
>                       RetrieveFolderURIFault is returned when some error has
>                       occurred during generation of folder uri.
>               </wsdl:documentation>
>               <wsdl:part name="RetrieveFolderURIFault"
>                       element="ma:RetrieveFolderURIFault">
>                       <wsdl:documentation>
>                               RetrieveFolderURIFault is fault thrown when 
> some error
>                               has occurred during execution of web service. 
> &lt;br&gt;
>                               Error code and message can be resolved from 
> fault.
>                       </wsdl:documentation>
>               </wsdl:part>
>       </wsdl:message>
>       <wsdl:portType name="URIService">
>               <wsdl:documentation>
>                       SOAP Web Service for generation of URI's for specific
>                       MultiArchive components.
>               </wsdl:documentation>
>               <wsdl:operation name="retrieveFolderURI">
>                       <wsdl:documentation>
>                               The invocation of retrieveFolderURI generates 
> given
>                               archive folder path, a URI which can be used to 
> invoke
>                               that that folder in MultiArchive.
>                       </wsdl:documentation>
>                       <wsdl:input message="mau:RetrieveFolderURIRequest">
>                               <wsdl:documentation></wsdl:documentation>
>                       </wsdl:input>
>                       <wsdl:output message="mau:RetrieveFolderURIResponse" />
>                       <wsdl:fault name="RetrieveFolderURIFault"
>                               message="mau:RetrieveFolderURIFault">
>                       </wsdl:fault>
>               </wsdl:operation>
>       </wsdl:portType>
>       <wsdl:binding name="URIServiceSOAP" type="mau:URIService">
>               <wsdl:documentation>
>                       SOAP binding for the MultiArchive Component URI 
> generation
>                       service.
>               </wsdl:documentation>
>               <soap:binding style="document"
>                       transport="http://schemas.xmlsoap.org/soap/http"; />
>               <wsdl:operation name="retrieveFolderURI">
>                       <wsdl:documentation>
>                               Use retrieveFolderURI to generate a uri, which 
> can be
>                               used for accessing a specific archive folder in
>                               MultiArchive.
>                       </wsdl:documentation>
>                       <soap:operation soapAction="retrieveFolderURI" />
>                       <wsdl:input>
>                               <soap:body use="literal" />
>                       </wsdl:input>
>                       <wsdl:output>
>                               <soap:body use="literal" />
>                       </wsdl:output>
>                       <wsdl:fault name="RetrieveFolderURIFault">
>                               <soap:fault name="RetrieveFolderURIFault" 
> use="literal" />
>                       </wsdl:fault>
>               </wsdl:operation>
>       </wsdl:binding>
>       <wsdl:service name="URIService">
>               <wsdl:documentation>
>                       SOAP Web Service for generation of URI's for specific
>                       MultiArchive Component.
>               </wsdl:documentation>
>               <wsdl:port binding="mau:URIServiceSOAP" name="URIServicePort">
>                       <wsdl:documentation>
>                               SOAP Web Service for generation of URI's for 
> specific
>                               MultiArchive Component.
>                       </wsdl:documentation>
>                       <soap:address
>                               
> location="http://www.multi-support.com/multiarchive/services"; />
>               </wsdl:port>
>       </wsdl:service>
> </wsdl:definitions>
> maTypes.xsd
> <?xml version="1.0" encoding="UTF-8"?>
> <!-- Change Log -->
> <!-- 24.10.2006 Multi-Support R&D A/S XSD Developed. -->
>  
> <xsd:schema targetNamespace="http://www.multi-support.com/xsd/matypes";
>       elementFormDefault="qualified" version="1.0"
>       xmlns:xsd="http://www.w3.org/2001/XMLSchema";
>       xmlns:mat="http://www.multi-support.com/xsd/matypes";>
>     <xsd:annotation>
>       <xsd:documentation>This Schema contains definitions for common types 
> used by MultiArchive Web Services.</xsd:documentation>
>     </xsd:annotation>
>     
>     <xsd:simpleType name="ArchiveName">
>               <xsd:annotation>
>                       <xsd:documentation>
>                               Identification of an archive in MultiArchive.
>                       </xsd:documentation>
>               </xsd:annotation>
>               <xsd:restriction base="xsd:string">
>                       <xsd:minLength value="1"></xsd:minLength>
>                       <xsd:maxLength value="5"></xsd:maxLength>
>               </xsd:restriction>
>       </xsd:simpleType>
>       <xsd:simpleType name="FilingFolderPath">
>               <xsd:annotation>
>                       <xsd:documentation>
>                               Folder path for MultiArchive filing. 
>                       </xsd:documentation>
>               </xsd:annotation>
>               <xsd:restriction base="xsd:string">
>                       <xsd:minLength value="1"></xsd:minLength>
>               </xsd:restriction>
>       </xsd:simpleType>
>       <xsd:simpleType name="URI">
>               <xsd:annotation>
>                       <xsd:documentation>
>                               URI for MultiArchive Component.
>                       </xsd:documentation>
>               </xsd:annotation>
>               <xsd:restriction base="xsd:string"></xsd:restriction>
>       </xsd:simpleType>
> </xsd:schema>
> services.xml
> <!-- This file was auto-generated from WSDL -->
> <!-- by the Apache Axis2 version: #axisVersion# #today# -->
> <serviceGroup>
>       <service name="URIService">
>               <messageReceivers>
>                       <messageReceiver 
> mep="http://www.w3.org/2004/08/wsdl/in-out";
>                               
> class="com.multisupport.maservices.uriservice.URIServiceMessageReceiverInOut" 
> />
>               </messageReceivers>
>               <parameter locked="false" name="ServiceClass">
>                       
> com.multisupport.maservices.uriservice.URIServiceSkeleton
>               </parameter>
>               <operation name="retrieveFolderURI"
>                       mep="http://www.w3.org/2004/08/wsdl/in-out";>
>                       <actionMapping>retrieveFolderURI</actionMapping>
>                       <outputActionMapping>
>                               
> http://www.multi-support.com/URIService/URIService/retrieveFolderURIResponse
>                       </outputActionMapping>
>                       <faultActionMapping faultName="RetrieveFolderURIFault">
>                               
> http://www.multi-support.com/URIService/URIService/retrieveFolderURI/Fault/RetrieveFolderURIFault
>                       </faultActionMapping>
>               </operation>
>               <module ref="rampart" />
>       
>               <parameter name="InflowSecurity">
>               <action>
>                       <items>UsernameToken</items>
>                               
> <passwordCallbackClass>com.multisupport.maservices.PWCBHandler</passwordCallbackClass>
>                       </action>               
>               </parameter> 
>       </service>
> </serviceGroup>

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

Reply via email to