You are viewing a plain text version of this content. The canonical link for it is here.
Posted to muse-dev@ws.apache.org by "Francesco Scandelli (JIRA)" <ji...@apache.org> on 2008/07/13 10:49:31 UTC

[jira] Created: (MUSE-291) Prefix 'http' within WSDL makes Muse's run-time not working properly

Prefix 'http' within WSDL makes Muse's run-time not working properly
--------------------------------------------------------------------

                 Key: MUSE-291
                 URL: https://issues.apache.org/jira/browse/MUSE-291
             Project: Muse
          Issue Type: Bug
          Components: Core Engine - WSDL Processing
    Affects Versions: 2.2.0
         Environment: JDK 1.5, Tomcat 5.5, Windows XP
            Reporter: Francesco Scandelli
            Assignee: Dan Jemiolo
            Priority: Minor


Within WSDL, if there's a namespace bound to prefix 'http' (which doesnt seem to be reserved in http://www.w3.org/TR/xml-names/#ns-decl) WSDL2Java (in mini configuration) doesnt throw any exception but the resource, at run-time, does not respond to any request, always saying Action Not Supported, e.g.:

<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope">
    <soap:Header>
        <wsa:To xmlns:wsa="http://www.w3.org/2005/08/addressing">http://www.w3.org/2005/08/addressing/role/anonymous</wsa:To>
        <wsa:Action xmlns:wsa="http://www.w3.org/2005/08/addressing">http://www.w3.org/2005/08/addressing/fault</wsa:Action>
        <wsa:MessageID xmlns:wsa="http://www.w3.org/2005/08/addressing">uuid:dc2766f5-d79c-ed8f-f895-8f931f654fb1</wsa:MessageID>
        <wsa:RelatesTo xmlns:wsa="http://www.w3.org/2005/08/addressing" RelationshipType="wsa:Reply">uuid:d2336151-9abf-4e80-0d97-738ad1abd841</wsa:RelatesTo>
        <wsa:From xmlns:wsa="http://www.w3.org/2005/08/addressing">
            <wsa:Address>http://localhost:8080/ApacheHttpServerImpl/services/HttpServer</wsa:Address>
        </wsa:From>
    </soap:Header>
    <soap:Body>
        <soap:Fault>
            <soap:Code>
                <soap:Value>soap:Sender</soap:Value>
                <soap:Subcode xmlns:wsa="http://www.w3.org/2005/08/addressing">
                    <soap:Value>wsa:ActionNotSupported</soap:Value>
                </soap:Subcode>
            </soap:Code>
            <soap:Reason>
                <soap:Text>[ID = 'ActionNotSupported'] The resource at 'HttpServer' does not expose an operation with the WS-Action 'http://schemas.xmlsoap.org/ws/2004/09/mex/GetMetadata' through any of its capabilities.</soap:Text>
            </soap:Reason>
            <soap:Detail>
                <wsa:ProblemAction xmlns:wsa="http://www.w3.org/2005/08/addressing">
                    <wsa:Action>http://schemas.xmlsoap.org/ws/2004/09/mex/GetMetadata</wsa:Action>
                </wsa:ProblemAction>
            </soap:Detail>
        </soap:Fault>
    </soap:Body>
</soap:Envelope>

Here is the working WSDL (if you substitute prefix 'pfx' with 'http' you will get the above descripted behaviour):

<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions targetNamespace="http://www.eclipse.org/HttpServer"
	xmlns:tns="http://www.eclipse.org/HttpServer"
	xmlns="http://schemas.xmlsoap.org/wsdl/"
	xmlns:wsa="http://www.w3.org/2005/08/addressing"
	xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
	xmlns:wsdl-soap="http://schemas.xmlsoap.org/wsdl/soap/"
	xmlns:xsd="http://www.w3.org/2001/XMLSchema"
	xmlns:wsx="http://schemas.xmlsoap.org/ws/2004/09/mex"
	xmlns:wsrf-r="http://docs.oasis-open.org/wsrf/r-2"
	xmlns:wsrf-rl="http://docs.oasis-open.org/wsrf/rl-2"
	xmlns:wsrf-bf="http://docs.oasis-open.org/wsrf/bf-2"
	xmlns:wsrf-rp="http://docs.oasis-open.org/wsrf/rp-2"
	xmlns:wsnt="http://docs.oasis-open.org/wsn/b-2"
	xmlns:wsntw="http://docs.oasis-open.org/wsn/bw-2"
	xmlns:wst="http://docs.oasis-open.org/wsn/t-1"
	xmlns:wsrmd="http://docs.oasis-open.org/wsrf/rmd-1"
	xmlns:muws1="http://docs.oasis-open.org/wsdm/muws1-2.xsd"
	xmlns:muws2="http://docs.oasis-open.org/wsdm/muws2-2.xsd"
	xmlns:pfx="http://www.eclipse.org/HttpServerCapability"
	name="HttpServer">
	<wsdl:types>
		<xsd:schema 
        	elementFormDefault="qualified" 
			targetNamespace="http://docs.oasis-open.org/wsrf/rmd-1">
			<xsd:include schemaLocation="WS-ResourceMetadataDescriptor-CD-01.xsd" />
		</xsd:schema>
		<xsd:schema elementFormDefault="qualified"
			targetNamespace="http://www.w3.org/2005/08/addressing">
			<xsd:include schemaLocation="WS-Addressing-2005_08.xsd" />
		</xsd:schema>
		<xsd:schema elementFormDefault="qualified"
			targetNamespace="http://schemas.xmlsoap.org/ws/2004/09/mex">
			<xsd:include
				schemaLocation="WS-MetadataExchange-2004_09.xsd" />
		</xsd:schema>
		
		<xsd:schema elementFormDefault="qualified"
			targetNamespace="http://docs.oasis-open.org/wsrf/rp-2">
			<xsd:include schemaLocation="WS-ResourceProperties-1_2.xsd" />
		</xsd:schema>
		<xsd:schema elementFormDefault="qualified"
			targetNamespace="http://docs.oasis-open.org/wsrf/r-2">
			<xsd:include schemaLocation="WS-Resource-1_2.xsd" />
		</xsd:schema>
		
		<xsd:schema elementFormDefault="qualified"
			targetNamespace="http://docs.oasis-open.org/wsdm/muws1-2.xsd">
			<xsd:include schemaLocation="WSDM-MUWS-Part1-1_1.xsd" />
		</xsd:schema>
		<xsd:schema elementFormDefault="qualified"
			targetNamespace="http://docs.oasis-open.org/wsdm/muws2-2.xsd">
			<xsd:include schemaLocation="WSDM-MUWS-Part2-1_1.xsd" />
		</xsd:schema>
		
		<xsd:schema elementFormDefault="qualified"
			targetNamespace="http://www.eclipse.org/HttpServer"
			xmlns:tns="http://www.eclipse.org/HttpServer">
			<xsd:import namespace="http://www.eclipse.org/HttpServerCapability"/>
			
			<xsd:element name="HttpServerProperties">
				<xsd:complexType>
					<xsd:sequence>
						
						<xsd:element ref="muws1:ResourceId" />
						<xsd:element ref="muws1:ManageabilityCapability"
							minOccurs="0" maxOccurs="unbounded" />
						<xsd:element ref="muws2:Caption" minOccurs="0"
							maxOccurs="unbounded" />
						<xsd:element ref="muws2:Description"
							minOccurs="0" maxOccurs="unbounded" />
						<xsd:element ref="muws2:Version" minOccurs="0" />
						<xsd:element ref="muws2:OperationalStatus" />
						
						<xsd:element maxOccurs="1" minOccurs="1" ref="pfx:ThreadsPerChild"/>
                        <xsd:element maxOccurs="1" minOccurs="1" ref="pfx:Listen"/>
                        <xsd:element maxOccurs="1" minOccurs="1" ref="pfx:ServerName"/>
						
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			
			
		</xsd:schema>
		
		<xsd:schema elementFormDefault="qualified"
			targetNamespace="http://www.eclipse.org/HttpServerCapability"
			xmlns:tns="http://www.eclipse.org/HttpServerCapability">

			<xsd:element name="ThreadsPerChild" type="xsd:int"/>
            <xsd:element name="Listen" type="xsd:int"/>
            <xsd:element name="ServerName" type="xsd:string"/>
						
			<xsd:element name="start"/>
            <xsd:element name="startFault">
                <xsd:complexType>
                    <xsd:complexContent>
                        <xsd:extension base="wsrf-bf:BaseFaultType"/>
                    </xsd:complexContent>
                </xsd:complexType>
            </xsd:element>
            <xsd:element name="stop">
                <xsd:complexType>
                    <xsd:sequence>
                        <xsd:element name="delay" type="xsd:int"/>
                    </xsd:sequence>
                </xsd:complexType>
            </xsd:element>
            <xsd:element name="stopFault">
                <xsd:complexType>
                    <xsd:complexContent>
                        <xsd:extension base="wsrf-bf:BaseFaultType"/>
                    </xsd:complexContent>
                </xsd:complexType>
            </xsd:element>
			
		</xsd:schema>
		
	</wsdl:types>
	
	<wsdl:message name="startRequest">
        <wsdl:part element="pfx:start" name="startRequest"/>
    </wsdl:message>
	<wsdl:message name="startResponse">
        <wsdl:part name="startResponse" type="xsd:anyType"/>
    </wsdl:message>
    <wsdl:message name="stopRequest">
        <wsdl:part element="pfx:stop" name="stopRequest"/>
    </wsdl:message>
	<wsdl:message name="stopResponse">
        <wsdl:part name="stopResponse" type="xsd:anyType"/>
    </wsdl:message>
    <wsdl:message name="stopFault">
        <wsdl:part element="pfx:stopFault" name="stopFault"/>
    </wsdl:message>
    
    <wsdl:message name="startFault">
        <wsdl:part element="pfx:startFault" name="startFault"/>
    </wsdl:message>
    
	<wsdl:message name="GetMetadataMsg">
		<wsdl:part name="GetMetadataMsg" element="wsx:GetMetadata" />
	</wsdl:message>
	<wsdl:message name="GetMetadataResponseMsg">
		<wsdl:part name="GetMetadataResponseMsg" element="wsx:Metadata" />
	</wsdl:message>
	
	<wsdl:message name="ResourceUnknownFault">
		<wsdl:part name="ResourceUnknownFault"
			element="wsrf-r:ResourceUnknownFault" />
	</wsdl:message>
	<wsdl:message name="ResourceUnavailableFault">
		<wsdl:part name="ResourceUnavailableFault"
			element="wsrf-r:ResourceUnavailableFault" />
	</wsdl:message>
	
	<wsdl:message name="GetResourcePropertyDocumentRequest">
		<wsdl:part name="GetResourcePropertyDocumentRequest"
			element="wsrf-rp:GetResourcePropertyDocument" />
	</wsdl:message>
	<wsdl:message name="GetResourcePropertyDocumentResponse">
		<wsdl:part name="GetResourcePropertyDocumentResponse"
			element="wsrf-rp:GetResourcePropertyDocumentResponse" />
	</wsdl:message>
	<wsdl:message name="GetResourcePropertyRequest">
		<wsdl:part name="GetResourcePropertyRequest"
			element="wsrf-rp:GetResourceProperty" />
	</wsdl:message>
	<wsdl:message name="GetResourcePropertyResponse">
		<wsdl:part name="GetResourcePropertyResponse"
			element="wsrf-rp:GetResourcePropertyResponse" />
	</wsdl:message>
	<wsdl:message name="InvalidResourcePropertyQNameFault">
		<wsdl:part name="InvalidResourcePropertyQNameFault"
			element="wsrf-rp:InvalidResourcePropertyQNameFault" />
	</wsdl:message>
	<wsdl:message name="GetMultipleResourcePropertiesRequest">
		<wsdl:part name="GetMultipleResourcePropertiesRequest"
			element="wsrf-rp:GetMultipleResourceProperties" />
	</wsdl:message>
	<wsdl:message name="GetMultipleResourcePropertiesResponse">
		<wsdl:part name="GetMultipleResourcePropertiesResponse"
			element="wsrf-rp:GetMultipleResourcePropertiesResponse" />
	</wsdl:message>
	
	
	
	<wsdl:portType name="HttpServerPortType"
		wsrf-rp:ResourceProperties="tns:HttpServerProperties">
		<wsdl:operation name="GetMetadata">
			<wsdl:input
				wsa:Action="http://schemas.xmlsoap.org/ws/2004/09/mex/GetMetadata"
				name="GetMetadataMsg" message="tns:GetMetadataMsg" />
			<wsdl:output
				wsa:Action="http://schemas.xmlsoap.org/ws/2004/09/mex/GetMetadataResponse"
				name="GetMetadataResponseMsg" message="tns:GetMetadataResponseMsg" />
		</wsdl:operation>
		
		<wsdl:operation name="GetResourcePropertyDocument">
			<wsdl:input
				wsa:Action="http://docs.oasis-open.org/wsrf/rpw-2/GetResourcePropertyDocument/GetResourcePropertyDocumentRequest"
				name="GetResourcePropertyDocumentRequest"
				message="tns:GetResourcePropertyDocumentRequest" />
			<wsdl:output
				wsa:Action="http://docs.oasis-open.org/wsrf/rpw-2/GetResourcePropertyDocument/GetResourcePropertyDocumentResponse"
				name="GetResourcePropertyDocumentResponse"
				message="tns:GetResourcePropertyDocumentResponse" />
			<wsdl:fault name="ResourceUnknownFault"
				message="tns:ResourceUnknownFault" />
			<wsdl:fault name="ResourceUnavailableFault"
				message="tns:ResourceUnavailableFault" />
		</wsdl:operation>
		<wsdl:operation name="GetResourceProperty">
			<wsdl:input
				wsa:Action="http://docs.oasis-open.org/wsrf/rpw-2/GetResourceProperty/GetResourcePropertyRequest"
				name="GetResourcePropertyRequest"
				message="tns:GetResourcePropertyRequest" />
			<wsdl:output
				wsa:Action="http://docs.oasis-open.org/wsrf/rpw-2/GetResourceProperty/GetResourcePropertyResponse"
				name="GetResourcePropertyResponse"
				message="tns:GetResourcePropertyResponse" />
			<wsdl:fault name="ResourceUnknownFault"
				message="tns:ResourceUnknownFault" />
			<wsdl:fault name="ResourceUnavailableFault"
				message="tns:ResourceUnavailableFault" />
			<wsdl:fault name="InvalidResourcePropertyQNameFault"
				message="tns:InvalidResourcePropertyQNameFault" />
		</wsdl:operation>
		<wsdl:operation name="GetMultipleResourceProperties">
			<wsdl:input
				wsa:Action="http://docs.oasis-open.org/wsrf/rpw-2/GetMultipleResourceProperties/GetMultipleResourcePropertiesRequest"
				name="GetMultipleResourcePropertiesRequest"
				message="tns:GetMultipleResourcePropertiesRequest" />
			<wsdl:output
				wsa:Action="http://docs.oasis-open.org/wsrf/rpw-2/GetMultipleResourceProperties/GetMultipleResourcePropertiesResponse"
				name="GetMultipleResourcePropertiesResponse"
				message="tns:GetMultipleResourcePropertiesResponse" />
			<wsdl:fault name="ResourceUnknownFault"
				message="tns:ResourceUnknownFault" />
			<wsdl:fault name="ResourceUnavailableFault"
				message="tns:ResourceUnavailableFault" />
			<wsdl:fault name="InvalidResourcePropertyQNameFault"
				message="tns:InvalidResourcePropertyQNameFault" />
		</wsdl:operation>
		
		
		
		
		<wsdl:operation name="stop">
            <wsdl:input message="tns:stopRequest" name="stopRequest" wsa:Action="http://www.eclipse.org/HttpServer/StopRequest"/>
            <wsdl:output message="tns:stopResponse" name="stopResponse" wsa:Action="http://www.eclipse.org/HttpServer/StopResponse"/>
            <wsdl:fault message="tns:stopFault" name="stopFault"/>
        </wsdl:operation>
        <wsdl:operation name="start">
            <wsdl:input message="tns:startRequest" name="startRequest" wsa:Action="http://www.eclipse.org/HttpServer/StartRequest"/>
            <wsdl:output message="tns:startResponse"
                name="startResponse" wsa:Action="http://www.eclipse.org/HttpServer/StartResponse"/>
            <wsdl:fault message="tns:startFault" name="startFault"/>
        </wsdl:operation>
		
	</wsdl:portType>
	<wsdl:binding name="HttpServerBinding"
		type="tns:HttpServerPortType">
		<wsdl-soap:binding style="document"
			transport="http://schemas.xmlsoap.org/soap/http" />
		<wsdl:operation name="GetMetadata">
			<wsdl-soap:operation soapAction="GetMetadata" />
			<wsdl:input>
				<wsdl-soap:body use="encoded"
					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
			</wsdl:input>
			<wsdl:output>
				<wsdl-soap:body use="encoded"
					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
			</wsdl:output>
		</wsdl:operation>
		
		<wsdl:operation name="GetResourcePropertyDocument">
			<wsdl-soap:operation
				soapAction="GetResourcePropertyDocument" />
			<wsdl:input name="GetResourcePropertyDocumentRequest">
				<wsdl-soap:body use="encoded"
					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
			</wsdl:input>
			<wsdl:output name="GetResourcePropertyDocumentResponse">
				<wsdl-soap:body use="encoded"
					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
			</wsdl:output>
			<wsdl:fault name="ResourceUnknownFault">
				<wsdl-soap:fault use="encoded"
					name="ResourceUnknownFault" />
			</wsdl:fault>
			<wsdl:fault name="ResourceUnavailableFault">
				<wsdl-soap:fault use="encoded"
					name="ResourceUnavailableFault" />
			</wsdl:fault>
		</wsdl:operation>
		<wsdl:operation name="GetResourceProperty">
			<wsdl-soap:operation soapAction="GetResourceProperty" />
			<wsdl:input name="GetResourcePropertyRequest">
				<wsdl-soap:body use="encoded"
					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
			</wsdl:input>
			<wsdl:output name="GetResourcePropertyResponse">
				<wsdl-soap:body use="encoded"
					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
			</wsdl:output>
			<wsdl:fault name="ResourceUnknownFault">
				<wsdl-soap:fault use="encoded"
					name="ResourceUnknownFault" />
			</wsdl:fault>
			<wsdl:fault name="ResourceUnavailableFault">
				<wsdl-soap:fault use="encoded"
					name="ResourceUnavailableFault" />
			</wsdl:fault>
			<wsdl:fault name="InvalidResourcePropertyQNameFault">
				<wsdl-soap:fault use="encoded"
					name="InvalidResourcePropertyQNameFault" />
			</wsdl:fault>
		</wsdl:operation>
		<wsdl:operation name="GetMultipleResourceProperties">
			<wsdl-soap:operation
				soapAction="GetMultipleResourceProperties" />
			<wsdl:input name="GetMultipleResourcePropertiesRequest">
				<wsdl-soap:body use="encoded"
					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
			</wsdl:input>
			<wsdl:output name="GetMultipleResourcePropertiesResponse">
				<wsdl-soap:body use="encoded"
					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
			</wsdl:output>
			<wsdl:fault name="ResourceUnknownFault">
				<wsdl-soap:fault use="encoded"
					name="ResourceUnknownFault" />
			</wsdl:fault>
			<wsdl:fault name="ResourceUnavailableFault">
				<wsdl-soap:fault use="encoded"
					name="ResourceUnavailableFault" />
			</wsdl:fault>
			<wsdl:fault name="InvalidResourcePropertyQNameFault">
				<wsdl-soap:fault use="encoded"
					name="InvalidResourcePropertyQNameFault" />
			</wsdl:fault>
		</wsdl:operation>
		
	</wsdl:binding>
	<wsdl:service name="HttpServerService">
		<wsdl:port name="HttpServerPort"
			binding="tns:HttpServerBinding">
			<wsdl-soap:address
				location="http://localhost:8080/ApacheHttpServerImpl/services/HttpServer" />
		</wsdl:port>
	</wsdl:service>
</wsdl:definitions>


-- 
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: muse-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: muse-dev-help@ws.apache.org