The wsimport tool of JAX-WS has added a -poption. This option is used to specify the package that the generated artifacts should be generated into. This option eliminates the need to write a customization to do the same task. For example, two customization files to specify that the package for a WSDL would be similar to the following:

 custSchema - customizes the package that generated artifacts from schema use. <bindings xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" wsdlLocation="http://localhost:8080/jaxws-external-customize/addnumbers?wsdl" xmlns="http://java.sun.com/xml/ns/jaxws"> <package name="external_customize.client"/> </binding> custWsdl - customizes the package that artifacts generated from the WSDL use. <bindings xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://java.sun.com/xml/ns/jaxb" version="1.0"> <bindings schemaLocation="http://localhost:8080/jaxws-external-customize/addnumbers?xsd=1" node="/xsd:schema"> <schemaBindings> <package name="external_customize.client"/> </schemaBindings> </bindings> </bindings> 

This would be passed to wsimport using the -b option: For example:
wsimport -b custSchema -b custWsdl http://localhost:8080/jaxws-external-customize/addnumbers?wsdl"

 

With the new -p option, the same thing can be accomplished with: wsimport -p externa_customize.client http://localhost:8080/jaxws-external-customize/addnumbers?wsdl"

 

You can see a working sample code using both of these approaches in the external-customize and wsimport_catalog samples included in the nightly build of JAX-WS available here.