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