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
