【问题标题】:spring integration: http outbound gateway sslspring 集成:http 出站网关 ssl
【发布时间】:2016-01-26 13:22:40
【问题描述】:

我需要为<int-http:outbound-gateway> 实现 https。 我的代码如下就足够了吗? 我应该在我的代码中添加什么?

      <int-http:outbound-gateway id="oeactivatedGateway"
         url="${trigger.url}" http-method="DELETE" charset="UTF-8"
         reply-timeout="${ws.reply.timeout}" mapped-request-headers="Authorization,Content-Type,Accept"
         request-channel="channel.authorized.request" reply-channel="channel.reply"
         request-factory="requestFactory">

<bean id="requestFactory"
         class="org.springframework.http.client.SimpleClientHttpRequestFactory">
         <property name="proxy">
                <bean id="proxy" class="java.net.Proxy">
                       <constructor-arg>
                              <util:constant static-field="java.net.Proxy.Type.HTTP" />
                       </constructor-arg>
                       <constructor-arg>
                              <bean class="java.net.InetSocketAddress">
                                    <constructor-arg value="${http.proxy.address}" />
                                    <constructor-arg value="${http.proxy.port}" />
                              </bean>
                       </constructor-arg>
                </bean>
         </property>
   </bean>

【问题讨论】:

    标签: spring-integration


    【解决方案1】:

    “实施 https”是什么意思?允许通过网关执行 HTTPS 请求?与 Spring Integration 无关。

    您只需要遵循标准 Java SSL 支持 - -Djavax.net.ssl.trustStore-Djavax.net.ssl.keyStore。最终应用程序端将无事可做。

    默认情况下它不依赖于ClientHttpRequestFactory 实现。

    即使您可以从应用程序上下文中以某种方式对其进行自定义,例如:

    CloseableHttpClient httpClient = 
      HttpClients.custom()
                 .setSSLHostnameVerifier(new NoopHostnameVerifier())
                 .build();
    HttpComponentsClientHttpRequestFactory requestFactory = 
      new HttpComponentsClientHttpRequestFactory();
    requestFactory.setHttpClient(httpClient);
    

    它与 Spring Integration 无关,您可以随意满足您的任何要求。由于一切都是 Spring,您将能够将所有内容连接在一起,让您的 &lt;int-http:outbound-gateway&gt; 使用 HTTPS。

    【讨论】:

      猜你喜欢
      • 2014-06-08
      • 1970-01-01
      • 2012-03-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-06-08
      相关资源
      最近更新 更多