Brian,
We are trying to make sure our Jsr181 implementation is correct with respect to header and soap binding. Our issue is with JWS method signature that includes header arguments and their corresponding WSDL's port type and the soap binding. It seems that when looking at a WSDL (as far as headers are concerns) there are two cases: a) a wsd:part of a message that is also has a corresponding soap:header in the bindings. b) a soap:header in your port type's binding without a corresponding message part in the port type. Our understanding is that port type corresponds to the arguments in your method signature, and that in case of Soap the binding further declares if the argument is in the body or the header. Therefore in case (a) we expect to see the header arguments to be part of our method signature (as they are defined in the messages associated with the port type) On the other hand in the case (b) we don't expect the method signature to include the soap:header arguments, as they were not defined in the port type message. Our expectation is that in case (b) the header is processed by a handler outside the jws. The sample we have in JSR 181 section 5.4.1.3 seems to be of type (a) at least as far as the java code is concern, but its WSDL is of type (b). It seem that the WSDL and JWS files in the section 5.4.1.3 are in conflict. In our understanding if we want to keep the jws then the "SercurePing" message should have two parts: Ping and SecHeader as oppose to just a Ping. Or if the WSDL is correct then the securePing method should not have the SecHeader parameter, in which case there should be a handler that deals with the SecHeader. Make sense? Daryoush
