2

我将 Apache 作为我部署了 CXF Web 服务的 Tomcat 服务器的前端。对我的 Web 服务的所有访问都是通过由 Apache Web 服务器处理的 SSL 进行的。这意味着我的 Tomcat 服务器完全不知道 SSL。因此,我的 CXF 生成的 Web 服务有一个http端点 URL。如何在为 Apache Web 服务器提供处理 SSL 的机会的同时使其成为HTTPS 。覆盖端点URL 方案的任何线索?

4

3 回答 3

2

如果这样做,您还应该在 publishedEndpointURL 中设置正确的地址(使用 HTTPS)。像这里:如何在 localhost 上启动 cxf 服务但在 wsdl 中返回外部地址?

这将使生成的 WSDL 中的导入指向正确的 URL。

于 2012-04-23T11:41:17.500 回答
0

如果您需要为 Tomcat 启用 SSL 连接器(如果您mod_proxy在 Apache 中使用),或者您需要启用安全 AJP 连接器(如果您使用mod_jk):

<Connector protocol="AJP/1.3" redirectPort="443" scheme="https" secure="true" address="127.0.0.1" port="8009" />

CXF 在这里不受欢迎。

于 2012-04-22T12:15:15.190 回答
0

我遇到了同样的问题,并通过对基本 URL 使用 JNDI 查找来解决它,然后为 publishEndpointUrl 构造一个 url。在 XML 配置中,它看起来像这样:

  <jee:jndi-lookup id="ProxyURL" jndi-name="myProxyURL" resource-ref="true" cache="true" />     
 <bean id="EndpointURL"  class="java.lang.String">
    <constructor-arg value="#{ProxyURL+'/myServiceAddress'}"/>
     </bean>
 <jaxws:endpoint
    id="myServiceEndpoint"
    ...[other parameters]...
    publishedEndpointUrl="#EndpointURL">
于 2015-04-14T22:31:41.797 回答