In order to accurately search a UDDI registry, services must be registered
in compliancy with a predefined data structure (UDDI v2). WSDL is the de
facto definition language for describing Web Services. UDDI.org provides
a documentation describing the WSDL to UDDI mapping. Such mapping is complex
and must be automated in some way.
SUN has released an API for manipulating registries (UDDI and ebXml)
called JAX-R. A JSR is in process to release an API to programmatically
manipulate WSDL documents:
JSR 110
. IBM is proposing an implementation of such JSR:
WSDL4J
.

WSDL4Reg automates the registration of WSDL documents in UDDI registries.
To do so, different technologies are being used:

WSDL4J 0.8: To read the wsdl document

JAX-R 1.0_01: To register the service in UDDI

Apache Commons CLI: To scan the command line

Apache Commons Logging 1.0.1: To log messages

Apache Ant 1.5: To generate the WSDL4Reg Ant Task

Exolab Castor for XML 0.9.3.9: To manipulate the configuration
elements of WSDL4Reg. Used as well to create the WSDL4Reg Ant Task (pretty
cool)

WSDL4Reg relies on mapping different specifications in order to register
WSDL document into UDDI registries: