В этой статье мы покажем вам, как развернуть веб-службу JAX-WS на Tomcat с включенным безопасным подключением TLS/SSL или https. На самом деле, ответ довольно прост, просто разверните его как обычный веб-сервис и правильно настройте SSL-соединение на своем сервере Tomcat 🙂
1. Настройка Tomcat + SSL
Для получения подробной информации см. Это руководство – Сделайте Tomcat для поддержки SSL или https-соединения .
В принципе, просто купите сертификат у надежного поставщика сертификатов или используйте команду JDK keytool
для создания фиктивного сертификата для тестирования локального хоста. И положите следующую порцию в своего кота server.xml
файл.
Файл: $Tomcat\conf\server.xml
//...//...
Перезапустите Tomcat, и теперь ваш Tomcat поддерживает SSL-соединение, например https://localhost:8443
2. Развертывание Веб-Службы
Разверните его как обычную веб–службу, см. Это руководство – Развертывание веб-служб JAX-WS в контейнере сервлетов Tomcat .
3. Тест Оно
Настройка завершена; вы можете получить доступ к развернутой веб-службе через SSL-соединение с помощью обычного клиента веб-службы.
Например,
URL url = new URL("https://localhost:8443/HelloWorld/hello?wsdl"); QName qname = new QName("http://ws.mkyong.com/", "HelloWorldImplService"); Service service = Service.create(url, qname); HelloWorld hello = service.getPort(HelloWorld.class); System.out.println(hello.getHelloWorldAsString());
- java.безопасность.сертификат. Исключение CertificateException: Не найдено имени, соответствующего локальному хосту
- Исключение SunCertPathBuilderException: не удается найти действительный путь сертификации к запрошенному целевому объекту
4. Сделано
Ваш веб-сервис защищен SSL, довольно прост, никаких изменений на сайте веб-службы; просто настройте свой Tomcat на поддержку только SSL-соединения.
Оригинал: “https://mkyong.com/webservices/jax-ws/deploy-jax-ws-web-services-on-tomcat-ssl-connection/”