[
https://issues.apache.org/jira/browse/CXF-1628?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12602882#action_12602882
]
Bruno Braga commented on CXF-1628:
----------------------------------
Hi Benson,
I was beginning to prepare a project using its files to test ...
But I will answer some things here to detail the problem better.
This "alterarVisao" is an operation, not a class.
<xsd:complexType name="alterarVisao">
<xsd:sequence>
<xsd:element minOccurs="0" name="idSistema" type="xsd:int"/>
<xsd:element minOccurs="0" name="nomeVisao" type="xsd:string"/>
<xsd:element minOccurs="0" name="codigoVisao" type="xsd:string"/>
<xsd:element minOccurs="0" name="idVisao" type="xsd:short"/>
</xsd:sequence>
</xsd:complexType>
See the code of WS and annotations:
@WebMethod
public Visao alterarVisao(@WebParam(name="idSistema") Integer idSistema,
@WebParam(name="nomeVisao") String nomeVisao, @WebParam(name="codigoVisao")
String codigoVisao, @WebParam(name="idVisao") Short idVisao) throws
SegurancaException {
Using JAX or Aegis I have a minOccurs="0" for each field of operation.
This causes a big problem for the .Net client.
I have the same WS in Axis 1. The WSDL is generated correctly (I'm trying to
migrate to CXF):
<wsdl:message name="alterarVisaoRequest">
<wsdl:part name="idSistema" type="xsd:int"/>
<wsdl:part name="nomeVisao" type="xsd:string"/>
<wsdl:part name="codigoVisao" type="xsd:string"/>
<wsdl:part name="idVisao" type="xsd:short"/>
</wsdl:message>
I'm seeing now that my operation of the Axis 1 (wsdl:message) is generated as
xsd:complexType in Aegis...
But the important is: I don't have minOccurs="0" in WS parameters using Axis,
and that is my problem of interop:
http://geekswithblogs.net/shahed/archive/2007/07/11/113881.aspx
> TypeCreationOptions ignored
> ---------------------------
>
> Key: CXF-1628
> URL: https://issues.apache.org/jira/browse/CXF-1628
> Project: CXF
> Issue Type: Bug
> Components: Aegis Databinding
> Affects Versions: 2.1
> Environment: java 6 update 6 + tomcat 6.0.16
> Reporter: Bruno Braga
> Assignee: Benson Margulies
> Fix For: 2.1.1
>
>
> I believe that the aegis is with a bug.
> The new settings using TypeCreationOptions are not working (or I did wrong
> settings and didn't show any error).
> --------------------------
> <bean id="aegisBean"
> class="org.apache.cxf.aegis.databinding.AegisDatabinding">
> <property name="configuration">
> <bean
> class="org.apache.cxf.aegis.type.TypeCreationOptions">
> <property name="defaultMinOccurs" value="1"/>
> <property name="defaultNillable" value="false"/>
> </bean>
> </property>
> </bean>
>
> <bean id="jaxws-and-aegis-service-factory"
> class="org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean"
> scope="prototype">
> <property name="dataBinding" ref="aegisBean"/>
> </bean>
>
> <bean id="segurancaService" class="xxxxx.SegurancaService">
> <constructor-arg><ref
> bean="fachadaSeguranca"/></constructor-arg>
> </bean>
>
> <jaxws:endpoint id="endpointSegurancaService"
> implementor="#segurancaService" address="/SegurancaService">
> <jaxws:serviceFactory>
> <ref bean='jaxws-and-aegis-service-factory' />
> </jaxws:serviceFactory>
> <jaxws:inInterceptors>
> <bean
> class="org.apache.cxf.binding.soap.saaj.SAAJInInterceptor" />
> <bean
> class="org.apache.cxf.ws.security.wss4j.WSS4JInInterceptor">
> <constructor-arg>
> <map>
> <entry key="action" value="UsernameToken Timestamp" />
> <entry key="passwordType" value="PasswordDigest" />
> <entry key="passwordCallbackClass"
> value="xxxxx.wssecurity.PWCallback" />
> </map>
> </constructor-arg>
> </bean>
> <bean class="xxxxx.wssecurity.UsernameTokenInterceptor" />
> </jaxws:inInterceptors>
> </jaxws:endpoint>
> --------------------------
> My wsdl is being generated thus:
> <xsd:sequence>
> <xsd:element minOccurs="0" name="idSistema" type="xsd:int"/>
> <xsd:element minOccurs="0" name="idModulo" type="xsd:int"/>
> </xsd:sequence>
> It's wrong.
> minOccurs should be 1.
> TypeCreationOptions had no effect.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.