Doing HTTPS Communication with http:outbound-gateway
Join the DZone community and get the full member experience.
Join For FreeIn Spring Integration if you have to do
https communication when using http:outbound-gateway, you need to use the following trick,
<int-http:outbound-gateway id="my.outbound.gateway" request-channel="request-channel" reply-channel="reply-channel" url="https://localhost:8443/myservice/myService" http-method="POST" expected-response-type="java.lang.String"> </int-http:outbound-gateway>
Now you need to pass the keystore and trust store of the client and server as follows,
<bean id="trustStore"> <property name="targetObject" value="#{@systemProperties}" /> <property name="targetMethod" value="putAll" /> <property name="arguments"> <props> <prop key="javax.net.ssl.trustStore"><jks key location></prop> <prop key="javax.net.ssl.keyStorePassword">password</prop> </props> </property> </bean> <bean id="keystore"> <property name="targetObject" value="#{@systemProperties}" /> <property name="targetMethod" value="putAll" /> <property name="arguments"> <props> <prop key="javax.net.ssl.keyStore"><jks key location></prop> <prop key="javax.net.ssl.keyStorePassword">password</prop> </props> </property> </bean>
There is also another way as mentioned in this article @ http://forum.springsource.org/showthread.php?115198-HTTPS-in-http-outbound-gateway
I hope this blog helped you.
Published at DZone with permission of Krishna Prasad, DZone MVB. See the original article here.
Opinions expressed by DZone contributors are their own.
Trending
-
DevOps Midwest: A Community Event Full of DevSecOps Best Practices
-
Redefining DevOps: The Transformative Power of Containerization
-
Using Render Log Streams to Log to Papertrail
-
Incident Response Guide
Comments