You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "Daniel Kulp (JIRA)" <ji...@apache.org> on 2007/11/02 19:13:50 UTC

[jira] Commented: (CXF-1144) Issue with .NET clients - stub method parameters wrapped in a parameter class

    [ https://issues.apache.org/jira/browse/CXF-1144?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12539656 ] 

Daniel Kulp commented on CXF-1144:
----------------------------------


The jaxws spec and TCK basically requires that we create separate top level complexTypes for the wrappers.   Kind of sucks.  

With the latest snapshots, you can configure this in the runtime via spring config:

  <jaxws:server address="/jaxwsAndJaxb"
    serviceClass="org.apache.cxf.authservice.AuthService">
    <jaxws:serviceBean>
      <bean class="org.apache.cxf.authservice.AuthServiceImpl" />
    </jaxws:serviceBean>
    <jaxws:serviceFactory>
	    <bean class="org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean">
	    	<property name="anonymousWrapperTypes" value="true"/>
	    </bean>
    </jaxws:serviceFactory>
   </jaxws:server>

The ?wsdl returned from that would use the anonymous complextTypes instead of separate types.   This isn't available in the java2wsdl tooling though. 





> Issue with .NET clients - stub method parameters wrapped in a parameter class
> -----------------------------------------------------------------------------
>
>                 Key: CXF-1144
>                 URL: https://issues.apache.org/jira/browse/CXF-1144
>             Project: CXF
>          Issue Type: Bug
>            Reporter: Tawfik Lachheb
>
> We are trying to upgrade our published services from xfire to cxf.  We are using the simple frontend with aegis.  Before we push the upgrade to production, we need to make sure the upgrade as transparent as possible to our users.  With cxf, we see that the .NET client stubs are different from the ones users are getting now from xfire.  A method that appears as doIt(Thing a, Thing b) for example appears as dotIt(DoItRequest request) where DoItRequest contains the a and b parameters.
> I found out that doing a small change to the wsdl makes .NET generate the stubs the way we want them.  Changing the method request element from this for example:
>   <xsd:element name="findFeaturesByExtent" type="tns:findFeaturesByExtent" /> 
>   <xsd:complexType name="findFeaturesByExtent">
>   <xsd:sequence>
>   <xsd:element minOccurs="0" name="extent" type="tns:Envelope" /> 
>   <xsd:element minOccurs="0" name="spatialQueryOptions" type="tns:SpatialQueryOptions" /> 
>   <xsd:element minOccurs="0" name="token" type="xsd:string" /> 
>   </xsd:sequence>
>   </xsd:complexType>
> to this
> <xsd:element name="findFeaturesByExtent">
> <xsd:complexType name="findFeaturesByExtent">
> <xsd:sequence>
> <xsd:element minOccurs="0" name="extent" type="ns0:Envelope"/>
> <xsd:element minOccurs="0" name="spatialQueryOptions" type="ns0:SpatialQueryOptions"/>
> <xsd:element minOccurs="0" name="token" type="xsd:string"/>
> </xsd:sequence>
> </xsd:complexType>
> </xsd:element>
> fixes the problem.
> Please let me know if you need any additional info.
> Thanks

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