JBoss 7.1.1 でホストされている JAX-WS Web サービスをデプロイしました。Web サービスにはリバース プロキシがアクセスします。パブリック インターネットからサービスにアクセスするには、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
Web サービス構成のリファレンスは次のとおりです。 https://docs.jboss.org/author/display/AS71/Web+サービス+構成
しかし、SOAP アドレスでプロトコルを https に強制する場所を見つけることができます。
答え1
およびサブシステム構成web
はwebservices
連携してエンドポイント URL (および xs:import ステートメントの URL) を提供します。
設定に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>