The actual Wrapper code is simple in structure, consisting of just three classes. The org.soagate.wsswrapper.Wrapper class is the launcher. This one has a simple main() method which checks the key/certificate pair and other configuration data (using the standard Java Security classes), then creates a Jetty Web server instance and adds the two servlet classes (coming up next) to that server.

The org.soagate.wsswrapper.CertInstallServlet class is the servlet that handles certificate uploads. This uses the Multipart Request File Upload parser code to provide access to the actual upload data, and standard Java Security classes for working with the certificate and keystore.

The org.soagate.wsswrapper.WrapperServlet class is the servlet that handles the actual service requests and responses. This uses the Apache WSS4J library to handle the actual WS-Security processing, along with the standard Java Security classes for working with the keystore.

All components also use the Apache Jakarta Commons Logging and Apache Log4j logging libraries.