JBind is a data binding framework linking Java and XML. It consists of a schema compiler for generating Java sources and a runtime environment. The runtime environment is used for unmarshalling (reading) and marshalling (writing) XML documents, for validation, and for accessing and manipulating XML data. In addition, JBind introduces the concept of XML code that is the result of adding behavior to XML data. XML code is the seamless integration of manually implemented methods with sources generated by the schema compiler. XML code offers great possibilities for application, framework, and configuration developments. Instance documents are validated against their schema when they are unmarshalled. Simple constraints (constraints that consider only single values of attributes or simple content of elements) are enforced during manipulation. Global constraints (constraints that consider the occurrence of attributes/elements or identity constraints) can be checked by an explicit API call.
WSIF (the "Web Services Invocation Framework") is a WSDL-based API for invoking WSDL-described services. WSIF developers interact with Web Services at the abstract level through their WSDL descriptions. This is done independently of APIs specific to a message format or network protocol (eg SOAP APIs). With WSIF, developers work with the same programming model regardless of how the Web service is implemented and accessed.
Webtester is an application which is intended to be used in the testing and validation of Web-based applications. By reading an XML configuration file, the application is able to call URLs and use regular expressions to examine the results. Features include support for SSL, cookies, and variable assignment/substitution when sending and examining data.
RewriteFilter is a servlet2.3-compatible filter able to be plugged in any existing Web application that makes the application better indexed by search engines. It rewrites all generated pages transparently, encoding the URLs. When the filter gets a request, first it analyzes if the request is encoded, then it decodes it and forwards the control to the decoded URL.