You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@cxf.apache.org by Thomas Manson <de...@gmail.com> on 2014/07/11 16:37:29 UTC

CXF do not generate operation parameters

Hi CXF !


I'm using CXF 2.7.0 to generate the client for the attached WSDL (de.zip)
with the following options :

                <wsdlOption>
                  <wsdl>${basedir}/src/main/resources/de.wsdl</wsdl>
                  <extraargs>
                    <extraarg>-xjc-Xts</extraarg>
                    <extraarg>-autoNameResolution</extraarg>
                  </extraargs>
                </wsdlOption>

The generated client is missing argument on one operation, while if I use
SOAPUI or another priopriatery tool, I can see the arguments.



For example, with SOAPUI 4.5.2 :
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:res="http://resourcequery.api.de.n2.tibco.com">
   <soapenv:Header/>
   <soapenv:Body>
      <res:executeQuery model-version="-1" implementation="1">
         <query>resource(name='tibco-admin')</query>
      </res:executeQuery>
   </soapenv:Body>
</soapenv:Envelope>


CXF generated client the following :

public interface ResourceQueryService {    /**

     * Execute a Resource Query Language (RQL) query to find a set of
resources that match specific criteria.

     */

    @WebResult(name = "resource", targetNamespace = "")

    @RequestWrapper(localName = "executeQuery", targetNamespace = "
http://resourcequery.api.de.n2.tibco.com", className =
"com.tibco.n2.common.organisation.api.XmlExecuteQuery")

    @WebMethod(action = "executeQuery")

    @ResponseWrapper(localName = "executeQueryResponse", targetNamespace = "
http://resourcequery.api.de.n2.tibco.com", className =
"com.tibco.n2.de.api.resourcequery.ExecuteQueryResponse")

    public
java.util.List<com.tibco.n2.de.api.resourcequery.XmlSimpleResource>
executeQuery() throws InvalidQueryFault, SecurityFault,
InvalidOrgModelVersionFault, NoSuchNamedEntityFault,
InvalidServiceRequestFault, InternalServiceFault;

}

where you can see that the executeQuery() has no argument.

Any idea what's going wrong ?

I would rather not touch the WSLD, so I wonder if there's some options
available on CXF that would allow the parameters to be generated.

What's weird is that there's other method signature quite more complexe
that are generated successfully.


I'll try to generated the client with the latest version of CXF, but last
time I tried, It failed... (expected another thread for me on this subject
then ;))


Thanks for your help,

Thomas.

Re: CXF do not generate operation parameters

Posted by Daniel Kulp <dk...@apache.org>.
On Jul 18, 2014, at 10:12 AM, Thomas Manson <de...@gmail.com> wrote:

> Thanks Daniel for the bug fix and feedback !
> 
> So it should be included in the following version right ? (2.7.13 and 3.0.2)

Yep.  But with 3.0.1 being voted on now, it will likely be a little while.

Dan


> 
> Regards,
> Thomas.
> 
> 
> On Fri, Jul 18, 2014 at 3:59 PM, Daniel Kulp <dk...@apache.org> wrote:
> 
>> 
>> This is due to:
>> 
>> https://issues.apache.org/jira/browse/CXF-5888
>> 
>> which I fixed yesterday.   Too late for 2.7.12/3.0.1 though.
>> 
>> Dan
>> 
>> 
>> 
>> On Jul 18, 2014, at 9:24 AM, Thomas Manson <de...@gmail.com>
>> wrote:
>> 
>>> Note :
>>> 
>>> Seems like a CXF issue, Work around provided by Daniel Kulp that did
>> solve
>>> the issue is to add a parameter : (bareMethods)
>>> 
>>> 
>>>               <wsdlOption>
>>>                 <wsdl>${basedir}/src/main/resources/de.wsdl</wsdl>
>>> 
>>>                 <extraargs>
>>>                   <extraarg>-xjc-Xts</extraarg>
>>>                   <extraarg>-autoNameResolution</extraarg>
>>>                   <extraarg>-bareMethods=executeQuery</extraarg>
>>>                 </extraargs>
>>>               </wsdlOption>
>>> 
>>> Thomas.
>>> 
>>> 
>>> On Fri, Jul 11, 2014 at 4:37 PM, Thomas Manson <
>> dev.mansonthomas@gmail.com>
>>> wrote:
>>> 
>>>> Hi CXF !
>>>> 
>>>> 
>>>> I'm using CXF 2.7.0 to generate the client for the attached WSDL
>> (de.zip)
>>>> with the following options :
>>>> 
>>>>               <wsdlOption>
>>>>                 <wsdl>${basedir}/src/main/resources/de.wsdl</wsdl>
>>>>                 <extraargs>
>>>>                   <extraarg>-xjc-Xts</extraarg>
>>>>                   <extraarg>-autoNameResolution</extraarg>
>>>>                 </extraargs>
>>>>               </wsdlOption>
>>>> 
>>>> The generated client is missing argument on one operation, while if I
>> use
>>>> SOAPUI or another priopriatery tool, I can see the arguments.
>>>> 
>>>> 
>>>> 
>>>> For example, with SOAPUI 4.5.2 :
>>>> <soapenv:Envelope xmlns:soapenv="
>> http://schemas.xmlsoap.org/soap/envelope/"
>>>> xmlns:res="http://resourcequery.api.de.n2.tibco.com">
>>>>  <soapenv:Header/>
>>>>  <soapenv:Body>
>>>>     <res:executeQuery model-version="-1" implementation="1">
>>>>        <query>resource(name='tibco-admin')</query>
>>>>     </res:executeQuery>
>>>>  </soapenv:Body>
>>>> </soapenv:Envelope>
>>>> 
>>>> 
>>>> CXF generated client the following :
>>>> 
>>>> public interface ResourceQueryService {    /**
>>>> 
>>>>    * Execute a Resource Query Language (RQL) query to find a set of
>>>> resources that match specific criteria.
>>>> 
>>>>    */
>>>> 
>>>>   @WebResult(name = "resource", targetNamespace = "")
>>>> 
>>>>   @RequestWrapper(localName = "executeQuery", targetNamespace = "
>>>> http://resourcequery.api.de.n2.tibco.com", className =
>>>> "com.tibco.n2.common.organisation.api.XmlExecuteQuery")
>>>> 
>>>>   @WebMethod(action = "executeQuery")
>>>> 
>>>>   @ResponseWrapper(localName = "executeQueryResponse", targetNamespace
>>>> = "http://resourcequery.api.de.n2.tibco.com", className =
>>>> "com.tibco.n2.de.api.resourcequery.ExecuteQueryResponse")
>>>> 
>>>>   public
>>>> java.util.List<com.tibco.n2.de.api.resourcequery.XmlSimpleResource>
>>>> executeQuery() throws InvalidQueryFault, SecurityFault,
>>>> InvalidOrgModelVersionFault, NoSuchNamedEntityFault,
>>>> InvalidServiceRequestFault, InternalServiceFault;
>>>> 
>>>> }
>>>> 
>>>> where you can see that the executeQuery() has no argument.
>>>> 
>>>> Any idea what's going wrong ?
>>>> 
>>>> I would rather not touch the WSLD, so I wonder if there's some options
>>>> available on CXF that would allow the parameters to be generated.
>>>> 
>>>> What's weird is that there's other method signature quite more complexe
>>>> that are generated successfully.
>>>> 
>>>> 
>>>> I'll try to generated the client with the latest version of CXF, but
>> last
>>>> time I tried, It failed... (expected another thread for me on this
>> subject
>>>> then ;))
>>>> 
>>>> 
>>>> Thanks for your help,
>>>> 
>>>> Thomas.
>>>> 
>> 
>> --
>> Daniel Kulp
>> dkulp@apache.org - http://dankulp.com/blog
>> Talend Community Coder - http://coders.talend.com
>> 
>> 

-- 
Daniel Kulp
dkulp@apache.org - http://dankulp.com/blog
Talend Community Coder - http://coders.talend.com


Re: CXF do not generate operation parameters

Posted by Thomas Manson <de...@gmail.com>.
Thanks Daniel for the bug fix and feedback !

So it should be included in the following version right ? (2.7.13 and 3.0.2)

Regards,
Thomas.


On Fri, Jul 18, 2014 at 3:59 PM, Daniel Kulp <dk...@apache.org> wrote:

>
> This is due to:
>
> https://issues.apache.org/jira/browse/CXF-5888
>
> which I fixed yesterday.   Too late for 2.7.12/3.0.1 though.
>
> Dan
>
>
>
> On Jul 18, 2014, at 9:24 AM, Thomas Manson <de...@gmail.com>
> wrote:
>
> > Note :
> >
> > Seems like a CXF issue, Work around provided by Daniel Kulp that did
> solve
> > the issue is to add a parameter : (bareMethods)
> >
> >
> >                <wsdlOption>
> >                  <wsdl>${basedir}/src/main/resources/de.wsdl</wsdl>
> >
> >                  <extraargs>
> >                    <extraarg>-xjc-Xts</extraarg>
> >                    <extraarg>-autoNameResolution</extraarg>
> >                    <extraarg>-bareMethods=executeQuery</extraarg>
> >                  </extraargs>
> >                </wsdlOption>
> >
> > Thomas.
> >
> >
> > On Fri, Jul 11, 2014 at 4:37 PM, Thomas Manson <
> dev.mansonthomas@gmail.com>
> > wrote:
> >
> >> Hi CXF !
> >>
> >>
> >> I'm using CXF 2.7.0 to generate the client for the attached WSDL
> (de.zip)
> >> with the following options :
> >>
> >>                <wsdlOption>
> >>                  <wsdl>${basedir}/src/main/resources/de.wsdl</wsdl>
> >>                  <extraargs>
> >>                    <extraarg>-xjc-Xts</extraarg>
> >>                    <extraarg>-autoNameResolution</extraarg>
> >>                  </extraargs>
> >>                </wsdlOption>
> >>
> >> The generated client is missing argument on one operation, while if I
> use
> >> SOAPUI or another priopriatery tool, I can see the arguments.
> >>
> >>
> >>
> >> For example, with SOAPUI 4.5.2 :
> >> <soapenv:Envelope xmlns:soapenv="
> http://schemas.xmlsoap.org/soap/envelope/"
> >> xmlns:res="http://resourcequery.api.de.n2.tibco.com">
> >>   <soapenv:Header/>
> >>   <soapenv:Body>
> >>      <res:executeQuery model-version="-1" implementation="1">
> >>         <query>resource(name='tibco-admin')</query>
> >>      </res:executeQuery>
> >>   </soapenv:Body>
> >> </soapenv:Envelope>
> >>
> >>
> >> CXF generated client the following :
> >>
> >> public interface ResourceQueryService {    /**
> >>
> >>     * Execute a Resource Query Language (RQL) query to find a set of
> >> resources that match specific criteria.
> >>
> >>     */
> >>
> >>    @WebResult(name = "resource", targetNamespace = "")
> >>
> >>    @RequestWrapper(localName = "executeQuery", targetNamespace = "
> >> http://resourcequery.api.de.n2.tibco.com", className =
> >> "com.tibco.n2.common.organisation.api.XmlExecuteQuery")
> >>
> >>    @WebMethod(action = "executeQuery")
> >>
> >>    @ResponseWrapper(localName = "executeQueryResponse", targetNamespace
> >> = "http://resourcequery.api.de.n2.tibco.com", className =
> >> "com.tibco.n2.de.api.resourcequery.ExecuteQueryResponse")
> >>
> >>    public
> >> java.util.List<com.tibco.n2.de.api.resourcequery.XmlSimpleResource>
> >> executeQuery() throws InvalidQueryFault, SecurityFault,
> >> InvalidOrgModelVersionFault, NoSuchNamedEntityFault,
> >> InvalidServiceRequestFault, InternalServiceFault;
> >>
> >> }
> >>
> >> where you can see that the executeQuery() has no argument.
> >>
> >> Any idea what's going wrong ?
> >>
> >> I would rather not touch the WSLD, so I wonder if there's some options
> >> available on CXF that would allow the parameters to be generated.
> >>
> >> What's weird is that there's other method signature quite more complexe
> >> that are generated successfully.
> >>
> >>
> >> I'll try to generated the client with the latest version of CXF, but
> last
> >> time I tried, It failed... (expected another thread for me on this
> subject
> >> then ;))
> >>
> >>
> >> Thanks for your help,
> >>
> >> Thomas.
> >>
>
> --
> Daniel Kulp
> dkulp@apache.org - http://dankulp.com/blog
> Talend Community Coder - http://coders.talend.com
>
>

Re: CXF do not generate operation parameters

Posted by Daniel Kulp <dk...@apache.org>.
This is due to:

https://issues.apache.org/jira/browse/CXF-5888

which I fixed yesterday.   Too late for 2.7.12/3.0.1 though.

Dan



On Jul 18, 2014, at 9:24 AM, Thomas Manson <de...@gmail.com> wrote:

> Note :
> 
> Seems like a CXF issue, Work around provided by Daniel Kulp that did solve
> the issue is to add a parameter : (bareMethods)
> 
> 
>                <wsdlOption>
>                  <wsdl>${basedir}/src/main/resources/de.wsdl</wsdl>
> 
>                  <extraargs>
>                    <extraarg>-xjc-Xts</extraarg>
>                    <extraarg>-autoNameResolution</extraarg>
>                    <extraarg>-bareMethods=executeQuery</extraarg>
>                  </extraargs>
>                </wsdlOption>
> 
> Thomas.
> 
> 
> On Fri, Jul 11, 2014 at 4:37 PM, Thomas Manson <de...@gmail.com>
> wrote:
> 
>> Hi CXF !
>> 
>> 
>> I'm using CXF 2.7.0 to generate the client for the attached WSDL (de.zip)
>> with the following options :
>> 
>>                <wsdlOption>
>>                  <wsdl>${basedir}/src/main/resources/de.wsdl</wsdl>
>>                  <extraargs>
>>                    <extraarg>-xjc-Xts</extraarg>
>>                    <extraarg>-autoNameResolution</extraarg>
>>                  </extraargs>
>>                </wsdlOption>
>> 
>> The generated client is missing argument on one operation, while if I use
>> SOAPUI or another priopriatery tool, I can see the arguments.
>> 
>> 
>> 
>> For example, with SOAPUI 4.5.2 :
>> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
>> xmlns:res="http://resourcequery.api.de.n2.tibco.com">
>>   <soapenv:Header/>
>>   <soapenv:Body>
>>      <res:executeQuery model-version="-1" implementation="1">
>>         <query>resource(name='tibco-admin')</query>
>>      </res:executeQuery>
>>   </soapenv:Body>
>> </soapenv:Envelope>
>> 
>> 
>> CXF generated client the following :
>> 
>> public interface ResourceQueryService {    /**
>> 
>>     * Execute a Resource Query Language (RQL) query to find a set of
>> resources that match specific criteria.
>> 
>>     */
>> 
>>    @WebResult(name = "resource", targetNamespace = "")
>> 
>>    @RequestWrapper(localName = "executeQuery", targetNamespace = "
>> http://resourcequery.api.de.n2.tibco.com", className =
>> "com.tibco.n2.common.organisation.api.XmlExecuteQuery")
>> 
>>    @WebMethod(action = "executeQuery")
>> 
>>    @ResponseWrapper(localName = "executeQueryResponse", targetNamespace
>> = "http://resourcequery.api.de.n2.tibco.com", className =
>> "com.tibco.n2.de.api.resourcequery.ExecuteQueryResponse")
>> 
>>    public
>> java.util.List<com.tibco.n2.de.api.resourcequery.XmlSimpleResource>
>> executeQuery() throws InvalidQueryFault, SecurityFault,
>> InvalidOrgModelVersionFault, NoSuchNamedEntityFault,
>> InvalidServiceRequestFault, InternalServiceFault;
>> 
>> }
>> 
>> where you can see that the executeQuery() has no argument.
>> 
>> Any idea what's going wrong ?
>> 
>> I would rather not touch the WSLD, so I wonder if there's some options
>> available on CXF that would allow the parameters to be generated.
>> 
>> What's weird is that there's other method signature quite more complexe
>> that are generated successfully.
>> 
>> 
>> I'll try to generated the client with the latest version of CXF, but last
>> time I tried, It failed... (expected another thread for me on this subject
>> then ;))
>> 
>> 
>> Thanks for your help,
>> 
>> Thomas.
>> 

-- 
Daniel Kulp
dkulp@apache.org - http://dankulp.com/blog
Talend Community Coder - http://coders.talend.com


Re: CXF do not generate operation parameters

Posted by Thomas Manson <de...@gmail.com>.
Note :

Seems like a CXF issue, Work around provided by Daniel Kulp that did solve
the issue is to add a parameter : (bareMethods)


                <wsdlOption>
                  <wsdl>${basedir}/src/main/resources/de.wsdl</wsdl>

                  <extraargs>
                    <extraarg>-xjc-Xts</extraarg>
                    <extraarg>-autoNameResolution</extraarg>
                    <extraarg>-bareMethods=executeQuery</extraarg>
                  </extraargs>
                </wsdlOption>

Thomas.


On Fri, Jul 11, 2014 at 4:37 PM, Thomas Manson <de...@gmail.com>
wrote:

> Hi CXF !
>
>
> I'm using CXF 2.7.0 to generate the client for the attached WSDL (de.zip)
> with the following options :
>
>                 <wsdlOption>
>                   <wsdl>${basedir}/src/main/resources/de.wsdl</wsdl>
>                   <extraargs>
>                     <extraarg>-xjc-Xts</extraarg>
>                     <extraarg>-autoNameResolution</extraarg>
>                   </extraargs>
>                 </wsdlOption>
>
> The generated client is missing argument on one operation, while if I use
> SOAPUI or another priopriatery tool, I can see the arguments.
>
>
>
> For example, with SOAPUI 4.5.2 :
> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
> xmlns:res="http://resourcequery.api.de.n2.tibco.com">
>    <soapenv:Header/>
>    <soapenv:Body>
>       <res:executeQuery model-version="-1" implementation="1">
>          <query>resource(name='tibco-admin')</query>
>       </res:executeQuery>
>    </soapenv:Body>
> </soapenv:Envelope>
>
>
> CXF generated client the following :
>
> public interface ResourceQueryService {    /**
>
>      * Execute a Resource Query Language (RQL) query to find a set of
> resources that match specific criteria.
>
>      */
>
>     @WebResult(name = "resource", targetNamespace = "")
>
>     @RequestWrapper(localName = "executeQuery", targetNamespace = "
> http://resourcequery.api.de.n2.tibco.com", className =
> "com.tibco.n2.common.organisation.api.XmlExecuteQuery")
>
>     @WebMethod(action = "executeQuery")
>
>     @ResponseWrapper(localName = "executeQueryResponse", targetNamespace
> = "http://resourcequery.api.de.n2.tibco.com", className =
> "com.tibco.n2.de.api.resourcequery.ExecuteQueryResponse")
>
>     public
> java.util.List<com.tibco.n2.de.api.resourcequery.XmlSimpleResource>
> executeQuery() throws InvalidQueryFault, SecurityFault,
> InvalidOrgModelVersionFault, NoSuchNamedEntityFault,
> InvalidServiceRequestFault, InternalServiceFault;
>
> }
>
> where you can see that the executeQuery() has no argument.
>
> Any idea what's going wrong ?
>
> I would rather not touch the WSLD, so I wonder if there's some options
> available on CXF that would allow the parameters to be generated.
>
> What's weird is that there's other method signature quite more complexe
> that are generated successfully.
>
>
> I'll try to generated the client with the latest version of CXF, but last
> time I tried, It failed... (expected another thread for me on this subject
> then ;))
>
>
> Thanks for your help,
>
> Thomas.
>