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 "Torben Riis (JIRA)" <ji...@apache.org> on 2007/02/08 12:39:05 UTC
[jira] Created: (AXIS2-2139) Axis2: Security phase (Rampart) alters
response
Axis2: Security phase (Rampart) alters response
-----------------------------------------------
Key: AXIS2-2139
URL: https://issues.apache.org/jira/browse/AXIS2-2139
Project: Axis 2.0 (Axis2)
Issue Type: Bug
Affects Versions: 1.1.1
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: <br>
Archive - Identification of Archive. <br>
Folder - Archive folder path for folder where
items are filed in MultiArchive. <br>
</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. <br> 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: <br> Archive - Identification
of Archive. <br> Archive folder path. <br>
</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. <br>
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.
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org