This commit updates URLs to prefer the https protocol. Redirects are not followed to avoid accidentally expanding intentionally shortened URLs (i.e. if using a URL shortener). # HTTP URLs that Could Not Be Fixed These URLs were unable to be fixed. Please review them to see if they can be manually resolved. * http://rss.cnn.com/rss/cnn_topstories.rss (200) with 1 occurrences could not be migrated: ([https](https://rss.cnn.com/rss/cnn_topstories.rss) result ClosedChannelException). * http://wsf.cdyne.com/WeatherWS/Weather.asmx (200) with 1 occurrences could not be migrated: ([https](https://wsf.cdyne.com/WeatherWS/Weather.asmx) result ConnectTimeoutException). # Fixed URLs ## Fixed But Review Recommended These URLs were fixed, but the https status was not OK. However, the https status was the same as the http request or http redirected to an https URL, so they were migrated. Your review is recommended. * http://local.yahooapis.com/MapsService/V1/trafficData?appid=YdnDemo&zip= (UnknownHostException) with 1 occurrences migrated to: https://local.yahooapis.com/MapsService/V1/trafficData?appid=YdnDemo&zip= ([https](https://local.yahooapis.com/MapsService/V1/trafficData?appid=YdnDemo&zip=) result UnknownHostException). * http://static.springsource.org/spring-integration/reference/htmlsingle/ (301) with 2 occurrences migrated to: https://docs.spring.io/spring-integration/reference/htmlsingle/ ([https](https://static.springsource.org/spring-integration/reference/htmlsingle/) result 404). * http://schema.cloudfoundry.org (404) with 1 occurrences migrated to: https://schema.cloudfoundry.org ([https](https://schema.cloudfoundry.org) result 404). * http://schema.cloudfoundry.org/spring/cloudfoundry-spring.xsd (404) with 5 occurrences migrated to: https://schema.cloudfoundry.org/spring/cloudfoundry-spring.xsd ([https](https://schema.cloudfoundry.org/spring/cloudfoundry-spring.xsd) result 404). * http://ws.cdyne.com/WeatherWS/GetCityWeatherByZIP (404) with 2 occurrences migrated to: https://ws.cdyne.com/WeatherWS/GetCityWeatherByZIP ([https](https://ws.cdyne.com/WeatherWS/GetCityWeatherByZIP) result 404). * http://ws.cdyne.com/WeatherWS/Weather.asmx (404) with 1 occurrences migrated to: https://ws.cdyne.com/WeatherWS/Weather.asmx ([https](https://ws.cdyne.com/WeatherWS/Weather.asmx) result 404). * http://www.example.org/prodcuts (404) with 1 occurrences migrated to: https://www.example.org/prodcuts ([https](https://www.example.org/prodcuts) result 404). * http://www.springframework.org/schema/integration/script.xsd (404) with 4 occurrences migrated to: https://www.springframework.org/schema/integration/script.xsd ([https](https://www.springframework.org/schema/integration/script.xsd) result 404). * http://www.springframework.org/schema/integration/splunk/spring-integration-splunk.xsd (404) with 1 occurrences migrated to: https://www.springframework.org/schema/integration/splunk/spring-integration-splunk.xsd ([https](https://www.springframework.org/schema/integration/splunk/spring-integration-splunk.xsd) result 404). * http://www.w3schools.com/xml/FahrenheitToCelsius (301) with 1 occurrences migrated to: https://www.w3schools.com/xml/FahrenheitToCelsius ([https](https://www.w3schools.com/xml/FahrenheitToCelsius) result 404). ## Fixed Success These URLs were switched to an https URL with a 2xx status. While the status was successful, your review is still recommended. * http://activemq.apache.org/peer-transport-reference.html with 1 occurrences migrated to: https://activemq.apache.org/peer-transport-reference.html ([https](https://activemq.apache.org/peer-transport-reference.html) result 200). * http://activemq.apache.org/schema/core/activemq-core-5.4.2.xsd with 1 occurrences migrated to: https://activemq.apache.org/schema/core/activemq-core-5.4.2.xsd ([https](https://activemq.apache.org/schema/core/activemq-core-5.4.2.xsd) result 200). * http://maven.apache.org/xsd/maven-4.0.0.xsd with 68 occurrences migrated to: https://maven.apache.org/xsd/maven-4.0.0.xsd ([https](https://maven.apache.org/xsd/maven-4.0.0.xsd) result 200). * http://tiles.apache.org/dtds/tiles-config_2_1.dtd with 3 occurrences migrated to: https://tiles.apache.org/dtds/tiles-config_2_1.dtd ([https](https://tiles.apache.org/dtds/tiles-config_2_1.dtd) result 200). * http://www.springframework.org/schema/aop/spring-aop.xsd with 1 occurrences migrated to: https://www.springframework.org/schema/aop/spring-aop.xsd ([https](https://www.springframework.org/schema/aop/spring-aop.xsd) result 200). * http://www.springframework.org/schema/beans/spring-beans.xsd with 136 occurrences migrated to: https://www.springframework.org/schema/beans/spring-beans.xsd ([https](https://www.springframework.org/schema/beans/spring-beans.xsd) result 200). * http://www.springframework.org/schema/context/spring-context-4.1.xsd with 1 occurrences migrated to: https://www.springframework.org/schema/context/spring-context-4.1.xsd ([https](https://www.springframework.org/schema/context/spring-context-4.1.xsd) result 200). * http://www.springframework.org/schema/context/spring-context.xsd with 34 occurrences migrated to: https://www.springframework.org/schema/context/spring-context.xsd ([https](https://www.springframework.org/schema/context/spring-context.xsd) result 200). * http://www.springframework.org/schema/data/mongo/spring-mongo.xsd with 2 occurrences migrated to: https://www.springframework.org/schema/data/mongo/spring-mongo.xsd ([https](https://www.springframework.org/schema/data/mongo/spring-mongo.xsd) result 200). * http://www.springframework.org/schema/integration/amqp/spring-integration-amqp.xsd with 9 occurrences migrated to: https://www.springframework.org/schema/integration/amqp/spring-integration-amqp.xsd ([https](https://www.springframework.org/schema/integration/amqp/spring-integration-amqp.xsd) result 200). * http://www.springframework.org/schema/integration/event/spring-integration-event.xsd with 1 occurrences migrated to: https://www.springframework.org/schema/integration/event/spring-integration-event.xsd ([https](https://www.springframework.org/schema/integration/event/spring-integration-event.xsd) result 200). * http://www.springframework.org/schema/integration/feed/spring-integration-feed.xsd with 1 occurrences migrated to: https://www.springframework.org/schema/integration/feed/spring-integration-feed.xsd ([https](https://www.springframework.org/schema/integration/feed/spring-integration-feed.xsd) result 200). * http://www.springframework.org/schema/integration/file/spring-integration-file.xsd with 11 occurrences migrated to: https://www.springframework.org/schema/integration/file/spring-integration-file.xsd ([https](https://www.springframework.org/schema/integration/file/spring-integration-file.xsd) result 200). * http://www.springframework.org/schema/integration/ftp/spring-integration-ftp.xsd with 5 occurrences migrated to: https://www.springframework.org/schema/integration/ftp/spring-integration-ftp.xsd ([https](https://www.springframework.org/schema/integration/ftp/spring-integration-ftp.xsd) result 200). * http://www.springframework.org/schema/integration/groovy/spring-integration-groovy.xsd with 5 occurrences migrated to: https://www.springframework.org/schema/integration/groovy/spring-integration-groovy.xsd ([https](https://www.springframework.org/schema/integration/groovy/spring-integration-groovy.xsd) result 200). * http://www.springframework.org/schema/integration/http/spring-integration-http.xsd with 10 occurrences migrated to: https://www.springframework.org/schema/integration/http/spring-integration-http.xsd ([https](https://www.springframework.org/schema/integration/http/spring-integration-http.xsd) result 200). * http://www.springframework.org/schema/integration/ip/spring-integration-ip.xsd with 8 occurrences migrated to: https://www.springframework.org/schema/integration/ip/spring-integration-ip.xsd ([https](https://www.springframework.org/schema/integration/ip/spring-integration-ip.xsd) result 200). * http://www.springframework.org/schema/integration/jdbc/spring-integration-jdbc.xsd with 8 occurrences migrated to: https://www.springframework.org/schema/integration/jdbc/spring-integration-jdbc.xsd ([https](https://www.springframework.org/schema/integration/jdbc/spring-integration-jdbc.xsd) result 200). * http://www.springframework.org/schema/integration/jms/spring-integration-jms.xsd with 11 occurrences migrated to: https://www.springframework.org/schema/integration/jms/spring-integration-jms.xsd ([https](https://www.springframework.org/schema/integration/jms/spring-integration-jms.xsd) result 200). * http://www.springframework.org/schema/integration/jmx/spring-integration-jmx.xsd with 3 occurrences migrated to: https://www.springframework.org/schema/integration/jmx/spring-integration-jmx.xsd ([https](https://www.springframework.org/schema/integration/jmx/spring-integration-jmx.xsd) result 200). * http://www.springframework.org/schema/integration/jpa/spring-integration-jpa.xsd with 1 occurrences migrated to: https://www.springframework.org/schema/integration/jpa/spring-integration-jpa.xsd ([https](https://www.springframework.org/schema/integration/jpa/spring-integration-jpa.xsd) result 200). * http://www.springframework.org/schema/integration/mail/spring-integration-mail.xsd with 4 occurrences migrated to: https://www.springframework.org/schema/integration/mail/spring-integration-mail.xsd ([https](https://www.springframework.org/schema/integration/mail/spring-integration-mail.xsd) result 200). * http://www.springframework.org/schema/integration/mongodb/spring-integration-mongodb.xsd with 2 occurrences migrated to: https://www.springframework.org/schema/integration/mongodb/spring-integration-mongodb.xsd ([https](https://www.springframework.org/schema/integration/mongodb/spring-integration-mongodb.xsd) result 200). * http://www.springframework.org/schema/integration/rmi/spring-integration-rmi.xsd with 2 occurrences migrated to: https://www.springframework.org/schema/integration/rmi/spring-integration-rmi.xsd ([https](https://www.springframework.org/schema/integration/rmi/spring-integration-rmi.xsd) result 200). * http://www.springframework.org/schema/integration/scripting/spring-integration-scripting.xsd with 4 occurrences migrated to: https://www.springframework.org/schema/integration/scripting/spring-integration-scripting.xsd ([https](https://www.springframework.org/schema/integration/scripting/spring-integration-scripting.xsd) result 200). * http://www.springframework.org/schema/integration/sftp/spring-integration-sftp.xsd with 3 occurrences migrated to: https://www.springframework.org/schema/integration/sftp/spring-integration-sftp.xsd ([https](https://www.springframework.org/schema/integration/sftp/spring-integration-sftp.xsd) result 200). * http://www.springframework.org/schema/integration/spring-integration.xsd with 125 occurrences migrated to: https://www.springframework.org/schema/integration/spring-integration.xsd ([https](https://www.springframework.org/schema/integration/spring-integration.xsd) result 200). * http://www.springframework.org/schema/integration/stream/spring-integration-stream.xsd with 27 occurrences migrated to: https://www.springframework.org/schema/integration/stream/spring-integration-stream.xsd ([https](https://www.springframework.org/schema/integration/stream/spring-integration-stream.xsd) result 200). * http://www.springframework.org/schema/integration/twitter/spring-integration-twitter.xsd with 4 occurrences migrated to: https://www.springframework.org/schema/integration/twitter/spring-integration-twitter.xsd ([https](https://www.springframework.org/schema/integration/twitter/spring-integration-twitter.xsd) result 200). * http://www.springframework.org/schema/integration/websocket/spring-integration-websocket.xsd with 2 occurrences migrated to: https://www.springframework.org/schema/integration/websocket/spring-integration-websocket.xsd ([https](https://www.springframework.org/schema/integration/websocket/spring-integration-websocket.xsd) result 200). * http://www.springframework.org/schema/integration/ws/spring-integration-ws.xsd with 4 occurrences migrated to: https://www.springframework.org/schema/integration/ws/spring-integration-ws.xsd ([https](https://www.springframework.org/schema/integration/ws/spring-integration-ws.xsd) result 200). * http://www.springframework.org/schema/integration/xml/spring-integration-xml.xsd with 1 occurrences migrated to: https://www.springframework.org/schema/integration/xml/spring-integration-xml.xsd ([https](https://www.springframework.org/schema/integration/xml/spring-integration-xml.xsd) result 200). * http://www.springframework.org/schema/integration/xmpp/spring-integration-xmpp.xsd with 2 occurrences migrated to: https://www.springframework.org/schema/integration/xmpp/spring-integration-xmpp.xsd ([https](https://www.springframework.org/schema/integration/xmpp/spring-integration-xmpp.xsd) result 200). * http://www.springframework.org/schema/jdbc/spring-jdbc.xsd with 5 occurrences migrated to: https://www.springframework.org/schema/jdbc/spring-jdbc.xsd ([https](https://www.springframework.org/schema/jdbc/spring-jdbc.xsd) result 200). * http://www.springframework.org/schema/jee/spring-jee.xsd with 1 occurrences migrated to: https://www.springframework.org/schema/jee/spring-jee.xsd ([https](https://www.springframework.org/schema/jee/spring-jee.xsd) result 200). * http://www.springframework.org/schema/mvc/spring-mvc.xsd with 2 occurrences migrated to: https://www.springframework.org/schema/mvc/spring-mvc.xsd ([https](https://www.springframework.org/schema/mvc/spring-mvc.xsd) result 200). * http://www.springframework.org/schema/oxm/spring-oxm.xsd with 2 occurrences migrated to: https://www.springframework.org/schema/oxm/spring-oxm.xsd ([https](https://www.springframework.org/schema/oxm/spring-oxm.xsd) result 200). * http://www.springframework.org/schema/rabbit/spring-rabbit.xsd with 11 occurrences migrated to: https://www.springframework.org/schema/rabbit/spring-rabbit.xsd ([https](https://www.springframework.org/schema/rabbit/spring-rabbit.xsd) result 200). * http://www.springframework.org/schema/security/spring-security.xsd with 1 occurrences migrated to: https://www.springframework.org/schema/security/spring-security.xsd ([https](https://www.springframework.org/schema/security/spring-security.xsd) result 200). * http://www.springframework.org/schema/task/spring-task-4.2.xsd with 1 occurrences migrated to: https://www.springframework.org/schema/task/spring-task-4.2.xsd ([https](https://www.springframework.org/schema/task/spring-task-4.2.xsd) result 200). * http://www.springframework.org/schema/task/spring-task.xsd with 8 occurrences migrated to: https://www.springframework.org/schema/task/spring-task.xsd ([https](https://www.springframework.org/schema/task/spring-task.xsd) result 200). * http://www.springframework.org/schema/tx/spring-tx.xsd with 3 occurrences migrated to: https://www.springframework.org/schema/tx/spring-tx.xsd ([https](https://www.springframework.org/schema/tx/spring-tx.xsd) result 200). * http://www.springframework.org/schema/util/spring-util.xsd with 7 occurrences migrated to: https://www.springframework.org/schema/util/spring-util.xsd ([https](https://www.springframework.org/schema/util/spring-util.xsd) result 200). * http://www.w3schools.com/xml/tempconvert.asmx with 1 occurrences migrated to: https://www.w3schools.com/xml/tempconvert.asmx ([https](https://www.w3schools.com/xml/tempconvert.asmx) result 200). * http://www.eaipatterns.com/MessagingGateway.html (302) with 2 occurrences migrated to: https://www.enterpriseintegrationpatterns.com/MessagingGateway.html ([https](https://www.eaipatterns.com/MessagingGateway.html) result 301). * http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd with 2 occurrences migrated to: https://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd ([https](https://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd) result 302). * http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd with 5 occurrences migrated to: https://java.sun.com/xml/ns/javaee/web-app_2_5.xsd ([https](https://java.sun.com/xml/ns/javaee/web-app_2_5.xsd) result 302). * http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd with 1 occurrences migrated to: https://java.sun.com/xml/ns/javaee/web-app_3_0.xsd ([https](https://java.sun.com/xml/ns/javaee/web-app_3_0.xsd) result 302). * http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd with 1 occurrences migrated to: https://java.sun.com/xml/ns/persistence/persistence_2_0.xsd ([https](https://java.sun.com/xml/ns/persistence/persistence_2_0.xsd) result 302). # Ignored These URLs were intentionally ignored. * http://activemq.apache.org/schema/core with 2 occurrences * http://jakarta.apache.org/log4j/ with 1 occurrences * http://java.sun.com/xml/ns/j2ee with 4 occurrences * http://java.sun.com/xml/ns/javaee with 8 occurrences * http://java.sun.com/xml/ns/persistence with 2 occurrences * http://localhost:8080/http/receiveGateway with 1 occurrences * http://localhost:8080/multipart-http/inboundAdapter.htm with 1 occurrences * http://localhost:8080/postGateway with 1 occurrences * http://localhost:8084/traffic/v1/incidents?key= with 1 occurrences * http://maven.apache.org/POM/4.0.0 with 136 occurrences * http://schema.cloudfoundry.org/spring with 9 occurrences * http://www.example.org/orders with 2 occurrences * http://www.springframework.org/schema/aop with 2 occurrences * http://www.springframework.org/schema/beans with 273 occurrences * http://www.springframework.org/schema/context with 69 occurrences * http://www.springframework.org/schema/data/mongo with 4 occurrences * http://www.springframework.org/schema/integration with 250 occurrences * http://www.springframework.org/schema/integration/amqp with 18 occurrences * http://www.springframework.org/schema/integration/event with 2 occurrences * http://www.springframework.org/schema/integration/feed with 2 occurrences * http://www.springframework.org/schema/integration/file with 21 occurrences * http://www.springframework.org/schema/integration/ftp with 10 occurrences * http://www.springframework.org/schema/integration/groovy with 10 occurrences * http://www.springframework.org/schema/integration/http with 20 occurrences * http://www.springframework.org/schema/integration/ip with 16 occurrences * http://www.springframework.org/schema/integration/jdbc with 16 occurrences * http://www.springframework.org/schema/integration/jms with 22 occurrences * http://www.springframework.org/schema/integration/jmx with 6 occurrences * http://www.springframework.org/schema/integration/jpa with 2 occurrences * http://www.springframework.org/schema/integration/mail with 9 occurrences * http://www.springframework.org/schema/integration/mongodb with 4 occurrences * http://www.springframework.org/schema/integration/rmi with 4 occurrences * http://www.springframework.org/schema/integration/script with 4 occurrences * http://www.springframework.org/schema/integration/scripting with 8 occurrences * http://www.springframework.org/schema/integration/sftp with 6 occurrences * http://www.springframework.org/schema/integration/splunk with 2 occurrences * http://www.springframework.org/schema/integration/stream with 57 occurrences * http://www.springframework.org/schema/integration/twitter with 8 occurrences * http://www.springframework.org/schema/integration/websocket with 4 occurrences * http://www.springframework.org/schema/integration/ws with 8 occurrences * http://www.springframework.org/schema/integration/xml with 2 occurrences * http://www.springframework.org/schema/integration/xmpp with 4 occurrences * http://www.springframework.org/schema/jdbc with 10 occurrences * http://www.springframework.org/schema/jee with 2 occurrences * http://www.springframework.org/schema/mvc with 4 occurrences * http://www.springframework.org/schema/oxm with 4 occurrences * http://www.springframework.org/schema/p with 2 occurrences * http://www.springframework.org/schema/rabbit with 22 occurrences * http://www.springframework.org/schema/security with 2 occurrences * http://www.springframework.org/schema/task with 18 occurrences * http://www.springframework.org/schema/tx with 6 occurrences * http://www.springframework.org/schema/util with 14 occurrences * http://www.w3.org/2001/XMLSchema-instance with 211 occurrences
Travel Sample
This example demonstrates a simple process that could be useful when building travel related applications. It defines two services:
- Get Weather report based on the ZIP (Postal) code
- Get Traffic report based on latitude/longitude information
It uses real services provided by third party providers.
- Get Weather report Service is a SOAP Web Service
- Get Traffic report Service is an HTTP Service
This example demonstrates how to configure both:
- HTTP Outbound Gateway - to integrate with HTTP Service
- WS Outbound Gateway - to integrate with WS Service
The diagram below shows the message flow:
weatherPreProcessChannel weatherChannel weatherServiceChannel
|------------------------| -> transformer -> |--------------| -> header-enricher -> |---------------------| -> ws:outbound-gateway --\
|-> getWeatherByZip(zip) routingChannel / | prettifyXml
TravelGateway --> |--------------| -> h-v-r| |---->|------------| -> transformer
|-> getTrafficByZip(zip) | trafficChannel /
\ |-----------------| -> header-enricher -> http:outbound-gateway --------------------------------------------------------------------/
Two services are exposed via the Gateway. The gateway enriches the headers of the message with the type of request weather or traffic and sends the Message to the routingChannel from which it is retrieved by the HeaderValueRouter (h-v-r) which routes the Message to either weatherPreProcessChannel or trafficChannel based on the value of the REQUEST_TYPE header hat was set by the Gateway.
The WS service requires that the message would be is a certain format. We first need to wrap it into an XML request (done by a transformer), then we need to add a SOAP Header (done by header-enricher). Once Message is properly formatted it is sent to the ws:outbound-gateway, which replies with XML describing real time weather conditions in a particular ZIP code.
The HTTP Service does not require any pre-processing. All we need to do is map the HTTP URI variable {boundingBox} (Contains latitude/longitude coordinates). We accomplish that via the element of the http:outbound-gateway.
<uri-variable name="zipCode" expression="payload"/>
Here you see, we are using Spring Expression Language (SpEL) to bind the value of the payload (boundingBox) to this variable.
Setup
MapQuest
This sample uses the MapQuest API, specifically the MapQuest Traffic Web Service. As such you must setup an API Key. Therefore, please create a MapQuest developer account. This can be done at: http://developer.mapquest.com/.
¡Important! - Please be aware that the API key you received from MapQuest is URL encoded. As such you must decode the key, so you can use it with Spring Integration. For example you can use the service on the following site to decode the API key: http://meyerweb.com/eric/tools/dencoder/
Running the Sample
To run the sample execute Main in package org.springframework.integration.samples.travel. You can also execute that class using the Gradle Application Plugin:
$ gradlew :travel:run -Dmapquest.apikey="your_mapquest_api_key_url_decoded"
You should see the following output:
=========================================================
Welcome to the Spring Integration Travel App!
For more information please visit:
http://www.springintegration.org/
=========================================================
Please select the city, for which you would like to get traffic and weather information:
1. Atlanta
2. Boston
3. San Francisco
q. Quit the application
Enter your choice:
Changes
2012-Oct-30
- The Yahoo Traffic API has been discontinued. As an alternative, the MapQuest Traffic Web Service is being used now
- Added support for multiple cities (Atlanta, Boston, San Francisco)