С WildFly 8.2.1 я пытаюсь использовать существующий веб-сервис (JAX-WS), используя SSL, но я не видел никакого использования SSL в быстрых стартовых версиях, и информация, которую я смог сделать Google, ограничен , До сих пор я добавил это web.xml:Позвольте webservice использовать SSL
<security-constraint>
<display-name>Foo security</display-name>
<web-resource-collection>
<web-resource-name>FooService</web-resource-name>
<url-pattern>/foo/FooService</url-pattern>
<http-method>POST</http-method>
</web-resource-collection>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint>
и это в моем standalone.xml:
<subsystem xmlns="urn:jboss:domain:webservices:1.2">
<wsdl-host>${jboss.bind.address:127.0.0.1}</wsdl-host>
<endpoint-config name="Standard-Endpoint-Config"/>
<endpoint-config name="Recording-Endpoint-Config">
<pre-handler-chain name="recording-handlers" protocol-bindings="##SOAP11_HTTP ##SOAP11_HTTP_MTOM ##SOAP12_HTTP ##SOAP12_HTTP_MTOM">
<handler name="RecordingHandler" class="org.jboss.ws.common.invocation.RecordingServerHandler"/>
</pre-handler-chain>
</endpoint-config>
<client-config name="Standard-Client-Config"/>
</subsystem>
но, видимо, этого недостаточно; когда я смотрю в standalone/data/wsdl/foo.ear/foo.war/FooService/Bar.wsdl
я вижу:
<service name="FooService">
<port binding="foowsb:FooBinding" name="FooBinding">
<soap:address location="http://localhost:8080/foo/FooService"/>
</port>
</service>
Обратите внимание, что в EAR/WAR, то soap:address.location
заполняется только с заполнителем (я полагаю, что это значение игнорируется).
Я нашел информацию о настройке области безопасности и создании самозаверяющего сертификата с помощью keytool (что я и сделал), но я совершенно не понимаю, как это должно быть связано.
Я также пытался установить wsdl-uri-scheme=https
, но это поддерживается только в более поздних версиях CXF.
Переключиться на форумы JBoss: https://developer.jboss.org/message/967556#967556 –