When we built wsdl2js, we were working with a soap toolkit that allowed us to control the namespace prefixes used in the WSDL (and the actual wire protocol). This had a happy side-effect: we could assume 'presentable' prefixes, and use them as parts of JavaScript identifiers.
As far as I've ever figured out, XFire (and presumably CXF) don't cater to people with feelings about prefixes, so we've got things in tns: and things in ns0: and ns1: etc. For JavaScript generation, I hate to force the user to supply some sort of additional file to hand out prefixes. Is there some JAX-WS annotation that would allow CXF to allow someone or something to spec out the namespaces? Aegis has a mechanism that, sadly, doesn't quite work. I spent some time on it in XFire and couldn't quite adapt the code to do it.
