A better fix should be:
<wsdl:portType name="HelloWorld" sca:requires="sca:conversational">
...
</wsdl:portType>
Please note the value of sca:requires should be a list of QNames.
conversational should be qualified with prefix "sca".
Thanks,
Raymond
--------------------------------------------------
From: "Luciano Resende" <[EMAIL PROTECTED]>
Sent: Tuesday, June 24, 2008 6:37 PM
To: <[email protected]>
Subject: Re: WSDL parsing problem?
Adding the following to your wsdl fixes the issue.
xmlns="http://www.osoa.org/xmlns/sca/1.0"
On Tue, Jun 24, 2008 at 9:43 AM, Sun Yang <[EMAIL PROTECTED]> wrote:
Hi:
I am working on integrating the Sandesha2 module to Tuscany web service
to
support conversational web service.
Currently, I met a problem with the wsdl parsing. As the spec said (sca
assembly model 100.pdf line 916), I should add a
sca:requires="conversational" to the port type to declare it as
conversational at the web service side. But the Tuscany always complain
the
following exception.
/-------------------------------------------------
Caused by:
org.apache.tuscany.sca.contribution.service.ContributionReadException:
javax.wsdl.WSDLException: WSDLException (at
/wsdl:definitions/wsdl:portType): faultCode=NO_PREFIX_SPECIFIED: Unable
to
determine namespace of 'conversational'.
at
org.apache.tuscany.sca.interfacedef.wsdl.xml.WSDLModelResolver.loadDefinition(WSDLModelResolver.java:395)
at
org.apache.tuscany.sca.interfacedef.wsdl.xml.WSDLModelResolver.loadOnDemand(WSDLModelResolver.java:330)
... 27 more
Caused by: javax.wsdl.WSDLException: WSDLException (at
/wsdl:definitions/wsdl:portType): faultCode=NO_PREFIX_SPECIFIED: Unable
to
determine namespace of 'conversational'.
at com.ibm.wsdl.util.xml.DOMUtils.getQName(Unknown Source)
at
com.ibm.wsdl.xml.WSDLReaderImpl.parseExtensibilityAttribute(Unknown
Source)
at
com.ibm.wsdl.xml.WSDLReaderImpl.parseExtensibilityAttributes(Unknown
Source)
at com.ibm.wsdl.xml.WSDLReaderImpl.parsePortType(Unknown Source)
at com.ibm.wsdl.xml.WSDLReaderImpl.parseDefinitions(Unknown Source)
at com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(Unknown Source)
at com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(Unknown Source)
at com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(Unknown Source)
at com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(Unknown Source)
at com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(Unknown Source)
at
org.apache.tuscany.sca.interfacedef.wsdl.xml.WSDLModelResolver.loadDefinition(WSDLModelResolver.java:361)
... 28 more
--------------------------------------------------/
I did an quick investigation here. The exception is reported by
WSDLReader
(in package wsdl4j-1.6.2.jar).
Any ideas on this problem? Do I mis-understand the spec or something
wrong
here(I am guessing WSDLReader don't understand this kind of policy
extension). My test wsdl file is attached for your reference.
Thanks for your kindly help.
Yang Sun
--
Luciano Resende
Apache Tuscany Committer
http://people.apache.org/~lresende
http://lresende.blogspot.com/