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.