Я развернул веб-сервис JAX-WS, размещенный в JBoss 7.1.1. С веб-сервисом соглашается обратный прокси. Для доступа к сервису из общедоступного Интернета это должно быть сделано https протоколом, но коммуникация между обратным прокси и JBoss находится в http. Таким образом, хост, существующий в wsdl файле, является http <soap:address location="http://example.com/WS"/>
и это должно быть <soap:address location="https://example.com/WS"/>
.
Конфигурация JBoss следующие:
modify-wsdl-addres = true
wsdl-host = jbossws.undefined.host
Вот ссылка для конфигурации веб-сервисов: https://docs.jboss.org/author/display/AS71/Web+services+configuration
Но я могу найти, где вынудить протокол быть https в адресе мыла.
Конфигурации подсистем веб
и веб-службы
работают вместе, чтобы предоставить URL-адрес конечной точки (а также URL-адреса для операторов xs: import).
В конфигурации webservices
добавьте следующую строку
<wsdl-port>443</wsdl-port>
В конфигурации web
измените схему коннектора http с http
на https
и добавьте proxy-port = "443"
Таким образом, это будет выглядеть так:
<subsystem xmlns="urn:jboss:domain:web:2.2" default-virtual-server="default-host" native="false">
<connector name="http" protocol="HTTP/1.1" scheme="https" socket-binding="http"
secure="true" proxy-port="443"/>
...
</subsystem>
<subsystem xmlns="urn:jboss:domain:webservices:1.2">
<modify-wsdl-address>true</modify-wsdl-address>
<wsdl-host>jbossws.undefined.host</wsdl-host>
<wsdl-port>443</wsdl-port>
...
</subsystem>