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://blueprintcss.org (200) with 3 occurrences could not be migrated: ([https](https://blueprintcss.org) result AnnotatedConnectException). * [ ] http://jmesnil.net/ (200) with 1 occurrences could not be migrated: ([https](https://jmesnil.net/) result ConnectTimeoutException). * [ ] http://jtds.sourceforge.net (200) with 1 occurrences could not be migrated: ([https](https://jtds.sourceforge.net) result AnnotatedConnectException). * [ ] http://www.jmesnil.net/stomp-websocket/doc/ (301) with 1 occurrences could not be migrated: ([https](https://www.jmesnil.net/stomp-websocket/doc/) result ConnectTimeoutException). * [ ] http://enfranchisedmind.com/blog/posts/jquery-periodicalupdater-ajax-polling/ (404) with 1 occurrences could not be migrated: ([https](https://enfranchisedmind.com/blog/posts/jquery-periodicalupdater-ajax-polling/) result SSLHandshakeException). # 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://smokejumperit.com (301) with 1 occurrences migrated to: https://blog.enfranchisedmind.com/posts/author/candide/?coming_from=smokejumperit.com ([https](https://smokejumperit.com) result UnknownHostException). * [ ] http://sockjs.org (303) with 2 occurrences migrated to: https://github.com/sockjs/sockjs-client ([https](https://sockjs.org) result AnnotatedConnectException). * [ ] http://platform.beta.mapquest.com/traffic/ (UnknownHostException) with 1 occurrences migrated to: https://platform.beta.mapquest.com/traffic/ ([https](https://platform.beta.mapquest.com/traffic/) result UnknownHostException). * [ ] http://en.wikipedia.org/wiki/Caf%C3%A9 (301) with 1 occurrences migrated to: https://en.wikipedia.org/wiki/Caf%25C3%25A9 ([https](https://en.wikipedia.org/wiki/Caf%C3%A9) result 400). * [ ] http://ws.cdyne.com/WeatherWS/ (403) with 3 occurrences migrated to: https://ws.cdyne.com/WeatherWS/ ([https](https://ws.cdyne.com/WeatherWS/) result 403). * [ ] http://blogs.oracle.com/swinger/entry/collections_trick_i_lru_cache (404) with 1 occurrences migrated to: https://blogs.oracle.com/swinger/entry/collections_trick_i_lru_cache ([https](https://blogs.oracle.com/swinger/entry/collections_trick_i_lru_cache) result 404). * [ ] http://static.springsource.org/spring-integration/docs/latest-ga/reference/html/samples.html (301) with 1 occurrences migrated to: https://docs.spring.io/spring-integration/docs/latest-ga/reference/html/samples.html ([https](https://static.springsource.org/spring-integration/docs/latest-ga/reference/html/samples.html) result 404). * [ ] http://static.springsource.org/spring-integration/reference/html/messaging-routing-chapter.html (301) with 3 occurrences migrated to: https://docs.spring.io/spring-integration/reference/html/messaging-routing-chapter.html ([https](https://static.springsource.org/spring-integration/reference/html/messaging-routing-chapter.html) result 404). * [ ] http://docs.spring.io/spring-integration/reference/html/samples.html (301) with 1 occurrences migrated to: https://docs.spring.io/spring-integration/reference/html/samples.html ([https](https://docs.spring.io/spring-integration/reference/html/samples.html) result 404). * [ ] http://static.springsource.org/spring-integration/reference/htmlsingle/ (301) with 4 occurrences migrated to: https://docs.spring.io/spring-integration/reference/htmlsingle/ ([https](https://static.springsource.org/spring-integration/reference/htmlsingle/) result 404). * [ ] http://xml.apache.org/xslt (404) with 3 occurrences migrated to: https://xml.apache.org/xslt ([https](https://xml.apache.org/xslt) result 404). * [ ] http://customcode.info (503) with 1 occurrences migrated to: https://customcode.info ([https](https://customcode.info) result 503). ## 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/ with 1 occurrences migrated to: https://activemq.apache.org/ ([https](https://activemq.apache.org/) result 200). * [ ] http://db.apache.org/derby/ with 1 occurrences migrated to: https://db.apache.org/derby/ ([https](https://db.apache.org/derby/) result 200). * [ ] http://developer.mapquest.com/ with 1 occurrences migrated to: https://developer.mapquest.com/ ([https](https://developer.mapquest.com/) result 200). * [ ] http://docs.oracle.com/javase/tutorial/jmx/mbeans/index.html with 1 occurrences migrated to: https://docs.oracle.com/javase/tutorial/jmx/mbeans/index.html ([https](https://docs.oracle.com/javase/tutorial/jmx/mbeans/index.html) result 200). * [ ] http://static.springsource.org/spring-integration/api/org/springframework/integration/ip/tcp/serializer/ByteArrayCrLfSerializer.html (301) with 1 occurrences migrated to: https://docs.spring.io/spring-integration/api/org/springframework/integration/ip/tcp/serializer/ByteArrayCrLfSerializer.html ([https](https://static.springsource.org/spring-integration/api/org/springframework/integration/ip/tcp/serializer/ByteArrayCrLfSerializer.html) result 200). * [ ] http://static.springsource.org/spring-integration/api/org/springframework/integration/ip/tcp/serializer/ByteArrayStxEtxSerializer.html (301) with 1 occurrences migrated to: https://docs.spring.io/spring-integration/api/org/springframework/integration/ip/tcp/serializer/ByteArrayStxEtxSerializer.html ([https](https://static.springsource.org/spring-integration/api/org/springframework/integration/ip/tcp/serializer/ByteArrayStxEtxSerializer.html) result 200). * [ ] http://static.springsource.org/spring-integration/api/org/springframework/integration/store/MessageGroupStoreReaper.html (301) with 1 occurrences migrated to: https://docs.spring.io/spring-integration/api/org/springframework/integration/store/MessageGroupStoreReaper.html ([https](https://static.springsource.org/spring-integration/api/org/springframework/integration/store/MessageGroupStoreReaper.html) result 200). * [ ] http://static.springsource.org/spring-integration/docs/2.2.0.RC3/reference/htmlsingle/ (301) with 2 occurrences migrated to: https://docs.spring.io/spring-integration/docs/2.2.0.RC3/reference/htmlsingle/ ([https](https://static.springsource.org/spring-integration/docs/2.2.0.RC3/reference/htmlsingle/) result 200). * [ ] http://static.springsource.org/spring/docs/current/javadoc-api/org/springframework/core/convert/ConversionService.html (301) with 1 occurrences migrated to: https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/core/convert/ConversionService.html ([https](https://static.springsource.org/spring/docs/current/javadoc-api/org/springframework/core/convert/ConversionService.html) result 200). * [ ] http://static.springsource.org/spring/docs/current/javadoc-api/org/springframework/core/serializer/Deserializer.html (301) with 1 occurrences migrated to: https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/core/serializer/Deserializer.html ([https](https://static.springsource.org/spring/docs/current/javadoc-api/org/springframework/core/serializer/Deserializer.html) result 200). * [ ] http://static.springsource.org/spring/docs/current/javadoc-api/org/springframework/core/serializer/Serializer.html (301) with 1 occurrences migrated to: https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/core/serializer/Serializer.html ([https](https://static.springsource.org/spring/docs/current/javadoc-api/org/springframework/core/serializer/Serializer.html) result 200). * [ ] http://static.springsource.org/spring/docs/current/javadoc-api/org/springframework/web/client/RestTemplate.html (301) with 1 occurrences migrated to: https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/web/client/RestTemplate.html ([https](https://static.springsource.org/spring/docs/current/javadoc-api/org/springframework/web/client/RestTemplate.html) result 200). * [ ] http://en.wikipedia.org/wiki/Advanced_Message_Queuing_Protocol with 1 occurrences migrated to: https://en.wikipedia.org/wiki/Advanced_Message_Queuing_Protocol ([https](https://en.wikipedia.org/wiki/Advanced_Message_Queuing_Protocol) result 200). * [ ] http://en.wikipedia.org/wiki/Binary_Synchronous_Communications with 1 occurrences migrated to: https://en.wikipedia.org/wiki/Binary_Synchronous_Communications ([https](https://en.wikipedia.org/wiki/Binary_Synchronous_Communications) result 200). * [ ] http://en.wikipedia.org/wiki/CURL with 1 occurrences migrated to: https://en.wikipedia.org/wiki/CURL ([https](https://en.wikipedia.org/wiki/CURL) result 200). * [ ] http://en.wikipedia.org/wiki/Control_character with 1 occurrences migrated to: https://en.wikipedia.org/wiki/Control_character ([https](https://en.wikipedia.org/wiki/Control_character) result 200). * [ ] http://en.wikipedia.org/wiki/Extensible_Messaging_and_Presence_Protocol with 2 occurrences migrated to: https://en.wikipedia.org/wiki/Extensible_Messaging_and_Presence_Protocol ([https](https://en.wikipedia.org/wiki/Extensible_Messaging_and_Presence_Protocol) result 200). * [ ] http://en.wikipedia.org/wiki/Java_Message_Service with 1 occurrences migrated to: https://en.wikipedia.org/wiki/Java_Message_Service ([https](https://en.wikipedia.org/wiki/Java_Message_Service) result 200). * [ ] http://en.wikipedia.org/wiki/Netcat with 2 occurrences migrated to: https://en.wikipedia.org/wiki/Netcat ([https](https://en.wikipedia.org/wiki/Netcat) result 200). * [ ] http://en.wikipedia.org/wiki/Newline with 1 occurrences migrated to: https://en.wikipedia.org/wiki/Newline ([https](https://en.wikipedia.org/wiki/Newline) result 200). * [ ] http://en.wikipedia.org/wiki/OAuth with 1 occurrences migrated to: https://en.wikipedia.org/wiki/OAuth ([https](https://en.wikipedia.org/wiki/OAuth) result 200). * [ ] http://en.wikipedia.org/wiki/SOAP with 1 occurrences migrated to: https://en.wikipedia.org/wiki/SOAP ([https](https://en.wikipedia.org/wiki/SOAP) result 200). * [ ] http://en.wikipedia.org/wiki/Telnet with 2 occurrences migrated to: https://en.wikipedia.org/wiki/Telnet ([https](https://en.wikipedia.org/wiki/Telnet) result 200). * [ ] http://en.wikipedia.org/wiki/Transmission_Control_Protocol with 1 occurrences migrated to: https://en.wikipedia.org/wiki/Transmission_Control_Protocol ([https](https://en.wikipedia.org/wiki/Transmission_Control_Protocol) result 200). * [ ] http://en.wikipedia.org/wiki/XML with 1 occurrences migrated to: https://en.wikipedia.org/wiki/XML ([https](https://en.wikipedia.org/wiki/XML) result 200). * [ ] http://en.wikipedia.org/wiki/XPath with 1 occurrences migrated to: https://en.wikipedia.org/wiki/XPath ([https](https://en.wikipedia.org/wiki/XPath) result 200). * [ ] http://en.wikipedia.org/wiki/XSLT with 1 occurrences migrated to: https://en.wikipedia.org/wiki/XSLT ([https](https://en.wikipedia.org/wiki/XSLT) result 200). * [ ] http://hillert.blogspot.com/2011/01/marshal-json-data-using-jackson-in.html with 1 occurrences migrated to: https://hillert.blogspot.com/2011/01/marshal-json-data-using-jackson-in.html ([https](https://hillert.blogspot.com/2011/01/marshal-json-data-using-jackson-in.html) result 200). * [ ] http://hillert.blogspot.com/2011/05/testing-email-notifications-with-apache.html with 1 occurrences migrated to: https://hillert.blogspot.com/2011/05/testing-email-notifications-with-apache.html ([https](https://hillert.blogspot.com/2011/05/testing-email-notifications-with-apache.html) result 200). * [ ] http://james.apache.org/ with 1 occurrences migrated to: https://james.apache.org/ ([https](https://james.apache.org/) result 200). * [ ] http://james.apache.org/server/3/quick-start.html with 1 occurrences migrated to: https://james.apache.org/server/3/quick-start.html ([https](https://james.apache.org/server/3/quick-start.html) result 200). * [ ] http://jquery.com/ with 1 occurrences migrated to: https://jquery.com/ ([https](https://jquery.com/) result 200). * [ ] http://meyerweb.com/eric/tools/dencoder/ with 1 occurrences migrated to: https://meyerweb.com/eric/tools/dencoder/ ([https](https://meyerweb.com/eric/tools/dencoder/) result 200). * [ ] http://projects.spring.io/spring-integration/ with 2 occurrences migrated to: https://projects.spring.io/spring-integration/ ([https](https://projects.spring.io/spring-integration/) result 200). * [ ] http://sizzlejs.com/ with 1 occurrences migrated to: https://sizzlejs.com/ ([https](https://sizzlejs.com/) result 200). * [ ] http://tomcat.apache.org/ with 1 occurrences migrated to: https://tomcat.apache.org/ ([https](https://tomcat.apache.org/) result 200). * [ ] http://twitter.com/huntchr with 1 occurrences migrated to: https://twitter.com/huntchr ([https](https://twitter.com/huntchr) result 200). * [ ] http://www.360innovate.co.uk with 1 occurrences migrated to: https://www.360innovate.co.uk ([https](https://www.360innovate.co.uk) result 200). * [ ] http://www.amqp.org/ with 1 occurrences migrated to: https://www.amqp.org/ ([https](https://www.amqp.org/) result 200). * [ ] http://tempuri.org/ (302) with 1 occurrences migrated to: https://www.bing.com/ ([https](https://tempuri.org/) result 200). * [ ] http://www.eclipse.org/jetty/ with 1 occurrences migrated to: https://www.eclipse.org/jetty/ ([https](https://www.eclipse.org/jetty/) result 200). * [ ] http://www.eaipatterns.com/ (302) with 2 occurrences migrated to: https://www.enterpriseintegrationpatterns.com/ ([https](https://www.eaipatterns.com/) result 200). * [ ] http://www.eaipatterns.com/gregor.html (302) with 1 occurrences migrated to: https://www.enterpriseintegrationpatterns.com/gregor.html ([https](https://www.eaipatterns.com/gregor.html) result 200). * [ ] http://www.eaipatterns.com/ramblings/18_starbucks.html (302) with 1 occurrences migrated to: https://www.enterpriseintegrationpatterns.com/ramblings/18_starbucks.html ([https](https://www.eaipatterns.com/ramblings/18_starbucks.html) result 200). * [ ] http://www.gnu.org/licenses/gpl.html with 1 occurrences migrated to: https://www.gnu.org/licenses/gpl.html ([https](https://www.gnu.org/licenses/gpl.html) result 200). * [ ] http://fusesource.com (302) with 1 occurrences migrated to: https://www.jboss.org/ ([https](https://fusesource.com) result 200). * [ ] http://www.microsoft.com/en-us/download/details.aspx?id=23650 with 2 occurrences migrated to: https://www.microsoft.com/en-us/download/details.aspx?id=23650 ([https](https://www.microsoft.com/en-us/download/details.aspx?id=23650) result 200). * [ ] http://www.postgresql.org/ with 1 occurrences migrated to: https://www.postgresql.org/ ([https](https://www.postgresql.org/) result 200). * [ ] http://www.rabbitmq.com/ with 6 occurrences migrated to: https://www.rabbitmq.com/ ([https](https://www.rabbitmq.com/) result 200). * [ ] http://www.w3schools.com/xml/ with 1 occurrences migrated to: https://www.w3schools.com/xml/ ([https](https://www.w3schools.com/xml/) result 200). * [ ] http://forum.springsource.org/archive/index.php/t-84006.html (301) with 1 occurrences migrated to: https://forum.spring.io/archive/index.php/t-84006.html ([https](https://forum.springsource.org/archive/index.php/t-84006.html) result 301). * [ ] http://forum.spring.io/forum/spring-projects/integration/117523-starting-multiple-consumers?p=589517 with 1 occurrences migrated to: https://forum.spring.io/forum/spring-projects/integration/117523-starting-multiple-consumers?p=589517 ([https](https://forum.spring.io/forum/spring-projects/integration/117523-starting-multiple-consumers?p=589517) result 301). * [ ] http://forum.spring.io/forum/spring-projects/integration/119081-dynamic-inbound-channel-adapter-creation with 1 occurrences migrated to: https://forum.spring.io/forum/spring-projects/integration/119081-dynamic-inbound-channel-adapter-creation ([https](https://forum.spring.io/forum/spring-projects/integration/119081-dynamic-inbound-channel-adapter-creation) result 301). * [ ] http://jira.springframework.org/browse/ROO-909 with 1 occurrences migrated to: https://jira.springframework.org/browse/ROO-909 ([https](https://jira.springframework.org/browse/ROO-909) result 301). * [ ] http://jquery.org/license with 1 occurrences migrated to: https://jquery.org/license ([https](https://jquery.org/license) result 301). * [ ] http://junit.org/ with 1 occurrences migrated to: https://junit.org/ ([https](https://junit.org/) result 301). * [ ] http://mina.apache.org/sshd-project with 1 occurrences migrated to: https://mina.apache.org/sshd-project ([https](https://mina.apache.org/sshd-project) result 301). * [ ] http://msdn.microsoft.com/en-us/sqlserver/aa937724.aspx with 1 occurrences migrated to: https://msdn.microsoft.com/en-us/sqlserver/aa937724.aspx ([https](https://msdn.microsoft.com/en-us/sqlserver/aa937724.aspx) result 301). * [ ] http://projects.spring.io/spring-boot with 1 occurrences migrated to: https://projects.spring.io/spring-boot ([https](https://projects.spring.io/spring-boot) result 301). * [ ] http://springsource.com with 1 occurrences migrated to: https://springsource.com ([https](https://springsource.com) result 301). * [ ] http://support.microsoft.com/default.aspx?scid=kb;EN-US;914277 with 2 occurrences migrated to: https://support.microsoft.com/default.aspx?scid=kb;EN-US;914277 ([https](https://support.microsoft.com/default.aspx?scid=kb;EN-US;914277) result 301). * [ ] http://www.360innovate.co.uk/blog/2009/03/periodicalupdater-for-jquery/ with 1 occurrences migrated to: https://www.360innovate.co.uk/blog/2009/03/periodicalupdater-for-jquery/ ([https](https://www.360innovate.co.uk/blog/2009/03/periodicalupdater-for-jquery/) result 301). * [ ] http://www.eaipatterns.com/eaipatterns.html (302) with 1 occurrences migrated to: https://www.enterpriseintegrationpatterns.com/eaipatterns.html ([https](https://www.eaipatterns.com/eaipatterns.html) result 301). * [ ] http://www.google.com/talk/ with 1 occurrences migrated to: https://www.google.com/talk/ ([https](https://www.google.com/talk/) result 301). * [ ] http://www.gradle.org with 4 occurrences migrated to: https://www.gradle.org ([https](https://www.gradle.org) result 301). * [ ] http://www.gradle.org/docs/current/userguide/application_plugin.html with 10 occurrences migrated to: https://www.gradle.org/docs/current/userguide/application_plugin.html ([https](https://www.gradle.org/docs/current/userguide/application_plugin.html) result 301). * [ ] http://www.gradle.org/docs/current/userguide/jetty_plugin.html with 1 occurrences migrated to: https://www.gradle.org/docs/current/userguide/jetty_plugin.html ([https](https://www.gradle.org/docs/current/userguide/jetty_plugin.html) result 301). * [ ] http://www.mapquestapi.com/ with 1 occurrences migrated to: https://www.mapquestapi.com/ ([https](https://www.mapquestapi.com/) result 301). * [ ] http://www.mongodb.org/display/DOCS/Querying with 1 occurrences migrated to: https://www.mongodb.org/display/DOCS/Querying ([https](https://www.mongodb.org/display/DOCS/Querying) result 301). * [ ] http://www.opensource.org/licenses/mit-license.php with 1 occurrences migrated to: https://www.opensource.org/licenses/mit-license.php ([https](https://www.opensource.org/licenses/mit-license.php) result 301). * [ ] http://www.oracle.com/technetwork/indexes/downloads/index.html with 2 occurrences migrated to: https://www.oracle.com/technetwork/indexes/downloads/index.html ([https](https://www.oracle.com/technetwork/indexes/downloads/index.html) result 301). * [ ] http://www.rabbitmq.com/install.html with 4 occurrences migrated to: https://www.rabbitmq.com/install.html ([https](https://www.rabbitmq.com/install.html) result 301). * [ ] http://www.springsource.org/node/3598 with 1 occurrences migrated to: https://www.springsource.org/node/3598 ([https](https://www.springsource.org/node/3598) result 301). * [ ] http://www.springsource.org/spring-amqp with 4 occurrences migrated to: https://www.springsource.org/spring-amqp ([https](https://www.springsource.org/spring-amqp) result 301). * [ ] http://www.springsource.org/spring-integration with 35 occurrences migrated to: https://www.springsource.org/spring-integration ([https](https://www.springsource.org/spring-integration) result 301). * [ ] http://www.springintegration.org/ (301) with 7 occurrences migrated to: https://www.springsource.org/spring-integration/ ([https](https://www.springintegration.org/) result 301). * [ ] http://www.springsource.org/spring-security with 1 occurrences migrated to: https://www.springsource.org/spring-security ([https](https://www.springsource.org/spring-security) result 301). * [ ] http://www.springsource.org/spring-web-services with 1 occurrences migrated to: https://www.springsource.org/spring-web-services ([https](https://www.springsource.org/spring-web-services) result 301). * [ ] http://www.springsource.org/sts with 1 occurrences migrated to: https://www.springsource.org/sts ([https](https://www.springsource.org/sts) result 301). * [ ] http://www.youtube.com/SpringSourceDev with 2 occurrences migrated to: https://www.youtube.com/SpringSourceDev ([https](https://www.youtube.com/SpringSourceDev) result 301). * [ ] http://dev.twitter.com with 1 occurrences migrated to: https://dev.twitter.com ([https](https://dev.twitter.com) result 302). * [ ] http://dev.twitter.com/ with 4 occurrences migrated to: https://dev.twitter.com/ ([https](https://dev.twitter.com/) result 302). * [ ] http://visualvm.java.net/ with 1 occurrences migrated to: https://visualvm.java.net/ ([https](https://visualvm.java.net/) result 302). * [ ] http://www.springsource.com/developer/sts with 4 occurrences migrated to: https://www.springsource.com/developer/sts ([https](https://www.springsource.com/developer/sts) result 302). # Ignored These URLs were intentionally ignored. * http://java.sun.com/JSP/Page with 40 occurrences * http://java.sun.com/jsp/jstl/core with 34 occurrences * http://java.sun.com/jsp/jstl/fmt with 2 occurrences * http://java.sun.com/jsp/jstl/functions with 29 occurrences * http://localhost:8080/broadcast/foo with 2 occurrences * http://localhost:8080/chat with 1 occurrences * http://localhost:8080/foo with 3 occurrences * http://localhost:8080/monitoring with 1 occurrences * http://localhost:8080/multipart-http/inboundAdapter.htm with 1 occurrences * http://localhost:8080/rest-http/services/employee/ with 3 occurrences * http://localhost:8080/rest-http/services/employee/0/search with 1 occurrences * http://localhost:8080/rest-http/services/employee/1/search with 1 occurrences * http://localhost:8080/shutdown with 1 occurrences * http://localhost:8080/sockjs.js with 2 occurrences * http://localhost:8080/stomp.js with 1 occurrences * http://localhost:8080/time with 1 occurrences * http://localhost:8080/ws-inbound-gateway/echoservice with 2 occurrences * http://localhost:8082 with 1 occurrences * http://schemas.xmlsoap.org/soap/envelope/ with 1 occurrences * http://tiles.apache.org/tags-tiles with 1 occurrences * http://www.example.org/orders with 3 occurrences * http://www.example.org/orders-bigbooks with 2 occurrences * http://www.springframework.org/spring-ws/samples/echo with 5 occurrences * http://www.springframework.org/tags with 34 occurrences * http://www.springframework.org/tags/form with 18 occurrences * http://www.w3.org/1999/XSL/Transform with 1 occurrences
Testing Examples
A series of test cases that show techniques to test Spring Integration applications.
...chain.SpelChainTests.java
This test case shows how to test a fragment of a larger integration flow. In this example, we have a simple chain containing a header enricher and a transformer. It uses Direct channels. The test case shows how to bridge the output channel to a queue channel so we can retrieve the output message after the test executes and verify the appropriate actions were applied to the input message.
...splitter.CommaDelimitedSplitterTests.java
This test case shows both unit testing a custom splitter class as well as testing it within a Spring Integration flow fragment.
...aggregator.CommaDelimitedAggregatorTests.java
This test case shows both unit testing a custom aggregator class as well as testing it within a Spring Integration flow fragment.
...externalgateway.ExternalGatewaySubstitutionTests.java
This example is a little more complex. The application is a simplified version of a travel demo presented at SpringOne in 2010. You do not need to fully understand the application for the purposes of this demonstration. Suffice it to say that a zip (postal) code is sent to two outbound gateways (one web service, one http) and the weather and traffic for that zip code are aggregated together. You can run the "real" application by executing the Main class in src/main/java and entering a valid zip code in the console.
In many cases, when integrating with external services, we can't rely on those services being available while we test. Consequently, we need a mechanism to stub out those services so we can run the remainder of the flow in a repeatable manner without need for connectivity to the services. This example uses dummy service activators in place of the real outbound gateways.
This separation of 'infrastructure' from application beans is similar to the way we separate DataSource, ConnectionFactory beans etc so that the application can be tested with local versions.
...router.PetRouterTests.java
This test case shows both unit testing a custom router class as well as testing it within a Spring Integration flow fragment. A second filter is defined, that uses a discard channel for filtered messages.
...filter.PetFilterTests.java
This test case shows both unit testing a custom filter class as well as testing it within a Spring Integration flow fragment.
...gateway.GatewayTests.java
This test case shows how to verify that a has been configured to work as expected, including @Header parameters on the gateway method and elements in the configuration.
...errorhandling.GatewayTests.java
This test case shows how to verify that gateway error-channel configuration is correct, and show how to extract the cause and failed message from the MessagingException.