Dan, I've recently developed a fondness for Simple, and let me explain why, because I think you are going to tell me that I'm confused.
I don't ever want a client to read a WSDL from the server, or anywhere else. I am using CXF as a transport between a set of components that all belong to me, and are developed in sync, and do not need the extra time and complexity of WSDL machinations. I also don't even want to consume one neuron on worrying about proxy thread-safety. My understanding is that JAX-WS reserves the right to screw me if I don't read the WSDL into the client endpoint, even if it *should* *usually* work. I don't like to be explaining those *'s to skeptical co-workers. If, in fact, the spec for JAX-WS legitimizes my simple case, I'd much prefer to be configuring with snails and using JAX-WS+Aegis. --benson On Fri, Oct 8, 2010 at 10:13 AM, Daniel Kulp <[email protected]> wrote: > On Wednesday 06 October 2010 7:52:52 am Benson Margulies wrote: >> I found myself explaining the 'interfaces don't carry param names' >> business to a coworker the other day. Thinking about it, I realized >> that there's still a pretty good trap hiding in all this, and I'm >> wondering if we should do something about it. >> >> Here's my theoretical trap. Unsuspecting Java-first implementor has >> options set to compile Java with debug info, so there are parameter >> names in their interfaces. >> >> Some day, some evil build engineer comes along and removes the symbols >> from the production build. Oops, new WSDL. >> >> It seems to me that it would be better if the factories accepted a >> boolean that instructed them to ignore the param names in interfaces, >> so as to produce repeatable results regardless of the compile options. >> >> Presumably, this isn't in the JAX-WS spec, but we could do it for Simple. > > The simple frontend really needs a ConfigurableServiceConfiguration object or > similar that provides a bunch of configuration points. The one-way issue is > another one. It could have a "setOneWays(List<String>) or similar for the > list of one-way methods, the flag you mention above, etc.... Maybe a > "setMethodParamNames(Map<String, List<String>)" type things to allow people to > configure in custome parameter names. > > That said, I'm increasingly been wondering why people still use the simple > frontend. :-) I think the JAX-WS frontend handles everything the simple > frontend handles. (aegis vs jaxb is a different issue) But the JAX-WS > frontend is WAY more controllable from within the code via annotations. > > -- > Daniel Kulp > [email protected] > http://dankulp.com/blog >
