Wildfly 10 JBossWS SOAP地址重写用于wsdl uri scheme=https,用于反向代理背后的wsdl引用的嵌套XML模式文档(XSD)
注意:从 我们在NGINX后面配置了Wildfly 10作为反向代理,用于处理web服务的SSL需求。Wildfly将所有内容都用作普通HTTP,NGINX处理请求的HTTPS端 我们在JBossWS中启用了uri重写,并在Wildfly 10 JBossWS SOAP地址重写用于wsdl uri scheme=https,用于反向代理背后的wsdl引用的嵌套XML模式文档(XSD),wsdl,reverse-proxy,url-scheme,wildfly-10,jbossws,Wsdl,Reverse Proxy,Url Scheme,Wildfly 10,Jbossws,注意:从 我们在NGINX后面配置了Wildfly 10作为反向代理,用于处理web服务的SSL需求。Wildfly将所有内容都用作普通HTTP,NGINX处理请求的HTTPS端 我们在JBossWS中启用了uri重写,并在standalone.xml <subsystem xmlns="urn:jboss:domain:webservices:2.0"> <modify-wsdl-address>true</modify-wsdl-address>
standalone.xml
<subsystem xmlns="urn:jboss:domain:webservices:2.0">
<modify-wsdl-address>true</modify-wsdl-address>
<wsdl-host>jbossws.undefined.host</wsdl-host>
<wsdl-secure-port>8081</wsdl-secure-port>
<wsdl-uri-scheme>https</wsdl-uri-scheme>
<jboss:port-component>
<jboss:ejb-name>ClaimWebServiceBean</jboss:ejb-name>
<jboss:port-component-name>ClaimWSPort</jboss:port-component-name>
<jboss:port-component-uri>Claim</jboss:port-component-uri>
<jboss:transport-guarantee>CONFIDENTIAL</jboss:transport-guarantee>
</jboss:port-component>
WSDL中包含的XSD的SOAP地址和模式位置的URI重写工作正常
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:tns="http://example.systems/webservices/" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/"
xmlns:ns1="http://example.co.za/claim/zmf" attributeFormDefault="unqualified" elementFormDefault="unqualified"
targetNamespace="http://example.systems/webservices/">
<xs:import namespace="http://example.co.za/claim/zmf" schemaLocation="https://dev.example.ws:8081/webservices/Claim?xsd=ZietoClaim_2_1.xsd"/>
<!-- xml omitted -->
<wsdl:service name="ClaimService">
<wsdl:port binding="tns:ClaimServiceSoapBinding" name="ClaimWSPort">
<soap12:address location="https://dev.example.ws:8081/webservices/Claim"/>
</wsdl:port>
</wsdl:service>
是否有一种方法可以配置JBossWS来重写第一个XSD中的shema位置,以及使用https??确认为一个bug。看见
<?xml version='1.0' encoding='UTF-8'?>
<xsd:schema xmlns:zdt="http://example.co.za/claim/zmf/datatypes" xmlns:zcdt="http://example.co.za/common/datatypes"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://example.co.za/claim/zmf" elementFormDefault="qualified"
targetNamespace="http://example.co.za/claim/zmf">
<xsd:import namespace="http://example.co.za/claim/zmf/datatypes" schemaLocation="http://dev.example.ws:8081/webservices/Claim?xsd=zmf_dt_2_1.xsd"/>
<xsd:import namespace="http://example.co.za/common/datatypes" schemaLocation="http://dev.example.ws:8081/webservices/Claim?xsd=zdt_1_2.xsd"/>