Creo que no te has informado correctamente.
Las comunicaciones SSL/TLS son comunicaciones encriptadas con una clave simétrica, y lo único que necesitas es instalar en el servidor un certificado y admitir conexiones https. Dependiendo del servidor se configurará de forma distinta.
https://tomcat.apache.org/tomcat-6.0-doc/ssl-howto.html
En el caso de java, los almacenes de certificados son los keystore.
Cuando dices que has creado tu propio CA, estás en un error. Un CA no es más que una entidad de "prestigio" que respalda tu certificado (cobrando)
https://es.wikipedia.org/wiki/Autori...ificaci%C3%B3n
por lo que es absurdo que tengas un certificado propio respaldado por otro certificado propio.
¿Para qué sirve esto? Pues por ejemplo los navegadores traen una serie de certificados de CA que te permitirán aceptar sin problemas comunicaciones con páginas https cuyos cetificados estén respaldados por esas compañías, de lo contrario te mostrarán avisos o te bloquearán el acceso a menos que tú les digas que confías en esa página/certificado.
Luego habría que ver si quieres que el cliente a su vez se identifique con su propio certificado, que estaría relacionado con el certificado del servidor.
Aquí tienes un ejemplo,con y sin un certificado respaldado
http://www.herongyang.com/JDK/SSL-So...ketClient.html http://www.herongyang.com/JDK/SSL-So...s-Trusted.html