You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@cxf.apache.org by Min Yang <mg...@gmail.com> on 2013/03/05 08:36:42 UTC

CXF RespectBinding feature does not support the customized binding info under operation and its sub element.

Hi,

When we test our application that enabled the RespectBinding feature, we
found an issue in cxf-2.6.2. The issue is if we add an invalid binding
under wsdl:binding element as you can see in below, a WebServiceException
will be throw out when accessing the endpoint first time, and the endpoint
will not be accessed, this is behavior is correct.

  <binding name="EchoPortBinding" type="tns:Echo">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http"
style="document"/>
    <tns:badBinding wsdl:required="true" uri="http://bad/bad" xmlns:wsdl="
http://schemas.xmlsoap.org/wsdl/" />
    <operation name="echo">
      <soap:operation soapAction=""/>
      <input>
        <soap:body use="literal"/>
      </input>
      <output>
        <soap:body use="literal"/>
      </output>
      <fault name="Exception">
        <soap:fault name="Exception" use="literal"/>
      </fault>
    </operation>
  </binding>

But if we add the invalid binding under operation or its sub element
(input, output or fault), like the example in below, then cxf will not
check it, and the endpoint would be access after deployment, although the
wsdl4j has deserialize it as an unkown element. So I think this should be a
cxf defect, please confirm it. Thanks!

  <binding name="EchoPortBinding" type="tns:Echo">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http"
style="document"/>
    <operation name="echo">
      <soap:operation soapAction=""/>
      <tns:badBinding wsdl:required="true" uri="http://bad/bad" xmlns:wsdl="
http://schemas.xmlsoap.org/wsdl/" />
      <input>
        <soap:body use="literal"/>
      </input>
      <output>
        <soap:body use="literal"/>
      </output>
      <fault name="Exception">
        <soap:fault name="Exception" use="literal"/>
      </fault>
    </operation>
  </binding>

Re: CXF RespectBinding feature does not support the customized binding info under operation and its sub element.

Posted by Min Yang <mg...@gmail.com>.
Hi Freeman,

Thanks for revising my patch, I have modified the test case
RespectBindingFeatureClientServerTest to cover our scenario, and submited
the new patch based your revise, please help to review.

> On Wed, Mar 13, 2013 at 10:32 PM, Freeman Fang <fr...@gmail.com>wrote:

> Seems the jira isn't reachable now, so just paste my comment here
>
> Hi Alan,
>
> I'm OK with this patch basically, would you please also add testcase for
> this functionality?
>
> You can extend the RespectBindingFeatureClientServerTest(and the wsdl used
> for this test)[1] to cover your scenario.
> [1]http://svn.apache.org/viewvc?view=revision&revision=1177248
>
> Thanks
> Freeman
> -------------
> Freeman(Yue) Fang
>
> Red Hat, Inc.
> FuseSource is now part of Red Hat
> Web: http://fusesource.com | http://www.redhat.com/
> Twitter: freemanfang
> Blog: http://freemanfang.blogspot.com
> http://blog.sina.com.cn/u/1473905042
> weibo: @Freeman小屋
>
> On 2013-3-13, at 下午10:29, Freeman Fang wrote:
>
> > Hi,
> >
> > Just get a chance to look at it, and added comment to CXF-4876. Sorry
> for this late review btw.
> > -------------
> > Freeman(Yue) Fang
> >
> > Red Hat, Inc.
> > FuseSource is now part of Red Hat
> > Web: http://fusesource.com | http://www.redhat.com/
> > Twitter: freemanfang
> > Blog: http://freemanfang.blogspot.com
> > http://blog.sina.com.cn/u/1473905042
> > weibo: @Freeman小屋
> >
> > On 2013-3-13, at 下午8:48, Min Yang wrote:
> >
> >> Hi Freeman,
> >>
> >> I'm sorry to disturb to you, but there is no any updates since last
> Friday.
> >> Could you please let me know if there is any issue in the patch I
> provided.
> >>
> >> Thanks!
> >>
> >> On Mon, Mar 11, 2013 at 2:51 PM, Min Yang <mg...@gmail.com> wrote:
> >>
> >>> Hi Freeman,
> >>>
> >>> I saw you have assgin the JIRA I opened to you last Friday, not sure if
> >>> you have chance to review the patch I submitted, any issues you found
> in
> >>> that patch?
> >>>
> >>>
> >>> On Fri, Mar 8, 2013 at 9:26 AM, Min Yang <mg...@gmail.com> wrote:
> >>>
> >>>> Hi Freeman,
> >>>>
> >>>> I have attach the patch for the issue, please review it.
> >>>> https://issues.apache.org/jira/browse/CXF-4876
> >>>> Any problems please let me know, thanks!
> >>>>
> >>>> On Wed, Mar 6, 2013 at 11:51 AM, Freeman Fang <freeman.fang@gmail.com
> >wrote:
> >>>>
> >>>>> Hi,
> >>>>>
> >>>>> I've checked the JAXWS 2.2 spec, the related part is like
> >>>>>
> >>>>> 6.5.3 javax.xml.ws.RespectBindingFeature
> >>>>>
> >>>>> The RespectBindingFeature is used to control whether a JAX-WS
> >>>>> implementation MUST respect/honor the contents of the wsdl:binding
> >>>>> associated with an endpoint. It has a corresponding RespectBinding
> >>>>> annotation described in section 7.14.3.
> >>>>>
> >>>>> ♦ Conformance (javax.xml.ws.RespectBindingFeature): When the
> >>>>> javax.xml.ws.RespectBindingFeature is enabled, a JAX-WS
> implementation MUST
> >>>>> inspect the wsdl:binding at runtime to determine result and parameter
> >>>>> bindings as well as any wsdl:extensions that have the required=true
> >>>>> attribute. All required wsdl:extensions MUST be supported and
> honored by a
> >>>>> JAX-WS implementation unless a specific wsdl:extension has be
> explicitly
> >>>>> disabled via a WebServiceFeature.
> >>>>>
> >>>>> Per the spec, yeah, I'd say this is something CXF should follow,
> would
> >>>>> you please create a jira to track it? And patch is welcomed, as
> always.
> >>>>>
> >>>>> -------------
> >>>>> Freeman(Yue) Fang
> >>>>>
> >>>>> Red Hat, Inc.
> >>>>> FuseSource is now part of Red Hat
> >>>>> Web: http://fusesource.com | http://www.redhat.com/
> >>>>> Twitter: freemanfang
> >>>>> Blog: http://freemanfang.blogspot.com
> >>>>> http://blog.sina.com.cn/u/1473905042
> >>>>> weibo: @Freeman小屋
> >>>>>
> >>>>> On 2013-3-5, at 下午3:36, Min Yang wrote:
> >>>>>
> >>>>>> Hi,
> >>>>>>
> >>>>>> When we test our application that enabled the RespectBinding
> feature,
> >>>>> we
> >>>>>> found an issue in cxf-2.6.2. The issue is if we add an invalid
> binding
> >>>>>> under wsdl:binding element as you can see in below, a
> >>>>> WebServiceException
> >>>>>> will be throw out when accessing the endpoint first time, and the
> >>>>> endpoint
> >>>>>> will not be accessed, this is behavior is correct.
> >>>>>>
> >>>>>> <binding name="EchoPortBinding" type="tns:Echo">
> >>>>>>   <soap:binding transport="http://schemas.xmlsoap.org/soap/http"
> >>>>>> style="document"/>
> >>>>>>   <tns:badBinding wsdl:required="true" uri="http://bad/bad"
> >>>>> xmlns:wsdl="
> >>>>>> http://schemas.xmlsoap.org/wsdl/" />
> >>>>>>   <operation name="echo">
> >>>>>>     <soap:operation soapAction=""/>
> >>>>>>     <input>
> >>>>>>       <soap:body use="literal"/>
> >>>>>>     </input>
> >>>>>>     <output>
> >>>>>>       <soap:body use="literal"/>
> >>>>>>     </output>
> >>>>>>     <fault name="Exception">
> >>>>>>       <soap:fault name="Exception" use="literal"/>
> >>>>>>     </fault>
> >>>>>>   </operation>
> >>>>>> </binding>
> >>>>>>
> >>>>>> But if we add the invalid binding under operation or its sub element
> >>>>>> (input, output or fault), like the example in below, then cxf will
> not
> >>>>>> check it, and the endpoint would be access after deployment,
> although
> >>>>> the
> >>>>>> wsdl4j has deserialize it as an unkown element. So I think this
> should
> >>>>> be a
> >>>>>> cxf defect, please confirm it. Thanks!
> >>>>>>
> >>>>>> <binding name="EchoPortBinding" type="tns:Echo">
> >>>>>>   <soap:binding transport="http://schemas.xmlsoap.org/soap/http"
> >>>>>> style="document"/>
> >>>>>>   <operation name="echo">
> >>>>>>     <soap:operation soapAction=""/>
> >>>>>>     <tns:badBinding wsdl:required="true" uri="http://bad/bad"
> >>>>> xmlns:wsdl="
> >>>>>> http://schemas.xmlsoap.org/wsdl/" />
> >>>>>>     <input>
> >>>>>>       <soap:body use="literal"/>
> >>>>>>     </input>
> >>>>>>     <output>
> >>>>>>       <soap:body use="literal"/>
> >>>>>>     </output>
> >>>>>>     <fault name="Exception">
> >>>>>>       <soap:fault name="Exception" use="literal"/>
> >>>>>>     </fault>
> >>>>>>   </operation>
> >>>>>> </binding>
> >>>>>
> >>>>>
> >>>>
> >>>
> >
>
>

Re: CXF RespectBinding feature does not support the customized binding info under operation and its sub element.

Posted by Freeman Fang <fr...@gmail.com>.
Seems the jira isn't reachable now, so just paste my comment here

Hi Alan,

I'm OK with this patch basically, would you please also add testcase for this functionality?

You can extend the RespectBindingFeatureClientServerTest(and the wsdl used for this test)[1] to cover your scenario.
[1]http://svn.apache.org/viewvc?view=revision&revision=1177248

Thanks
Freeman
-------------
Freeman(Yue) Fang

Red Hat, Inc. 
FuseSource is now part of Red Hat
Web: http://fusesource.com | http://www.redhat.com/
Twitter: freemanfang
Blog: http://freemanfang.blogspot.com
http://blog.sina.com.cn/u/1473905042
weibo: @Freeman小屋

On 2013-3-13, at 下午10:29, Freeman Fang wrote:

> Hi,
> 
> Just get a chance to look at it, and added comment to CXF-4876. Sorry for this late review btw.
> -------------
> Freeman(Yue) Fang
> 
> Red Hat, Inc. 
> FuseSource is now part of Red Hat
> Web: http://fusesource.com | http://www.redhat.com/
> Twitter: freemanfang
> Blog: http://freemanfang.blogspot.com
> http://blog.sina.com.cn/u/1473905042
> weibo: @Freeman小屋
> 
> On 2013-3-13, at 下午8:48, Min Yang wrote:
> 
>> Hi Freeman,
>> 
>> I'm sorry to disturb to you, but there is no any updates since last Friday.
>> Could you please let me know if there is any issue in the patch I provided.
>> 
>> Thanks!
>> 
>> On Mon, Mar 11, 2013 at 2:51 PM, Min Yang <mg...@gmail.com> wrote:
>> 
>>> Hi Freeman,
>>> 
>>> I saw you have assgin the JIRA I opened to you last Friday, not sure if
>>> you have chance to review the patch I submitted, any issues you found in
>>> that patch?
>>> 
>>> 
>>> On Fri, Mar 8, 2013 at 9:26 AM, Min Yang <mg...@gmail.com> wrote:
>>> 
>>>> Hi Freeman,
>>>> 
>>>> I have attach the patch for the issue, please review it.
>>>> https://issues.apache.org/jira/browse/CXF-4876
>>>> Any problems please let me know, thanks!
>>>> 
>>>> On Wed, Mar 6, 2013 at 11:51 AM, Freeman Fang <fr...@gmail.com>wrote:
>>>> 
>>>>> Hi,
>>>>> 
>>>>> I've checked the JAXWS 2.2 spec, the related part is like
>>>>> 
>>>>> 6.5.3 javax.xml.ws.RespectBindingFeature
>>>>> 
>>>>> The RespectBindingFeature is used to control whether a JAX-WS
>>>>> implementation MUST respect/honor the contents of the wsdl:binding
>>>>> associated with an endpoint. It has a corresponding RespectBinding
>>>>> annotation described in section 7.14.3.
>>>>> 
>>>>> ♦ Conformance (javax.xml.ws.RespectBindingFeature): When the
>>>>> javax.xml.ws.RespectBindingFeature is enabled, a JAX-WS implementation MUST
>>>>> inspect the wsdl:binding at runtime to determine result and parameter
>>>>> bindings as well as any wsdl:extensions that have the required=true
>>>>> attribute. All required wsdl:extensions MUST be supported and honored by a
>>>>> JAX-WS implementation unless a specific wsdl:extension has be explicitly
>>>>> disabled via a WebServiceFeature.
>>>>> 
>>>>> Per the spec, yeah, I'd say this is something CXF should follow, would
>>>>> you please create a jira to track it? And patch is welcomed, as always.
>>>>> 
>>>>> -------------
>>>>> Freeman(Yue) Fang
>>>>> 
>>>>> Red Hat, Inc.
>>>>> FuseSource is now part of Red Hat
>>>>> Web: http://fusesource.com | http://www.redhat.com/
>>>>> Twitter: freemanfang
>>>>> Blog: http://freemanfang.blogspot.com
>>>>> http://blog.sina.com.cn/u/1473905042
>>>>> weibo: @Freeman小屋
>>>>> 
>>>>> On 2013-3-5, at 下午3:36, Min Yang wrote:
>>>>> 
>>>>>> Hi,
>>>>>> 
>>>>>> When we test our application that enabled the RespectBinding feature,
>>>>> we
>>>>>> found an issue in cxf-2.6.2. The issue is if we add an invalid binding
>>>>>> under wsdl:binding element as you can see in below, a
>>>>> WebServiceException
>>>>>> will be throw out when accessing the endpoint first time, and the
>>>>> endpoint
>>>>>> will not be accessed, this is behavior is correct.
>>>>>> 
>>>>>> <binding name="EchoPortBinding" type="tns:Echo">
>>>>>>   <soap:binding transport="http://schemas.xmlsoap.org/soap/http"
>>>>>> style="document"/>
>>>>>>   <tns:badBinding wsdl:required="true" uri="http://bad/bad"
>>>>> xmlns:wsdl="
>>>>>> http://schemas.xmlsoap.org/wsdl/" />
>>>>>>   <operation name="echo">
>>>>>>     <soap:operation soapAction=""/>
>>>>>>     <input>
>>>>>>       <soap:body use="literal"/>
>>>>>>     </input>
>>>>>>     <output>
>>>>>>       <soap:body use="literal"/>
>>>>>>     </output>
>>>>>>     <fault name="Exception">
>>>>>>       <soap:fault name="Exception" use="literal"/>
>>>>>>     </fault>
>>>>>>   </operation>
>>>>>> </binding>
>>>>>> 
>>>>>> But if we add the invalid binding under operation or its sub element
>>>>>> (input, output or fault), like the example in below, then cxf will not
>>>>>> check it, and the endpoint would be access after deployment, although
>>>>> the
>>>>>> wsdl4j has deserialize it as an unkown element. So I think this should
>>>>> be a
>>>>>> cxf defect, please confirm it. Thanks!
>>>>>> 
>>>>>> <binding name="EchoPortBinding" type="tns:Echo">
>>>>>>   <soap:binding transport="http://schemas.xmlsoap.org/soap/http"
>>>>>> style="document"/>
>>>>>>   <operation name="echo">
>>>>>>     <soap:operation soapAction=""/>
>>>>>>     <tns:badBinding wsdl:required="true" uri="http://bad/bad"
>>>>> xmlns:wsdl="
>>>>>> http://schemas.xmlsoap.org/wsdl/" />
>>>>>>     <input>
>>>>>>       <soap:body use="literal"/>
>>>>>>     </input>
>>>>>>     <output>
>>>>>>       <soap:body use="literal"/>
>>>>>>     </output>
>>>>>>     <fault name="Exception">
>>>>>>       <soap:fault name="Exception" use="literal"/>
>>>>>>     </fault>
>>>>>>   </operation>
>>>>>> </binding>
>>>>> 
>>>>> 
>>>> 
>>> 
> 


Re: CXF RespectBinding feature does not support the customized binding info under operation and its sub element.

Posted by Freeman Fang <fr...@gmail.com>.
Hi,

Just get a chance to look at it, and added comment to CXF-4876. Sorry for this late review btw.
-------------
Freeman(Yue) Fang

Red Hat, Inc. 
FuseSource is now part of Red Hat
Web: http://fusesource.com | http://www.redhat.com/
Twitter: freemanfang
Blog: http://freemanfang.blogspot.com
http://blog.sina.com.cn/u/1473905042
weibo: @Freeman小屋

On 2013-3-13, at 下午8:48, Min Yang wrote:

> Hi Freeman,
> 
> I'm sorry to disturb to you, but there is no any updates since last Friday.
> Could you please let me know if there is any issue in the patch I provided.
> 
> Thanks!
> 
> On Mon, Mar 11, 2013 at 2:51 PM, Min Yang <mg...@gmail.com> wrote:
> 
>> Hi Freeman,
>> 
>> I saw you have assgin the JIRA I opened to you last Friday, not sure if
>> you have chance to review the patch I submitted, any issues you found in
>> that patch?
>> 
>> 
>> On Fri, Mar 8, 2013 at 9:26 AM, Min Yang <mg...@gmail.com> wrote:
>> 
>>> Hi Freeman,
>>> 
>>> I have attach the patch for the issue, please review it.
>>> https://issues.apache.org/jira/browse/CXF-4876
>>> Any problems please let me know, thanks!
>>> 
>>> On Wed, Mar 6, 2013 at 11:51 AM, Freeman Fang <fr...@gmail.com>wrote:
>>> 
>>>> Hi,
>>>> 
>>>> I've checked the JAXWS 2.2 spec, the related part is like
>>>> 
>>>> 6.5.3 javax.xml.ws.RespectBindingFeature
>>>> 
>>>> The RespectBindingFeature is used to control whether a JAX-WS
>>>> implementation MUST respect/honor the contents of the wsdl:binding
>>>> associated with an endpoint. It has a corresponding RespectBinding
>>>> annotation described in section 7.14.3.
>>>> 
>>>> ♦ Conformance (javax.xml.ws.RespectBindingFeature): When the
>>>> javax.xml.ws.RespectBindingFeature is enabled, a JAX-WS implementation MUST
>>>> inspect the wsdl:binding at runtime to determine result and parameter
>>>> bindings as well as any wsdl:extensions that have the required=true
>>>> attribute. All required wsdl:extensions MUST be supported and honored by a
>>>> JAX-WS implementation unless a specific wsdl:extension has be explicitly
>>>> disabled via a WebServiceFeature.
>>>> 
>>>> Per the spec, yeah, I'd say this is something CXF should follow, would
>>>> you please create a jira to track it? And patch is welcomed, as always.
>>>> 
>>>> -------------
>>>> Freeman(Yue) Fang
>>>> 
>>>> Red Hat, Inc.
>>>> FuseSource is now part of Red Hat
>>>> Web: http://fusesource.com | http://www.redhat.com/
>>>> Twitter: freemanfang
>>>> Blog: http://freemanfang.blogspot.com
>>>> http://blog.sina.com.cn/u/1473905042
>>>> weibo: @Freeman小屋
>>>> 
>>>> On 2013-3-5, at 下午3:36, Min Yang wrote:
>>>> 
>>>>> Hi,
>>>>> 
>>>>> When we test our application that enabled the RespectBinding feature,
>>>> we
>>>>> found an issue in cxf-2.6.2. The issue is if we add an invalid binding
>>>>> under wsdl:binding element as you can see in below, a
>>>> WebServiceException
>>>>> will be throw out when accessing the endpoint first time, and the
>>>> endpoint
>>>>> will not be accessed, this is behavior is correct.
>>>>> 
>>>>> <binding name="EchoPortBinding" type="tns:Echo">
>>>>>   <soap:binding transport="http://schemas.xmlsoap.org/soap/http"
>>>>> style="document"/>
>>>>>   <tns:badBinding wsdl:required="true" uri="http://bad/bad"
>>>> xmlns:wsdl="
>>>>> http://schemas.xmlsoap.org/wsdl/" />
>>>>>   <operation name="echo">
>>>>>     <soap:operation soapAction=""/>
>>>>>     <input>
>>>>>       <soap:body use="literal"/>
>>>>>     </input>
>>>>>     <output>
>>>>>       <soap:body use="literal"/>
>>>>>     </output>
>>>>>     <fault name="Exception">
>>>>>       <soap:fault name="Exception" use="literal"/>
>>>>>     </fault>
>>>>>   </operation>
>>>>> </binding>
>>>>> 
>>>>> But if we add the invalid binding under operation or its sub element
>>>>> (input, output or fault), like the example in below, then cxf will not
>>>>> check it, and the endpoint would be access after deployment, although
>>>> the
>>>>> wsdl4j has deserialize it as an unkown element. So I think this should
>>>> be a
>>>>> cxf defect, please confirm it. Thanks!
>>>>> 
>>>>> <binding name="EchoPortBinding" type="tns:Echo">
>>>>>   <soap:binding transport="http://schemas.xmlsoap.org/soap/http"
>>>>> style="document"/>
>>>>>   <operation name="echo">
>>>>>     <soap:operation soapAction=""/>
>>>>>     <tns:badBinding wsdl:required="true" uri="http://bad/bad"
>>>> xmlns:wsdl="
>>>>> http://schemas.xmlsoap.org/wsdl/" />
>>>>>     <input>
>>>>>       <soap:body use="literal"/>
>>>>>     </input>
>>>>>     <output>
>>>>>       <soap:body use="literal"/>
>>>>>     </output>
>>>>>     <fault name="Exception">
>>>>>       <soap:fault name="Exception" use="literal"/>
>>>>>     </fault>
>>>>>   </operation>
>>>>> </binding>
>>>> 
>>>> 
>>> 
>> 


Re: CXF RespectBinding feature does not support the customized binding info under operation and its sub element.

Posted by Min Yang <mg...@gmail.com>.
Hi Freeman,

I'm sorry to disturb to you, but there is no any updates since last Friday.
Could you please let me know if there is any issue in the patch I provided.

Thanks!

On Mon, Mar 11, 2013 at 2:51 PM, Min Yang <mg...@gmail.com> wrote:

> Hi Freeman,
>
> I saw you have assgin the JIRA I opened to you last Friday, not sure if
> you have chance to review the patch I submitted, any issues you found in
> that patch?
>
>
> On Fri, Mar 8, 2013 at 9:26 AM, Min Yang <mg...@gmail.com> wrote:
>
>> Hi Freeman,
>>
>> I have attach the patch for the issue, please review it.
>> https://issues.apache.org/jira/browse/CXF-4876
>> Any problems please let me know, thanks!
>>
>> On Wed, Mar 6, 2013 at 11:51 AM, Freeman Fang <fr...@gmail.com>wrote:
>>
>>> Hi,
>>>
>>> I've checked the JAXWS 2.2 spec, the related part is like
>>>
>>> 6.5.3 javax.xml.ws.RespectBindingFeature
>>>
>>> The RespectBindingFeature is used to control whether a JAX-WS
>>> implementation MUST respect/honor the contents of the wsdl:binding
>>> associated with an endpoint. It has a corresponding RespectBinding
>>> annotation described in section 7.14.3.
>>>
>>> ♦ Conformance (javax.xml.ws.RespectBindingFeature): When the
>>> javax.xml.ws.RespectBindingFeature is enabled, a JAX-WS implementation MUST
>>> inspect the wsdl:binding at runtime to determine result and parameter
>>> bindings as well as any wsdl:extensions that have the required=true
>>> attribute. All required wsdl:extensions MUST be supported and honored by a
>>> JAX-WS implementation unless a specific wsdl:extension has be explicitly
>>> disabled via a WebServiceFeature.
>>>
>>> Per the spec, yeah, I'd say this is something CXF should follow, would
>>> you please create a jira to track it? And patch is welcomed, as always.
>>>
>>> -------------
>>> Freeman(Yue) Fang
>>>
>>> Red Hat, Inc.
>>> FuseSource is now part of Red Hat
>>> Web: http://fusesource.com | http://www.redhat.com/
>>> Twitter: freemanfang
>>> Blog: http://freemanfang.blogspot.com
>>> http://blog.sina.com.cn/u/1473905042
>>> weibo: @Freeman小屋
>>>
>>> On 2013-3-5, at 下午3:36, Min Yang wrote:
>>>
>>> > Hi,
>>> >
>>> > When we test our application that enabled the RespectBinding feature,
>>> we
>>> > found an issue in cxf-2.6.2. The issue is if we add an invalid binding
>>> > under wsdl:binding element as you can see in below, a
>>> WebServiceException
>>> > will be throw out when accessing the endpoint first time, and the
>>> endpoint
>>> > will not be accessed, this is behavior is correct.
>>> >
>>> >  <binding name="EchoPortBinding" type="tns:Echo">
>>> >    <soap:binding transport="http://schemas.xmlsoap.org/soap/http"
>>> > style="document"/>
>>> >    <tns:badBinding wsdl:required="true" uri="http://bad/bad"
>>> xmlns:wsdl="
>>> > http://schemas.xmlsoap.org/wsdl/" />
>>> >    <operation name="echo">
>>> >      <soap:operation soapAction=""/>
>>> >      <input>
>>> >        <soap:body use="literal"/>
>>> >      </input>
>>> >      <output>
>>> >        <soap:body use="literal"/>
>>> >      </output>
>>> >      <fault name="Exception">
>>> >        <soap:fault name="Exception" use="literal"/>
>>> >      </fault>
>>> >    </operation>
>>> >  </binding>
>>> >
>>> > But if we add the invalid binding under operation or its sub element
>>> > (input, output or fault), like the example in below, then cxf will not
>>> > check it, and the endpoint would be access after deployment, although
>>> the
>>> > wsdl4j has deserialize it as an unkown element. So I think this should
>>> be a
>>> > cxf defect, please confirm it. Thanks!
>>> >
>>> >  <binding name="EchoPortBinding" type="tns:Echo">
>>> >    <soap:binding transport="http://schemas.xmlsoap.org/soap/http"
>>> > style="document"/>
>>> >    <operation name="echo">
>>> >      <soap:operation soapAction=""/>
>>> >      <tns:badBinding wsdl:required="true" uri="http://bad/bad"
>>> xmlns:wsdl="
>>> > http://schemas.xmlsoap.org/wsdl/" />
>>> >      <input>
>>> >        <soap:body use="literal"/>
>>> >      </input>
>>> >      <output>
>>> >        <soap:body use="literal"/>
>>> >      </output>
>>> >      <fault name="Exception">
>>> >        <soap:fault name="Exception" use="literal"/>
>>> >      </fault>
>>> >    </operation>
>>> >  </binding>
>>>
>>>
>>
>

Re: CXF RespectBinding feature does not support the customized binding info under operation and its sub element.

Posted by Min Yang <mg...@gmail.com>.
Hi Freeman,

I saw you have assgin the JIRA I opened to you last Friday, not sure if you
have chance to review the patch I submitted, any issues you found in that
patch?

On Fri, Mar 8, 2013 at 9:26 AM, Min Yang <mg...@gmail.com> wrote:

> Hi Freeman,
>
> I have attach the patch for the issue, please review it.
> https://issues.apache.org/jira/browse/CXF-4876
> Any problems please let me know, thanks!
>
> On Wed, Mar 6, 2013 at 11:51 AM, Freeman Fang <fr...@gmail.com>wrote:
>
>> Hi,
>>
>> I've checked the JAXWS 2.2 spec, the related part is like
>>
>> 6.5.3 javax.xml.ws.RespectBindingFeature
>>
>> The RespectBindingFeature is used to control whether a JAX-WS
>> implementation MUST respect/honor the contents of the wsdl:binding
>> associated with an endpoint. It has a corresponding RespectBinding
>> annotation described in section 7.14.3.
>>
>> ♦ Conformance (javax.xml.ws.RespectBindingFeature): When the
>> javax.xml.ws.RespectBindingFeature is enabled, a JAX-WS implementation MUST
>> inspect the wsdl:binding at runtime to determine result and parameter
>> bindings as well as any wsdl:extensions that have the required=true
>> attribute. All required wsdl:extensions MUST be supported and honored by a
>> JAX-WS implementation unless a specific wsdl:extension has be explicitly
>> disabled via a WebServiceFeature.
>>
>> Per the spec, yeah, I'd say this is something CXF should follow, would
>> you please create a jira to track it? And patch is welcomed, as always.
>>
>> -------------
>> Freeman(Yue) Fang
>>
>> Red Hat, Inc.
>> FuseSource is now part of Red Hat
>> Web: http://fusesource.com | http://www.redhat.com/
>> Twitter: freemanfang
>> Blog: http://freemanfang.blogspot.com
>> http://blog.sina.com.cn/u/1473905042
>> weibo: @Freeman小屋
>>
>> On 2013-3-5, at 下午3:36, Min Yang wrote:
>>
>> > Hi,
>> >
>> > When we test our application that enabled the RespectBinding feature, we
>> > found an issue in cxf-2.6.2. The issue is if we add an invalid binding
>> > under wsdl:binding element as you can see in below, a
>> WebServiceException
>> > will be throw out when accessing the endpoint first time, and the
>> endpoint
>> > will not be accessed, this is behavior is correct.
>> >
>> >  <binding name="EchoPortBinding" type="tns:Echo">
>> >    <soap:binding transport="http://schemas.xmlsoap.org/soap/http"
>> > style="document"/>
>> >    <tns:badBinding wsdl:required="true" uri="http://bad/bad"
>> xmlns:wsdl="
>> > http://schemas.xmlsoap.org/wsdl/" />
>> >    <operation name="echo">
>> >      <soap:operation soapAction=""/>
>> >      <input>
>> >        <soap:body use="literal"/>
>> >      </input>
>> >      <output>
>> >        <soap:body use="literal"/>
>> >      </output>
>> >      <fault name="Exception">
>> >        <soap:fault name="Exception" use="literal"/>
>> >      </fault>
>> >    </operation>
>> >  </binding>
>> >
>> > But if we add the invalid binding under operation or its sub element
>> > (input, output or fault), like the example in below, then cxf will not
>> > check it, and the endpoint would be access after deployment, although
>> the
>> > wsdl4j has deserialize it as an unkown element. So I think this should
>> be a
>> > cxf defect, please confirm it. Thanks!
>> >
>> >  <binding name="EchoPortBinding" type="tns:Echo">
>> >    <soap:binding transport="http://schemas.xmlsoap.org/soap/http"
>> > style="document"/>
>> >    <operation name="echo">
>> >      <soap:operation soapAction=""/>
>> >      <tns:badBinding wsdl:required="true" uri="http://bad/bad"
>> xmlns:wsdl="
>> > http://schemas.xmlsoap.org/wsdl/" />
>> >      <input>
>> >        <soap:body use="literal"/>
>> >      </input>
>> >      <output>
>> >        <soap:body use="literal"/>
>> >      </output>
>> >      <fault name="Exception">
>> >        <soap:fault name="Exception" use="literal"/>
>> >      </fault>
>> >    </operation>
>> >  </binding>
>>
>>
>

Re: CXF RespectBinding feature does not support the customized binding info under operation and its sub element.

Posted by Min Yang <mg...@gmail.com>.
Hi Freeman,

I have attach the patch for the issue, please review it.
https://issues.apache.org/jira/browse/CXF-4876
Any problems please let me know, thanks!

On Wed, Mar 6, 2013 at 11:51 AM, Freeman Fang <fr...@gmail.com>wrote:

> Hi,
>
> I've checked the JAXWS 2.2 spec, the related part is like
>
> 6.5.3 javax.xml.ws.RespectBindingFeature
>
> The RespectBindingFeature is used to control whether a JAX-WS
> implementation MUST respect/honor the contents of the wsdl:binding
> associated with an endpoint. It has a corresponding RespectBinding
> annotation described in section 7.14.3.
>
> ♦ Conformance (javax.xml.ws.RespectBindingFeature): When the
> javax.xml.ws.RespectBindingFeature is enabled, a JAX-WS implementation MUST
> inspect the wsdl:binding at runtime to determine result and parameter
> bindings as well as any wsdl:extensions that have the required=true
> attribute. All required wsdl:extensions MUST be supported and honored by a
> JAX-WS implementation unless a specific wsdl:extension has be explicitly
> disabled via a WebServiceFeature.
>
> Per the spec, yeah, I'd say this is something CXF should follow, would you
> please create a jira to track it? And patch is welcomed, as always.
>
> -------------
> Freeman(Yue) Fang
>
> Red Hat, Inc.
> FuseSource is now part of Red Hat
> Web: http://fusesource.com | http://www.redhat.com/
> Twitter: freemanfang
> Blog: http://freemanfang.blogspot.com
> http://blog.sina.com.cn/u/1473905042
> weibo: @Freeman小屋
>
> On 2013-3-5, at 下午3:36, Min Yang wrote:
>
> > Hi,
> >
> > When we test our application that enabled the RespectBinding feature, we
> > found an issue in cxf-2.6.2. The issue is if we add an invalid binding
> > under wsdl:binding element as you can see in below, a WebServiceException
> > will be throw out when accessing the endpoint first time, and the
> endpoint
> > will not be accessed, this is behavior is correct.
> >
> >  <binding name="EchoPortBinding" type="tns:Echo">
> >    <soap:binding transport="http://schemas.xmlsoap.org/soap/http"
> > style="document"/>
> >    <tns:badBinding wsdl:required="true" uri="http://bad/bad"
> xmlns:wsdl="
> > http://schemas.xmlsoap.org/wsdl/" />
> >    <operation name="echo">
> >      <soap:operation soapAction=""/>
> >      <input>
> >        <soap:body use="literal"/>
> >      </input>
> >      <output>
> >        <soap:body use="literal"/>
> >      </output>
> >      <fault name="Exception">
> >        <soap:fault name="Exception" use="literal"/>
> >      </fault>
> >    </operation>
> >  </binding>
> >
> > But if we add the invalid binding under operation or its sub element
> > (input, output or fault), like the example in below, then cxf will not
> > check it, and the endpoint would be access after deployment, although the
> > wsdl4j has deserialize it as an unkown element. So I think this should
> be a
> > cxf defect, please confirm it. Thanks!
> >
> >  <binding name="EchoPortBinding" type="tns:Echo">
> >    <soap:binding transport="http://schemas.xmlsoap.org/soap/http"
> > style="document"/>
> >    <operation name="echo">
> >      <soap:operation soapAction=""/>
> >      <tns:badBinding wsdl:required="true" uri="http://bad/bad"
> xmlns:wsdl="
> > http://schemas.xmlsoap.org/wsdl/" />
> >      <input>
> >        <soap:body use="literal"/>
> >      </input>
> >      <output>
> >        <soap:body use="literal"/>
> >      </output>
> >      <fault name="Exception">
> >        <soap:fault name="Exception" use="literal"/>
> >      </fault>
> >    </operation>
> >  </binding>
>
>

Re: CXF RespectBinding feature does not support the customized binding info under operation and its sub element.

Posted by Min Yang <mg...@gmail.com>.
ok, I will do that today! Thanks for your response. :)

On Wed, Mar 6, 2013 at 11:51 AM, Freeman Fang <fr...@gmail.com>wrote:

> Hi,
>
> I've checked the JAXWS 2.2 spec, the related part is like
>
> 6.5.3 javax.xml.ws.RespectBindingFeature
>
> The RespectBindingFeature is used to control whether a JAX-WS
> implementation MUST respect/honor the contents of the wsdl:binding
> associated with an endpoint. It has a corresponding RespectBinding
> annotation described in section 7.14.3.
>
> ♦ Conformance (javax.xml.ws.RespectBindingFeature): When the
> javax.xml.ws.RespectBindingFeature is enabled, a JAX-WS implementation MUST
> inspect the wsdl:binding at runtime to determine result and parameter
> bindings as well as any wsdl:extensions that have the required=true
> attribute. All required wsdl:extensions MUST be supported and honored by a
> JAX-WS implementation unless a specific wsdl:extension has be explicitly
> disabled via a WebServiceFeature.
>
> Per the spec, yeah, I'd say this is something CXF should follow, would you
> please create a jira to track it? And patch is welcomed, as always.
>
> -------------
> Freeman(Yue) Fang
>
> Red Hat, Inc.
> FuseSource is now part of Red Hat
> Web: http://fusesource.com | http://www.redhat.com/
> Twitter: freemanfang
> Blog: http://freemanfang.blogspot.com
> http://blog.sina.com.cn/u/1473905042
> weibo: @Freeman小屋
>
> On 2013-3-5, at 下午3:36, Min Yang wrote:
>
> > Hi,
> >
> > When we test our application that enabled the RespectBinding feature, we
> > found an issue in cxf-2.6.2. The issue is if we add an invalid binding
> > under wsdl:binding element as you can see in below, a WebServiceException
> > will be throw out when accessing the endpoint first time, and the
> endpoint
> > will not be accessed, this is behavior is correct.
> >
> >  <binding name="EchoPortBinding" type="tns:Echo">
> >    <soap:binding transport="http://schemas.xmlsoap.org/soap/http"
> > style="document"/>
> >    <tns:badBinding wsdl:required="true" uri="http://bad/bad"
> xmlns:wsdl="
> > http://schemas.xmlsoap.org/wsdl/" />
> >    <operation name="echo">
> >      <soap:operation soapAction=""/>
> >      <input>
> >        <soap:body use="literal"/>
> >      </input>
> >      <output>
> >        <soap:body use="literal"/>
> >      </output>
> >      <fault name="Exception">
> >        <soap:fault name="Exception" use="literal"/>
> >      </fault>
> >    </operation>
> >  </binding>
> >
> > But if we add the invalid binding under operation or its sub element
> > (input, output or fault), like the example in below, then cxf will not
> > check it, and the endpoint would be access after deployment, although the
> > wsdl4j has deserialize it as an unkown element. So I think this should
> be a
> > cxf defect, please confirm it. Thanks!
> >
> >  <binding name="EchoPortBinding" type="tns:Echo">
> >    <soap:binding transport="http://schemas.xmlsoap.org/soap/http"
> > style="document"/>
> >    <operation name="echo">
> >      <soap:operation soapAction=""/>
> >      <tns:badBinding wsdl:required="true" uri="http://bad/bad"
> xmlns:wsdl="
> > http://schemas.xmlsoap.org/wsdl/" />
> >      <input>
> >        <soap:body use="literal"/>
> >      </input>
> >      <output>
> >        <soap:body use="literal"/>
> >      </output>
> >      <fault name="Exception">
> >        <soap:fault name="Exception" use="literal"/>
> >      </fault>
> >    </operation>
> >  </binding>
>
>

Re: CXF RespectBinding feature does not support the customized binding info under operation and its sub element.

Posted by Freeman Fang <fr...@gmail.com>.
Hi,

I've checked the JAXWS 2.2 spec, the related part is like

6.5.3 javax.xml.ws.RespectBindingFeature

The RespectBindingFeature is used to control whether a JAX-WS implementation MUST respect/honor the contents of the wsdl:binding associated with an endpoint. It has a corresponding RespectBinding annotation described in section 7.14.3.

♦ Conformance (javax.xml.ws.RespectBindingFeature): When the javax.xml.ws.RespectBindingFeature is enabled, a JAX-WS implementation MUST inspect the wsdl:binding at runtime to determine result and parameter bindings as well as any wsdl:extensions that have the required=true attribute. All required wsdl:extensions MUST be supported and honored by a JAX-WS implementation unless a specific wsdl:extension has be explicitly disabled via a WebServiceFeature.

Per the spec, yeah, I'd say this is something CXF should follow, would you please create a jira to track it? And patch is welcomed, as always.

-------------
Freeman(Yue) Fang

Red Hat, Inc. 
FuseSource is now part of Red Hat
Web: http://fusesource.com | http://www.redhat.com/
Twitter: freemanfang
Blog: http://freemanfang.blogspot.com
http://blog.sina.com.cn/u/1473905042
weibo: @Freeman小屋

On 2013-3-5, at 下午3:36, Min Yang wrote:

> Hi,
> 
> When we test our application that enabled the RespectBinding feature, we
> found an issue in cxf-2.6.2. The issue is if we add an invalid binding
> under wsdl:binding element as you can see in below, a WebServiceException
> will be throw out when accessing the endpoint first time, and the endpoint
> will not be accessed, this is behavior is correct.
> 
>  <binding name="EchoPortBinding" type="tns:Echo">
>    <soap:binding transport="http://schemas.xmlsoap.org/soap/http"
> style="document"/>
>    <tns:badBinding wsdl:required="true" uri="http://bad/bad" xmlns:wsdl="
> http://schemas.xmlsoap.org/wsdl/" />
>    <operation name="echo">
>      <soap:operation soapAction=""/>
>      <input>
>        <soap:body use="literal"/>
>      </input>
>      <output>
>        <soap:body use="literal"/>
>      </output>
>      <fault name="Exception">
>        <soap:fault name="Exception" use="literal"/>
>      </fault>
>    </operation>
>  </binding>
> 
> But if we add the invalid binding under operation or its sub element
> (input, output or fault), like the example in below, then cxf will not
> check it, and the endpoint would be access after deployment, although the
> wsdl4j has deserialize it as an unkown element. So I think this should be a
> cxf defect, please confirm it. Thanks!
> 
>  <binding name="EchoPortBinding" type="tns:Echo">
>    <soap:binding transport="http://schemas.xmlsoap.org/soap/http"
> style="document"/>
>    <operation name="echo">
>      <soap:operation soapAction=""/>
>      <tns:badBinding wsdl:required="true" uri="http://bad/bad" xmlns:wsdl="
> http://schemas.xmlsoap.org/wsdl/" />
>      <input>
>        <soap:body use="literal"/>
>      </input>
>      <output>
>        <soap:body use="literal"/>
>      </output>
>      <fault name="Exception">
>        <soap:fault name="Exception" use="literal"/>
>      </fault>
>    </operation>
>  </binding>