The main goal of wsgen in JAX-WS RI was to create artifacts necessary for execution that were not provided by the user. This usually means shell beans and beans error. The wsdl generation was mostly considered an additional optional but interesting side effect.
With more modern versions of JAX-WS, such as CXF and the latest RI nightly builds for version 2.2, these artifacts are generated at runtime on demand at runtime. For example, CXF uses ASM to generate bean classes in memory at startup. Thus, wsgen has nothing to do with more modern JAX-WS implementations, and the primary use of the first Java tool is to create wsdl, not the beans shell. This is very important why the CXF tool is called "java2wsdl" and not wsgen.
source
share