Hi Dan,

Yes, turn on validate reject it.
Thanks

Freeman
-------------
Freeman Fang

FuseSource
Email:[email protected]
Web: fusesource.com
Twitter: freemanfang
Blog: http://freemanfang.blogspot.com
http://blog.sina.com.cn/u/1473905042
weibo: http://weibo.com/u/1473905042

On 2012-9-3, at 下午8:39, [email protected] wrote:

> Freeman 
> 
> It's an invalid WSDL and should be rejected by the code generator. If you run 
> with validation turned on, does it reject it?
> 
> With WSDL1, operations without an output cannot throw faults. 
> 
> Daniel Kulp
> http://dankulp.com/blog
> 
> 
> On Sep 3, 2012, at 4:43 AM, Freeman Fang <[email protected]> wrote:
> 
>> Hi,
>> 
>> Currently when we use wsdl first way, if an operation in the wsdl have input 
>> and fault but no output, then it would be considered as a oneway operation,  
>> we can see a auto-generated oneway operation can throw exception.
>> Is this behavior correct? I doubt it but I checked the JAXWS spec but can't 
>> find clear definition about this part. 
>> 
>> When use code first way, if a java method has Oneway annotation, then it's 
>> fault would be ignore, you can see it from ReflectionServiceFactoryBean
>>      if (hasOut) {
>>           // Faults are only valid if not a one-way operation
>>           initializeFaults(intf, op, method);
>>       }
>> 
>> So the way we process oneway is different between wsdl-first and code-first. 
>> In wsdl-first, we keep the fault but in code-first we ignore the fault. This 
>> mismatch could cause problem like CXF-4493, I think we should unify oneway 
>> behavior between wsdl-first and code-first.
>> 
>> Any thoughts?
>> 
>> Thanks
>> Freeman
>> -------------
>> Freeman Fang
>> 
>> FuseSource
>> Email:[email protected]
>> Web: fusesource.com
>> Twitter: freemanfang
>> Blog: http://freemanfang.blogspot.com
>> http://blog.sina.com.cn/u/1473905042
>> weibo: http://weibo.com/u/1473905042
>> 
>> 

Reply via email to