Estou este um projeto para fazer. Estou pensando utilizar Spring, o projeto https://spring.io/projects/spring-ws.
Descrição do projeto:
- O java recebe um arquivo xml do cliente
- O java usa a chave privada do cliente para assinar esse xml
- O java envelopa esse XML assinado e criptografa ele com a chave pública do servidor SOAP
- O java faz o envio do envelope para o servidor SOAP
- O java pega a resposta criptografada do servidor SOAP, descriptografa a mensagem usando a chave pública do cliente
- O java salva esta resposta num arquivo
Esta certo.