URL Cleanup
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). These URLs were unable to be fixed. Please review them to see if they can be manually resolved. * [ ] http://aopalliance.sourceforge.net (200) with 1 occurrences could not be migrated: ([https](https://aopalliance.sourceforge.net) result AnnotatedConnectException). * [ ] http://cglib.sourceforge.net (200) with 2 occurrences could not be migrated: ([https](https://cglib.sourceforge.net) result AnnotatedConnectException). * [ ] http://classdoc.sourceforge.net (200) with 1 occurrences could not be migrated: ([https](https://classdoc.sourceforge.net) result AnnotatedConnectException). * [ ] http://code.jquery.com:80/jquery.js (200) with 1 occurrences could not be migrated: ([https](https://code.jquery.com:80/jquery.js) result SSLException). * [ ] http://dbunit.sourceforge.net/ (200) with 1 occurrences could not be migrated: ([https](https://dbunit.sourceforge.net/) result AnnotatedConnectException). * [ ] http://docs.groovy-lang.org/docs/next/html/documentation/template-engines.html (200) with 1 occurrences could not be migrated: ([https](https://docs.groovy-lang.org/docs/next/html/documentation/template-engines.html) result SSLProtocolException). * [ ] http://domain3.com (200) with 6 occurrences could not be migrated: ([https](https://domain3.com) result ConnectTimeoutException). * [ ] http://forum.thymeleaf.org/Thymeleaf-3-0-8-JUST-PUBLISHED-td4030687.html (200) with 1 occurrences could not be migrated: ([https](https://forum.thymeleaf.org/Thymeleaf-3-0-8-JUST-PUBLISHED-td4030687.html) result SSLHandshakeException). * [ ] http://gregfranko.com/jquery.tocify.js/ (200) with 1 occurrences could not be migrated: ([https](https://gregfranko.com/jquery.tocify.js/) result SSLHandshakeException). * [ ] http://grinder.sourceforge.net/ (200) with 1 occurrences could not be migrated: ([https](https://grinder.sourceforge.net/) result AnnotatedConnectException). * [ ] http://groovy-lang.org/templating.html (200) with 3 occurrences could not be migrated: ([https](https://groovy-lang.org/templating.html) result SSLProtocolException). * [ ] http://hsqldb.org (200) with 1 occurrences could not be migrated: ([https](https://hsqldb.org) result SSLHandshakeException). * [ ] http://htmlunit.sourceforge.net/ (200) with 3 occurrences could not be migrated: ([https](https://htmlunit.sourceforge.net/) result AnnotatedConnectException). * [ ] http://htmlunit.sourceforge.net/gettingStarted.html (200) with 1 occurrences could not be migrated: ([https](https://htmlunit.sourceforge.net/gettingStarted.html) result AnnotatedConnectException). * [ ] http://htmlunit.sourceforge.net/javascript.html (200) with 1 occurrences could not be migrated: ([https](https://htmlunit.sourceforge.net/javascript.html) result AnnotatedConnectException). * [ ] http://javadiff.cvs.sourceforge.net/ (200) with 3 occurrences could not be migrated: ([https](https://javadiff.cvs.sourceforge.net/) result SSLHandshakeException). * [ ] http://jibx.sourceforge.net/ (200) with 2 occurrences could not be migrated: ([https](https://jibx.sourceforge.net/) result AnnotatedConnectException). * [ ] http://joda-time.sourceforge.net (200) with 1 occurrences could not be migrated: ([https](https://joda-time.sourceforge.net) result AnnotatedConnectException). * [ ] http://jotm.objectweb.org/ (200) with 1 occurrences could not be migrated: ([https](https://jotm.objectweb.org/) result NotSslRecordException). * [ ] http://json-b.net/ (200) with 1 occurrences could not be migrated: ([https](https://json-b.net/) result SSLHandshakeException). * [ ] http://mx4j.sourceforge.net (200) with 1 occurrences could not be migrated: ([https](https://mx4j.sourceforge.net) result AnnotatedConnectException). * [ ] http://mx4j.sourceforge.net/ (200) with 1 occurrences could not be migrated: ([https](https://mx4j.sourceforge.net/) result AnnotatedConnectException). * [ ] http://mydomain3.com (200) with 9 occurrences could not be migrated: ([https](https://mydomain3.com) result ConnectTimeoutException). * [ ] http://objenesis.org (200) with 1 occurrences could not be migrated: ([https](https://objenesis.org) result SSLHandshakeException). * [ ] http://objenesis.org/tutorial.html (200) with 1 occurrences could not be migrated: ([https](https://objenesis.org/tutorial.html) result SSLHandshakeException). * [ ] http://other.com/ (200) with 2 occurrences could not be migrated: ([https](https://other.com/) result SSLHandshakeException). * [ ] http://reactivex.io/ (200) with 1 occurrences could not be migrated: ([https](https://reactivex.io/) result SSLHandshakeException). * [ ] http://reactivex.io/documentation/operators.html (200) with 1 occurrences could not be migrated: ([https](https://reactivex.io/documentation/operators.html) result SSLHandshakeException). * [ ] http://url.somewhereelse.com (200) with 4 occurrences could not be migrated: ([https](https://url.somewhereelse.com) result SSLHandshakeException). * [ ] http://www.beanshell.org (200) with 1 occurrences could not be migrated: ([https](https://www.beanshell.org) result SSLHandshakeException). * [ ] http://www.beanshell.org/ (200) with 1 occurrences could not be migrated: ([https](https://www.beanshell.org/) result SSLHandshakeException). * [ ] http://www.doclet.com (200) with 1 occurrences could not be migrated: ([https](https://www.doclet.com) result AnnotatedConnectException). * [ ] http://www.gebish.org/ (200) with 1 occurrences could not be migrated: ([https](https://www.gebish.org/) result SSLHandshakeException). * [ ] http://www.gebish.org/manual/current/ (200) with 3 occurrences could not be migrated: ([https](https://www.gebish.org/manual/current/) result SSLHandshakeException). * [ ] http://www.groovy-lang.org/ (200) with 2 occurrences could not be migrated: ([https](https://www.groovy-lang.org/) result SSLProtocolException). * [ ] http://www.groovy-lang.org/operators.html (200) with 2 occurrences could not be migrated: ([https](https://www.groovy-lang.org/operators.html) result SSLProtocolException). * [ ] http://www.hsqldb.org (200) with 1 occurrences could not be migrated: ([https](https://www.hsqldb.org) result SSLHandshakeException). * [ ] http://www.jensgulden.de (200) with 1 occurrences could not be migrated: ([https](https://www.jensgulden.de) result AnnotatedConnectException). * [ ] http://www.mockobjects.com (200) with 2 occurrences could not be migrated: ([https](https://www.mockobjects.com) result ClosedChannelException). * [ ] http://www.mockobjects.com/ (200) with 1 occurrences could not be migrated: ([https](https://www.mockobjects.com/) result ClosedChannelException). * [ ] http://xmlunit.sourceforge.net/ (200) with 2 occurrences could not be migrated: ([https](https://xmlunit.sourceforge.net/) result AnnotatedConnectException). * [ ] http://192.168.0.1/mvc-showcase (301) with 1 occurrences could not be migrated: ([https](https://192.168.0.1/mvc-showcase) result ConnectTimeoutException). * [ ] http://www.easymock.org (301) with 2 occurrences could not be migrated: ([https](https://www.easymock.org) result SSLHandshakeException). * [ ] http://www.easymock.org/ (301) with 1 occurrences could not be migrated: ([https](https://www.easymock.org/) result SSLHandshakeException). * [ ] http://www.jmock.org/ (301) with 1 occurrences could not be migrated: ([https](https://www.jmock.org/) result SSLHandshakeException). * [ ] http://foo.com (301) with 4 occurrences could not be migrated: ([https](https://foo.com) result SSLHandshakeException). * [ ] http://foo.com/ (301) with 1 occurrences could not be migrated: ([https](https://foo.com/) result SSLHandshakeException). * [ ] http://foo.com/a (301) with 1 occurrences could not be migrated: ([https](https://foo.com/a) result SSLHandshakeException). * [ ] http://foo.com/a?foo=bar&foo=baz (301) with 4 occurrences could not be migrated: ([https](https://foo.com/a?foo=bar&foo=baz) result SSLHandshakeException). * [ ] http://foo.com/bar (301) with 5 occurrences could not be migrated: ([https](https://foo.com/bar) result SSLHandshakeException). * [ ] http://foo.com/baz (301) with 1 occurrences could not be migrated: ([https](https://foo.com/baz) result SSLHandshakeException). * [ ] http://foo.com/rest/books/6.json (301) with 1 occurrences could not be migrated: ([https](https://foo.com/rest/books/6.json) result SSLHandshakeException). * [ ] http://foo.com/rest/books/6/pages/1.json (301) with 1 occurrences could not be migrated: ([https](https://foo.com/rest/books/6/pages/1.json) result SSLHandshakeException). * [ ] http://foo.com/v1 (301) with 1 occurrences could not be migrated: ([https](https://foo.com/v1) result SSLHandshakeException). * [ ] http://foo.com/v1/123 (301) with 1 occurrences could not be migrated: ([https](https://foo.com/v1/123) result SSLHandshakeException). * [ ] http://foo.com/v1/bar (301) with 1 occurrences could not be migrated: ([https](https://foo.com/v1/bar) result SSLHandshakeException). * [ ] http://foo.com/v1?id=123 (301) with 2 occurrences could not be migrated: ([https](https://foo.com/v1?id=123) result SSLHandshakeException). * [ ] http://foo.com/wrong (301) with 1 occurrences could not be migrated: ([https](https://foo.com/wrong) result SSLHandshakeException). * [ ] http://mydomain4.com (301) with 3 occurrences could not be migrated: ([https](https://mydomain4.com) result SSLHandshakeException). * [ ] http://www.caucho.com/hessian (302) with 6 occurrences could not be migrated: ([https](https://www.caucho.com/hessian) result SSLHandshakeException). * [ ] http://mydomain2.com (302) with 22 occurrences could not be migrated: ([https](https://mydomain2.com) result ConnectTimeoutException). * [ ] http://www.jdiff.org (302) with 1 occurrences could not be migrated: ([https](https://www.jdiff.org) result ConnectTimeoutException). * [ ] http://example.com:80/test/this/here (404) with 3 occurrences could not be migrated: ([https](https://example.com:80/test/this/here) result NotSslRecordException). * [ ] http://www.foo.com/schema/component/component.xsd (404) with 1 occurrences could not be migrated: ([https](https://www.foo.com/schema/component/component.xsd) result SSLHandshakeException). * [ ] http://www.foo.com/schema/jcache (404) with 2 occurrences could not be migrated: ([https](https://www.foo.com/schema/jcache) result SSLHandshakeException). * [ ] http://www.mycompany.com/schema/myns/myns.xsd (404) with 1 occurrences could not be migrated: ([https](https://www.mycompany.com/schema/myns/myns.xsd) result ConnectTimeoutException). * [ ] http://xunitpatterns.com/Test%20Spy.html (404) with 1 occurrences could not be migrated: ([https](https://xunitpatterns.com/Test%20Spy.html) result AnnotatedConnectException). 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://bugs.sun.com/view_bug.do?bug_id=6342411 (302) with 1 occurrences migrated to: https://bugs.java.com/view_bug.do?bug_id=6342411 ([https](https://bugs.sun.com/view_bug.do?bug_id=6342411) result SSLHandshakeException). * [ ] http://bugs.sun.com/view_bug.do?bug_id=7023180 (302) with 2 occurrences migrated to: https://bugs.java.com/view_bug.do?bug_id=7023180 ([https](https://bugs.sun.com/view_bug.do?bug_id=7023180) result SSLHandshakeException). * [ ] http://www.freemarker.org (301) with 5 occurrences migrated to: https://freemarker.apache.org/ ([https](https://www.freemarker.org) result ConnectTimeoutException). * [ ] http://sockjs.org (303) with 2 occurrences migrated to: https://github.com/sockjs/sockjs-client ([https](https://sockjs.org) result AnnotatedConnectException). * [ ] http://network.pivotal.io/open-source (301) with 1 occurrences migrated to: https://network.pivotal.io/open-source ([https](https://network.pivotal.io/open-source) result ReadTimeoutException). * [ ] http://projects.eclipse.org/projects/tools.buildship (301) with 1 occurrences migrated to: https://projects.eclipse.org/projects/tools.buildship ([https](https://projects.eclipse.org/projects/tools.buildship) result SSLException). * [ ] http://aaa.org:8080/a (301) with 1 occurrences migrated to: https://www.aaa.org/articles/ ([https](https://aaa.org:8080/a) result NotSslRecordException). * [ ] http://aaa.org:8080/b/c/d (301) with 1 occurrences migrated to: https://www.aaa.org/b/c/d ([https](https://aaa.org:8080/b/c/d) result ReadTimeoutException). * [ ] http://www.caucho.com (302) with 1 occurrences migrated to: https://www.caucho.com/ ([https](https://www.caucho.com) result SSLHandshakeException). * [ ] http://jruby.org (301) with 4 occurrences migrated to: https://www.jruby.org ([https](https://jruby.org) result SSLHandshakeException). * [ ] http://jruby.org/ (301) with 1 occurrences migrated to: https://www.jruby.org ([https](https://jruby.org/) result SSLHandshakeException). * [ ] http://bbb.org:9090/b (AnnotatedConnectException) with 2 occurrences migrated to: https://bbb.org:9090/b ([https](https://bbb.org:9090/b) result AnnotatedConnectException). * [ ] http://192.168.28.42/1.jsp (ConnectTimeoutException) with 3 occurrences migrated to: https://192.168.28.42/1.jsp ([https](https://192.168.28.42/1.jsp) result ConnectTimeoutException). * [ ] http://example.com:8080/ (ConnectTimeoutException) with 1 occurrences migrated to: https://example.com:8080/ ([https](https://example.com:8080/) result ConnectTimeoutException). * [ ] http://example.com:8080/bar (ConnectTimeoutException) with 5 occurrences migrated to: https://example.com:8080/bar ([https](https://example.com:8080/bar) result ConnectTimeoutException). * [ ] http://example.org:9090 (ConnectTimeoutException) with 2 occurrences migrated to: https://example.org:9090 ([https](https://example.org:9090) result ConnectTimeoutException). * [ ] http://example.org:9090/base (ConnectTimeoutException) with 12 occurrences migrated to: https://example.org:9090/base ([https](https://example.org:9090/base) result ConnectTimeoutException). * [ ] http://example.org:9090/base/people (ConnectTimeoutException) with 2 occurrences migrated to: https://example.org:9090/base/people ([https](https://example.org:9090/base/people) result ConnectTimeoutException). * [ ] http://example.org:9090/base/something/1/foo (ConnectTimeoutException) with 2 occurrences migrated to: https://example.org:9090/base/something/1/foo ([https](https://example.org:9090/base/something/1/foo) result ConnectTimeoutException). * [ ] http://example.org:9090/base/something/else (ConnectTimeoutException) with 2 occurrences migrated to: https://example.org:9090/base/something/else ([https](https://example.org:9090/base/something/else) result ConnectTimeoutException). * [ ] http://example.org:9999/base (ConnectTimeoutException) with 1 occurrences migrated to: https://example.org:9999/base ([https](https://example.org:9999/base) result ConnectTimeoutException). * [ ] http://example.org:9999/base/api/people/123/addresses (ConnectTimeoutException) with 1 occurrences migrated to: https://example.org:9999/base/api/people/123/addresses ([https](https://example.org:9999/base/api/people/123/addresses) result ConnectTimeoutException). * [ ] http://example.org:9999/base/api/people/123/addresses/DE (ConnectTimeoutException) with 1 occurrences migrated to: https://example.org:9999/base/api/people/123/addresses/DE ([https](https://example.org:9999/base/api/people/123/addresses/DE) result ConnectTimeoutException). * [ ] http://example.org:9999/base/people/123/addresses/DE (ConnectTimeoutException) with 1 occurrences migrated to: https://example.org:9999/base/people/123/addresses/DE ([https](https://example.org:9999/base/people/123/addresses/DE) result ConnectTimeoutException). * [ ] http://example.org:9999/next (ConnectTimeoutException) with 1 occurrences migrated to: https://example.org:9999/next ([https](https://example.org:9999/next) result ConnectTimeoutException). * [ ] http://example.org:9999/path?q=foo (ConnectTimeoutException) with 1 occurrences migrated to: https://example.org:9999/path?q=foo ([https](https://example.org:9999/path?q=foo) result ConnectTimeoutException). * [ ] http://foo.com:8080/v1/bar?id=123 (ConnectTimeoutException) with 1 occurrences migrated to: https://foo.com:8080/v1/bar?id=123 ([https](https://foo.com:8080/v1/bar?id=123) result ConnectTimeoutException). * [ ] http://mydomain1.com:123 (ConnectTimeoutException) with 1 occurrences migrated to: https://mydomain1.com:123 ([https](https://mydomain1.com:123) result ConnectTimeoutException). * [ ] http://site1.com (ConnectTimeoutException) with 13 occurrences migrated to: https://site1.com ([https](https://site1.com) result ConnectTimeoutException). * [ ] http://wwws.sun.com/software/xml/developers/diffmk/ (ConnectTimeoutException) with 1 occurrences migrated to: https://wwws.sun.com/software/xml/developers/diffmk/ ([https](https://wwws.sun.com/software/xml/developers/diffmk/) result ConnectTimeoutException). * [ ] http://www.w3.org/TR/html4/loose.dtd (ReadTimeoutException) with 5 occurrences migrated to: https://www.w3.org/TR/html4/loose.dtd ([https](https://www.w3.org/TR/html4/loose.dtd) result ReadTimeoutException). * [ ] http://DOMAIN2.com (UnknownHostException) with 2 occurrences migrated to: https://DOMAIN2.com ([https](https://DOMAIN2.com) result UnknownHostException). * [ ] http://a.example.org/mvc-showcase (UnknownHostException) with 1 occurrences migrated to: https://a.example.org/mvc-showcase ([https](https://a.example.org/mvc-showcase) result UnknownHostException). * [ ] http://arjen:foobar@java.sun.com:80 (UnknownHostException) with 1 occurrences migrated to: https://arjen:foobar@java.sun.com:80 ([https](https://arjen:foobar@java.sun.com:80) result UnknownHostException). * [ ] http://dev.bar.com (UnknownHostException) with 3 occurrences migrated to: https://dev.bar.com ([https](https://dev.bar.com) result UnknownHostException). * [ ] http://domain1.com (UnknownHostException) with 25 occurrences migrated to: https://domain1.com ([https](https://domain1.com) result UnknownHostException). * [ ] http://domain1.com/test.html (UnknownHostException) with 4 occurrences migrated to: https://domain1.com/test.html ([https](https://domain1.com/test.html) result UnknownHostException). * [ ] http://domain2.com (UnknownHostException) with 98 occurrences migrated to: https://domain2.com ([https](https://domain2.com) result UnknownHostException). * [ ] http://example.com",HttpMethod.GET (UnknownHostException) with 6 occurrences migrated to: https://example.com",HttpMethod.GET ([https](https://example.com",HttpMethod.GET) result UnknownHostException). * [ ] http://foo.bar.com (UnknownHostException) with 4 occurrences migrated to: https://foo.bar.com ([https](https://foo.bar.com) result UnknownHostException). * [ ] http://joe.openid.example.org/ (UnknownHostException) with 2 occurrences migrated to: https://joe.openid.example.org/ ([https](https://joe.openid.example.org/) result UnknownHostException). * [ ] http://myserver/logo.png (UnknownHostException) with 1 occurrences migrated to: https://myserver/logo.png ([https](https://myserver/logo.png) result UnknownHostException). * [ ] http://samples.springframework.org/order (UnknownHostException) with 2 occurrences migrated to: https://samples.springframework.org/order ([https](https://samples.springframework.org/order) result UnknownHostException). * [ ] http://url.somewhere.com (UnknownHostException) with 25 occurrences migrated to: https://url.somewhere.com ([https](https://url.somewhere.com) result UnknownHostException). * [ ] http://url.somewhere.com/path (UnknownHostException) with 1 occurrences migrated to: https://url.somewhere.com/path ([https](https://url.somewhere.com/path) result UnknownHostException). * [ ] http://url.somewhere.com/path?id=1 (UnknownHostException) with 1 occurrences migrated to: https://url.somewhere.com/path?id=1 ([https](https://url.somewhere.com/path?id=1) result UnknownHostException). * [ ] http://url.somewhere.com/test.htm (UnknownHostException) with 2 occurrences migrated to: https://url.somewhere.com/test.htm ([https](https://url.somewhere.com/test.htm) result UnknownHostException). * [ ] http://url.somewhere.com?a=b&c=d (UnknownHostException) with 1 occurrences migrated to: https://url.somewhere.com?a=b&c=d ([https](https://url.somewhere.com?a=b&c=d) result UnknownHostException). * [ ] http://url.somewhere.com?foo= (UnknownHostException) with 2 occurrences migrated to: https://url.somewhere.com?foo= ([https](https://url.somewhere.com?foo=) result UnknownHostException). * [ ] http://url.somewhere.com?foo=bar (UnknownHostException) with 4 occurrences migrated to: https://url.somewhere.com?foo=bar ([https](https://url.somewhere.com?foo=bar) result UnknownHostException). * [ ] http://url.somewhere.com?foo=bar&a=b&c=d (UnknownHostException) with 2 occurrences migrated to: https://url.somewhere.com?foo=bar&a=b&c=d ([https](https://url.somewhere.com?foo=bar&a=b&c=d) result UnknownHostException). * [ ] http://wiki.fasterxml.com/JacksonHome (UnknownHostException) with 3 occurrences migrated to: https://wiki.fasterxml.com/JacksonHome ([https](https://wiki.fasterxml.com/JacksonHome) result UnknownHostException). * [ ] http://wiki.fasterxml.com/JacksonJsonViews (UnknownHostException) with 4 occurrences migrated to: https://wiki.fasterxml.com/JacksonJsonViews ([https](https://wiki.fasterxml.com/JacksonJsonViews) result UnknownHostException). * [ ] http://x.y.z (UnknownHostException) with 2 occurrences migrated to: https://x.y.z ([https](https://x.y.z) result UnknownHostException). * [ ] http://abc.com/v1 (301) with 1 occurrences migrated to: https://abc.go.com/v1 ([https](https://abc.com/v1) result 404). * [ ] http://abc.com/v1/accounts/43 (301) with 1 occurrences migrated to: https://abc.go.com/v1/accounts/43 ([https](https://abc.com/v1/accounts/43) result 404). * [ ] http://abc.com/v1/accounts?q=12 (301) with 1 occurrences migrated to: https://abc.go.com/v1/accounts?q=12 ([https](https://abc.com/v1/accounts?q=12) result 404). * [ ] http://abc.com/v2/accounts?q=12 (301) with 1 occurrences migrated to: https://abc.go.com/v2/accounts?q=12 ([https](https://abc.com/v2/accounts?q=12) result 404). * [ ] http://docs.spring.io/v1/bar (301) with 1 occurrences migrated to: https://docs.spring.io/v1/bar ([https](https://docs.spring.io/v1/bar) result 404). * [ ] http://example.com/-foo (404) with 2 occurrences migrated to: https://example.com/-foo ([https](https://example.com/-foo) result 404). * [ ] http://example.com/1 (404) with 1 occurrences migrated to: https://example.com/1 ([https](https://example.com/1) result 404). * [ ] http://example.com/1/2 (404) with 2 occurrences migrated to: https://example.com/1/2 ([https](https://example.com/1/2) result 404). * [ ] http://example.com/2 (404) with 1 occurrences migrated to: https://example.com/2 ([https](https://example.com/2) result 404). * [ ] http://example.com/a%20b?q=a%2Bb (404) with 1 occurrences migrated to: https://example.com/a%20b?q=a%2Bb ([https](https://example.com/a%20b?q=a%2Bb) result 404). * [ ] http://example.com/abc/ (404) with 1 occurrences migrated to: https://example.com/abc/ ([https](https://example.com/abc/) result 404). * [ ] http://example.com/abc/x/y (404) with 1 occurrences migrated to: https://example.com/abc/x/y ([https](https://example.com/abc/x/y) result 404). * [ ] http://example.com/abc/x/y/z (404) with 3 occurrences migrated to: https://example.com/abc/x/y/z ([https](https://example.com/abc/x/y/z) result 404). * [ ] http://example.com/app/login/authenticate (404) with 1 occurrences migrated to: https://example.com/app/login/authenticate ([https](https://example.com/app/login/authenticate) result 404). * [ ] http://example.com/arbitrary/path (404) with 1 occurrences migrated to: https://example.com/arbitrary/path ([https](https://example.com/arbitrary/path) result 404). * [ ] http://example.com/bar (404) with 6 occurrences migrated to: https://example.com/bar ([https](https://example.com/bar) result 404). * [ ] http://example.com/context.xml (404) with 4 occurrences migrated to: https://example.com/context.xml ([https](https://example.com/context.xml) result 404). * [ ] http://example.com/example (404) with 6 occurrences migrated to: https://example.com/example ([https](https://example.com/example) result 404). * [ ] http://example.com/example/?name (404) with 1 occurrences migrated to: https://example.com/example/?name ([https](https://example.com/example/?name) result 404). * [ ] http://example.com/example/?name= (404) with 1 occurrences migrated to: https://example.com/example/?name= ([https](https://example.com/example/?name=) result 404). * [ ] http://example.com/example/?name=%20 (404) with 1 occurrences migrated to: https://example.com/example/?name=%20 ([https](https://example.com/example/?name=%20) result 404). * [ ] http://example.com/example/?name=row%5B0%5D (404) with 1 occurrences migrated to: https://example.com/example/?name=row%5B0%5D ([https](https://example.com/example/?name=row%5B0%5D) result 404). * [ ] http://example.com/example/?name=value (404) with 1 occurrences migrated to: https://example.com/example/?name=value ([https](https://example.com/example/?name=value) result 404). * [ ] http://example.com/example/?name=value¶m2=value+2 (404) with 1 occurrences migrated to: https://example.com/example/?name=value¶m2=value+2 ([https](https://example.com/example/?name=value¶m2=value+2) result 404). * [ ] http://example.com/example/?row%5B0%5D=value (404) with 1 occurrences migrated to: https://example.com/example/?row%5B0%5D=value ([https](https://example.com/example/?row%5B0%5D=value) result 404). * [ ] http://example.com/foo (404) with 6 occurrences migrated to: https://example.com/foo ([https](https://example.com/foo) result 404). * [ ] http://example.com/foo/../bar (404) with 1 occurrences migrated to: https://example.com/foo/../bar ([https](https://example.com/foo/../bar) result 404). * [ ] http://example.com/foo/foo2?bar (404) with 1 occurrences migrated to: https://example.com/foo/foo2?bar ([https](https://example.com/foo/foo2?bar) result 404). * [ ] http://example.com/foo?bar (404) with 4 occurrences migrated to: https://example.com/foo?bar ([https](https://example.com/foo?bar) result 404). * [ ] http://example.com/foo?bar= (404) with 2 occurrences migrated to: https://example.com/foo?bar= ([https](https://example.com/foo?bar=) result 404). * [ ] http://example.com/foo?bar=baz (404) with 2 occurrences migrated to: https://example.com/foo?bar=baz ([https](https://example.com/foo?bar=baz) result 404). * [ ] http://example.com/foo?baz=42 (404) with 1 occurrences migrated to: https://example.com/foo?baz=42 ([https](https://example.com/foo?baz=42) result 404). * [ ] http://example.com/foo?foo=bar&baz=qux (404) with 2 occurrences migrated to: https://example.com/foo?foo=bar&baz=qux ([https](https://example.com/foo?foo=bar&baz=qux) result 404). * [ ] http://example.com/hotel (404) with 3 occurrences migrated to: https://example.com/hotel ([https](https://example.com/hotel) result 404). * [ ] http://example.com/hotel%20list (404) with 1 occurrences migrated to: https://example.com/hotel%20list ([https](https://example.com/hotel%20list) result 404). * [ ] http://example.com/hotel%20list/Z (404) with 1 occurrences migrated to: https://example.com/hotel%20list/Z ([https](https://example.com/hotel%20list/Z) result 404). * [ ] http://example.com/hotel%20list/Z%C3%BCrich (404) with 3 occurrences migrated to: https://example.com/hotel%20list/Z%C3%BCrich ([https](https://example.com/hotel%20list/Z%C3%BCrich) result 404). * [ ] http://example.com/hotels (404) with 3 occurrences migrated to: https://example.com/hotels ([https](https://example.com/hotels) result 404). * [ ] http://example.com/hotels/ (404) with 15 occurrences migrated to: https://example.com/hotels/ ([https](https://example.com/hotels/) result 404). * [ ] http://example.com/hotels/1/bookings/42 (404) with 1 occurrences migrated to: https://example.com/hotels/1/bookings/42 ([https](https://example.com/hotels/1/bookings/42) result 404). * [ ] http://example.com/hotels/1/pic/pics%2Flogo.png/size/150x150 (404) with 2 occurrences migrated to: https://example.com/hotels/1/pic/pics%2Flogo.png/size/150x150 ([https](https://example.com/hotels/1/pic/pics%2Flogo.png/size/150x150) result 404). * [ ] http://example.com/hotels/1/pic/pics/logo.png (404) with 1 occurrences migrated to: https://example.com/hotels/1/pic/pics/logo.png ([https](https://example.com/hotels/1/pic/pics/logo.png) result 404). * [ ] http://example.com/hotels/42/bookings/21 (404) with 1 occurrences migrated to: https://example.com/hotels/42/bookings/21 ([https](https://example.com/hotels/42/bookings/21) result 404). * [ ] http://example.com/hotels/42/bookings/42 (404) with 1 occurrences migrated to: https://example.com/hotels/42/bookings/42 ([https](https://example.com/hotels/42/bookings/42) result 404). * [ ] http://example.com/hotels/Rest%20%26%20Relax/bookings/42 (404) with 2 occurrences migrated to: https://example.com/hotels/Rest%20%26%20Relax/bookings/42 ([https](https://example.com/hotels/Rest%20%26%20Relax/bookings/42) result 404). * [ ] http://example.com/info (404) with 2 occurrences migrated to: https://example.com/info ([https](https://example.com/info) result 404). * [ ] http://example.com/invalid (404) with 1 occurrences migrated to: https://example.com/invalid ([https](https://example.com/invalid) result 404). * [ ] http://example.com/jquery-1.11.0.min.js (404) with 2 occurrences migrated to: https://example.com/jquery-1.11.0.min.js ([https](https://example.com/jquery-1.11.0.min.js) result 404). * [ ] http://example.com/match (404) with 1 occurrences migrated to: https://example.com/match ([https](https://example.com/match) result 404). * [ ] http://example.com/myFileUpload (404) with 1 occurrences migrated to: https://example.com/myFileUpload ([https](https://example.com/myFileUpload) result 404). * [ ] http://example.com/myForm (404) with 1 occurrences migrated to: https://example.com/myForm ([https](https://example.com/myForm) result 404). * [ ] http://example.com/path (404) with 4 occurrences migrated to: https://example.com/path ([https](https://example.com/path) result 404). * [ ] http://example.com/path?query (404) with 2 occurrences migrated to: https://example.com/path?query ([https](https://example.com/path?query) result 404). * [ ] http://example.com/path?query=foo (404) with 1 occurrences migrated to: https://example.com/path?query=foo ([https](https://example.com/path?query=foo) result 404). * [ ] http://example.com/people (404) with 1 occurrences migrated to: https://example.com/people ([https](https://example.com/people) result 404). * [ ] http://example.com/people/ (404) with 1 occurrences migrated to: https://example.com/people/ ([https](https://example.com/people/) result 404). * [ ] http://example.com/prefix/path (404) with 2 occurrences migrated to: https://example.com/prefix/path ([https](https://example.com/prefix/path) result 404). * [ ] http://example.com/resource (404) with 5 occurrences migrated to: https://example.com/resource ([https](https://example.com/resource) result 404). * [ ] http://example.com/resource?access_token=123 (404) with 1 occurrences migrated to: https://example.com/resource?access_token=123 ([https](https://example.com/resource?access_token=123) result 404). * [ ] http://example.com/spaces (404) with 1 occurrences migrated to: https://example.com/spaces ([https](https://example.com/spaces) result 404). * [ ] http://example.com/spaces%20and%20%E2%82%AC (404) with 3 occurrences migrated to: https://example.com/spaces%20and%20%E2%82%AC ([https](https://example.com/spaces%20and%20%E2%82%AC) result 404). * [ ] http://example.com/spring/ (404) with 1 occurrences migrated to: https://example.com/spring/ ([https](https://example.com/spring/) result 404). * [ ] http://example.com/test/this/here (404) with 1 occurrences migrated to: https://example.com/test/this/here ([https](https://example.com/test/this/here) result 404). * [ ] http://example.com/upload (404) with 1 occurrences migrated to: https://example.com/upload ([https](https://example.com/upload) result 404). * [ ] http://example.com/user (404) with 1 occurrences migrated to: https://example.com/user ([https](https://example.com/user) result 404). * [ ] http://example.org/fonts/css (404) with 6 occurrences migrated to: https://example.org/fonts/css ([https](https://example.org/fonts/css) result 404). * [ ] http://example.org/foo/page.html (404) with 1 occurrences migrated to: https://example.org/foo/page.html ([https](https://example.org/foo/page.html) result 404). * [ ] http://example.org/image.png (404) with 4 occurrences migrated to: https://example.org/image.png ([https](https://example.org/image.png) result 404). * [ ] http://example.org/music/people (404) with 4 occurrences migrated to: https://example.org/music/people ([https](https://example.org/music/people) result 404). * [ ] http://example.org/page.cache.html (404) with 1 occurrences migrated to: https://example.org/page.cache.html ([https](https://example.org/page.cache.html) result 404). * [ ] http://example.org/path (404) with 3 occurrences migrated to: https://example.org/path ([https](https://example.org/path) result 404). * [ ] http://springframework.org/oxm-test (404) with 2 occurrences migrated to: https://springframework.org/oxm-test ([https](https://springframework.org/oxm-test) result 404). * [ ] http://aaa.org:8080/app/b/c/d (301) with 1 occurrences migrated to: https://www.aaa.org/app/b/c/d ([https](https://aaa.org:8080/app/b/c/d) result 404). * [ ] http://www.example.com/favicon.ico (404) with 2 occurrences migrated to: https://www.example.com/favicon.ico ([https](https://www.example.com/favicon.ico) result 404). * [ ] http://www.example.com/foo/bar (404) with 1 occurrences migrated to: https://www.example.com/foo/bar ([https](https://www.example.com/foo/bar) result 404). * [ ] http://www.example.com/hotels (404) with 2 occurrences migrated to: https://www.example.com/hotels ([https](https://www.example.com/hotels) result 404). * [ ] http://www.example.com/user/ (404) with 4 occurrences migrated to: https://www.example.com/user/ ([https](https://www.example.com/user/) result 404). * [ ] http://www.example.com/user/john%3Bdoe/dashboard (404) with 4 occurrences migrated to: https://www.example.com/user/john%3Bdoe/dashboard ([https](https://www.example.com/user/john%3Bdoe/dashboard) result 404). * [ ] http://www.example.com/user/john;doe/dashboard (404) with 2 occurrences migrated to: https://www.example.com/user/john;doe/dashboard ([https](https://www.example.com/user/john;doe/dashboard) result 404). * [ ] http://www.ibm.com/developerworks/websphere/library/techarticles/0404_tang/0404_tang.html (301) with 1 occurrences migrated to: https://www.ibm.com/developerworks/websphere/library/techarticles/0404_tang/0404_tang.html ([https](https://www.ibm.com/developerworks/websphere/library/techarticles/0404_tang/0404_tang.html) result 404). * [ ] http://mydomain1.com:80/path (301) with 2 occurrences migrated to: https://www.mydomain1.com/path ([https](https://mydomain1.com:80/path) result 404). * [ ] http://www.quartz-scheduler.org/documentation/quartz-2.1.x/tutorials/tutorial-lesson-03 (404) with 1 occurrences migrated to: https://www.quartz-scheduler.org/documentation/quartz-2.1.x/tutorials/tutorial-lesson-03 ([https](https://www.quartz-scheduler.org/documentation/quartz-2.1.x/tutorials/tutorial-lesson-03) result 404). * [ ] http://www.utoronto.ca/webdocs/HTMLdocs/Book/Book-3ed/appb/mimetype.html (301) with 1 occurrences migrated to: https://www.utoronto.ca/webdocs/HTMLdocs/Book/Book-3ed/appb/mimetype.html ([https](https://www.utoronto.ca/webdocs/HTMLdocs/Book/Book-3ed/appb/mimetype.html) 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://myhost.com/resource/path/myTemplate.txt (500) with 1 occurrences migrated to: https://myhost.com/resource/path/myTemplate.txt ([https](https://myhost.com/resource/path/myTemplate.txt) result 500). 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/delete-inactive-destinations.html with 1 occurrences migrated to: https://activemq.apache.org/delete-inactive-destinations.html ([https](https://activemq.apache.org/delete-inactive-destinations.html) result 200). * [ ] http://activemq.apache.org/stomp.html with 1 occurrences migrated to: https://activemq.apache.org/stomp.html ([https](https://activemq.apache.org/stomp.html) result 200). * [ ] http://ant.apache.org with 1 occurrences migrated to: https://ant.apache.org ([https](https://ant.apache.org) result 200). * [ ] http://asciidoctor.org/ with 1 occurrences migrated to: https://asciidoctor.org/ ([https](https://asciidoctor.org/) result 200). * [ ] http://asciidoctor.org/docs/editing-asciidoc-with-live-preview/ with 2 occurrences migrated to: https://asciidoctor.org/docs/editing-asciidoc-with-live-preview/ ([https](https://asciidoctor.org/docs/editing-asciidoc-with-live-preview/) result 200). * [ ] http://beanvalidation.org/ with 1 occurrences migrated to: https://beanvalidation.org/ ([https](https://beanvalidation.org/) result 200). * [ ] http://caniuse.com/ with 2 occurrences migrated to: https://caniuse.com/ ([https](https://caniuse.com/) result 200). * [ ] http://castor-data-binding.github.io/castor/reference-guides/1.3.3/html-single/index.html with 2 occurrences migrated to: https://castor-data-binding.github.io/castor/reference-guides/1.3.3/html-single/index.html ([https](https://castor-data-binding.github.io/castor/reference-guides/1.3.3/html-single/index.html) result 200). * [ ] http://cbor.io/ with 1 occurrences migrated to: https://cbor.io/ ([https](https://cbor.io/) result 200). * [ ] http://code.jquery.com/jquery-1.11.0.min.js with 2 occurrences migrated to: https://code.jquery.com/jquery-1.11.0.min.js ([https](https://code.jquery.com/jquery-1.11.0.min.js) result 200). * [ ] http://code.jquery.com/jquery.js with 1 occurrences migrated to: https://code.jquery.com/jquery.js ([https](https://code.jquery.com/jquery.js) result 200). * [ ] http://commons.apache.org/proper/commons-lang/ with 2 occurrences migrated to: https://commons.apache.org/proper/commons-lang/ ([https](https://commons.apache.org/proper/commons-lang/) result 200). * [ ] http://docs.oracle.com/javase/6/docs/api/java/lang/instrument/package-summary.html with 1 occurrences migrated to: https://docs.oracle.com/javase/6/docs/api/java/lang/instrument/package-summary.html ([https](https://docs.oracle.com/javase/6/docs/api/java/lang/instrument/package-summary.html) result 200). * [ ] http://docs.oracle.com/javase/8/docs/api/java/beans/package-summary.html with 1 occurrences migrated to: https://docs.oracle.com/javase/8/docs/api/java/beans/package-summary.html ([https](https://docs.oracle.com/javase/8/docs/api/java/beans/package-summary.html) result 200). * [ ] http://docs.oracle.com/javase/8/docs/api/java/lang/instrument/package-summary.html with 1 occurrences migrated to: https://docs.oracle.com/javase/8/docs/api/java/lang/instrument/package-summary.html ([https](https://docs.oracle.com/javase/8/docs/api/java/lang/instrument/package-summary.html) result 200). * [ ] http://docs.oracle.com/javase/8/docs/api/javax/script/ScriptEngineFactory.html with 2 occurrences migrated to: https://docs.oracle.com/javase/8/docs/api/javax/script/ScriptEngineFactory.html ([https](https://docs.oracle.com/javase/8/docs/api/javax/script/ScriptEngineFactory.html) result 200). * [ ] http://docs.oracle.com/javase/tutorial/javabeans/advanced/customization.html with 1 occurrences migrated to: https://docs.oracle.com/javase/tutorial/javabeans/advanced/customization.html ([https](https://docs.oracle.com/javase/tutorial/javabeans/advanced/customization.html) result 200). * [ ] http://docs.oracle.com/javase/tutorial/javabeans/writing/properties.html with 1 occurrences migrated to: https://docs.oracle.com/javase/tutorial/javabeans/writing/properties.html ([https](https://docs.oracle.com/javase/tutorial/javabeans/writing/properties.html) result 200). * [ ] http://docs.seleniumhq.org/ with 1 occurrences migrated to: https://docs.seleniumhq.org/ ([https](https://docs.seleniumhq.org/) result 200). * [ ] http://docs.seleniumhq.org/projects/webdriver/ with 1 occurrences migrated to: https://docs.seleniumhq.org/projects/webdriver/ ([https](https://docs.seleniumhq.org/projects/webdriver/) result 200). * [ ] http://docs.spring.io/spring-framework/docs/current/javadoc-api/ with 1 occurrences migrated to: https://docs.spring.io/spring-framework/docs/current/javadoc-api/ ([https](https://docs.spring.io/spring-framework/docs/current/javadoc-api/) result 200). * [ ] http://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/web/servlet/view/script/ScriptTemplateView.html with 1 occurrences migrated to: https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/web/servlet/view/script/ScriptTemplateView.html ([https](https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/web/servlet/view/script/ScriptTemplateView.html) result 200). * [ ] http://docs.spring.io/spring-framework/docs/current/spring-framework-reference/ with 1 occurrences migrated to: https://docs.spring.io/spring-framework/docs/current/spring-framework-reference/ ([https](https://docs.spring.io/spring-framework/docs/current/spring-framework-reference/) result 200). * [ ] http://docs.spring.io/spring-session/docs/current/reference/html5/ with 1 occurrences migrated to: https://docs.spring.io/spring-session/docs/current/reference/html5/ ([https](https://docs.spring.io/spring-session/docs/current/reference/html5/) result 200). * [ ] http://en.wikipedia.org/wiki/Adapter_pattern with 1 occurrences migrated to: https://en.wikipedia.org/wiki/Adapter_pattern ([https](https://en.wikipedia.org/wiki/Adapter_pattern) result 200). * [ ] http://en.wikipedia.org/wiki/Halting_Problem with 1 occurrences migrated to: https://en.wikipedia.org/wiki/Halting_Problem ([https](https://en.wikipedia.org/wiki/Halting_Problem) result 200). * [ ] http://en.wikipedia.org/wiki/List_of_HTTP_status_codes with 1 occurrences migrated to: https://en.wikipedia.org/wiki/List_of_HTTP_status_codes ([https](https://en.wikipedia.org/wiki/List_of_HTTP_status_codes) result 200). * [ ] http://en.wikipedia.org/wiki/MIME with 1 occurrences migrated to: https://en.wikipedia.org/wiki/MIME ([https](https://en.wikipedia.org/wiki/MIME) result 200). * [ ] http://en.wikipedia.org/wiki/Mock_Object with 1 occurrences migrated to: https://en.wikipedia.org/wiki/Mock_Object ([https](https://en.wikipedia.org/wiki/Mock_Object) result 200). * [ ] http://en.wikipedia.org/wiki/Polyfill with 2 occurrences migrated to: https://en.wikipedia.org/wiki/Polyfill ([https](https://en.wikipedia.org/wiki/Polyfill) result 200). * [ ] http://example.com with 132 occurrences migrated to: https://example.com ([https](https://example.com) result 200). * [ ] http://example.com/ with 16 occurrences migrated to: https://example.com/ ([https](https://example.com/) result 200). * [ ] http://example.com?foo with 2 occurrences migrated to: https://example.com?foo ([https](https://example.com?foo) result 200). * [ ] http://example.com?foo=bar with 8 occurrences migrated to: https://example.com?foo=bar ([https](https://example.com?foo=bar) result 200). * [ ] http://example.com?foo=bar@baz with 1 occurrences migrated to: https://example.com?foo=bar@baz ([https](https://example.com?foo=bar@baz) result 200). * [ ] http://example.org with 18 occurrences migrated to: https://example.org ([https](https://example.org) result 200). * [ ] http://example.org/ with 1 occurrences migrated to: https://example.org/ ([https](https://example.org/) result 200). * [ ] http://fasterxml.github.io/jackson-databind/javadoc/2.6/com/fasterxml/jackson/databind/DeserializationFeature.html with 2 occurrences migrated to: https://fasterxml.github.io/jackson-databind/javadoc/2.6/com/fasterxml/jackson/databind/DeserializationFeature.html ([https](https://fasterxml.github.io/jackson-databind/javadoc/2.6/com/fasterxml/jackson/databind/DeserializationFeature.html) result 200). * [ ] http://fasterxml.github.io/jackson-databind/javadoc/2.6/com/fasterxml/jackson/databind/MapperFeature.html with 2 occurrences migrated to: https://fasterxml.github.io/jackson-databind/javadoc/2.6/com/fasterxml/jackson/databind/MapperFeature.html ([https](https://fasterxml.github.io/jackson-databind/javadoc/2.6/com/fasterxml/jackson/databind/MapperFeature.html) result 200). * [ ] http://h2database.com with 1 occurrences migrated to: https://h2database.com ([https](https://h2database.com) result 200). * [ ] http://handlebarsjs.com with 2 occurrences migrated to: https://handlebarsjs.com ([https](https://handlebarsjs.com) result 200). * [ ] http://handlebarsjs.com/ with 2 occurrences migrated to: https://handlebarsjs.com/ ([https](https://handlebarsjs.com/) result 200). * [ ] http://hc.apache.org/httpcomponents-asyncclient-dev/ with 1 occurrences migrated to: https://hc.apache.org/httpcomponents-asyncclient-dev/ ([https](https://hc.apache.org/httpcomponents-asyncclient-dev/) result 200). * [ ] http://hc.apache.org/httpcomponents-client-ga/ with 2 occurrences migrated to: https://hc.apache.org/httpcomponents-client-ga/ ([https](https://hc.apache.org/httpcomponents-client-ga/) result 200). * [ ] http://hc.apache.org/httpcomponents-client-ga/httpclient/ with 1 occurrences migrated to: https://hc.apache.org/httpcomponents-client-ga/httpclient/ ([https](https://hc.apache.org/httpcomponents-client-ga/httpclient/) result 200). * [ ] http://www.hibernate.org/ (301) with 1 occurrences migrated to: https://hibernate.org/ ([https](https://www.hibernate.org/) result 200). * [ ] http://www.hibernate.org (301) with 1 occurrences migrated to: https://hibernate.org/ ([https](https://www.hibernate.org) result 200). * [ ] http://jcp.org/aboutJava/communityprocess/final/jsr003/index3.html with 1 occurrences migrated to: https://jcp.org/aboutJava/communityprocess/final/jsr003/index3.html ([https](https://jcp.org/aboutJava/communityprocess/final/jsr003/index3.html) result 200). * [ ] http://jcp.org/aboutJava/communityprocess/final/jsr160/index.html with 1 occurrences migrated to: https://jcp.org/aboutJava/communityprocess/final/jsr160/index.html ([https](https://jcp.org/aboutJava/communityprocess/final/jsr160/index.html) result 200). * [ ] http://jcp.org/en/jsr/detail?id=107 with 1 occurrences migrated to: https://jcp.org/en/jsr/detail?id=107 ([https](https://jcp.org/en/jsr/detail?id=107) result 200). * [ ] http://joel-costigliola.github.io/assertj/ with 3 occurrences migrated to: https://joel-costigliola.github.io/assertj/ ([https](https://joel-costigliola.github.io/assertj/) result 200). * [ ] http://jsonassert.skyscreamer.org with 1 occurrences migrated to: https://jsonassert.skyscreamer.org ([https](https://jsonassert.skyscreamer.org) result 200). * [ ] http://jsonassert.skyscreamer.org/ with 5 occurrences migrated to: https://jsonassert.skyscreamer.org/ ([https](https://jsonassert.skyscreamer.org/) result 200). * [ ] http://junit.org/junit5/docs/current/user-guide/ with 2 occurrences migrated to: https://junit.org/junit5/docs/current/user-guide/ ([https](https://junit.org/junit5/docs/current/user-guide/) result 200). * [ ] http://kotlinlang.org/ with 2 occurrences migrated to: https://kotlinlang.org/ ([https](https://kotlinlang.org/) result 200). * [ ] http://kotlinlang.org/docs/reference/ with 1 occurrences migrated to: https://kotlinlang.org/docs/reference/ ([https](https://kotlinlang.org/docs/reference/) result 200). * [ ] http://kotlinlang.org/docs/reference/classes.html with 3 occurrences migrated to: https://kotlinlang.org/docs/reference/classes.html ([https](https://kotlinlang.org/docs/reference/classes.html) result 200). * [ ] http://mydomain.com with 5 occurrences migrated to: https://mydomain.com ([https](https://mydomain.com) result 200). * [ ] http://netty.io/ with 1 occurrences migrated to: https://netty.io/ ([https](https://netty.io/) result 200). * [ ] http://openjdk.java.net/jeps/290 with 1 occurrences migrated to: https://openjdk.java.net/jeps/290 ([https](https://openjdk.java.net/jeps/290) result 200). * [ ] http://openjdk.java.net/projects/nashorn/ with 10 occurrences migrated to: https://openjdk.java.net/projects/nashorn/ ([https](https://openjdk.java.net/projects/nashorn/) result 200). * [ ] http://poi.apache.org with 3 occurrences migrated to: https://poi.apache.org ([https](https://poi.apache.org) result 200). * [ ] 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 200). * [ ] http://projects.spring.io/spring-data/ with 1 occurrences migrated to: https://projects.spring.io/spring-data/ ([https](https://projects.spring.io/spring-data/) result 200). * [ ] http://projects.spring.io/spring-framework/ with 1 occurrences migrated to: https://projects.spring.io/spring-framework/ ([https](https://projects.spring.io/spring-framework/) result 200). * [ ] http://projects.spring.io/spring-integration/ with 1 occurrences migrated to: https://projects.spring.io/spring-integration/ ([https](https://projects.spring.io/spring-integration/) result 200). * [ ] http://projects.spring.io/spring-security/ with 3 occurrences migrated to: https://projects.spring.io/spring-security/ ([https](https://projects.spring.io/spring-security/) result 200). * [ ] http://repo1.maven.org/maven2/javax/inject/javax.inject/1/ with 2 occurrences migrated to: https://repo1.maven.org/maven2/javax/inject/javax.inject/1/ ([https](https://repo1.maven.org/maven2/javax/inject/javax.inject/1/) result 200). * [ ] http://schema.spring.io/mvc/spring-mvc.xsd with 1 occurrences migrated to: https://schema.spring.io/mvc/spring-mvc.xsd ([https](https://schema.spring.io/mvc/spring-mvc.xsd) result 200). * [ ] http://search.maven.org/ with 2 occurrences migrated to: https://search.maven.org/ ([https](https://search.maven.org/) result 200). * [ ] http://sockjs.github.io/sockjs-protocol/sockjs-protocol-0.3.3.html with 3 occurrences migrated to: https://sockjs.github.io/sockjs-protocol/sockjs-protocol-0.3.3.html ([https](https://sockjs.github.io/sockjs-protocol/sockjs-protocol-0.3.3.html) result 200). * [ ] http://sourceforge.net with 1 occurrences migrated to: https://sourceforge.net ([https](https://sourceforge.net) result 200). * [ ] http://sourceforge.net/projects/javadiff/ with 1 occurrences migrated to: https://sourceforge.net/projects/javadiff/ ([https](https://sourceforge.net/projects/javadiff/) result 200). * [ ] http://sourceforge.net/sflogo.php?group_id=37160 with 1 occurrences migrated to: https://sourceforge.net/sflogo.php?group_id=37160 ([https](https://sourceforge.net/sflogo.php?group_id=37160) result 200). * [ ] http://spring.io/blog/ with 1 occurrences migrated to: https://spring.io/blog/ ([https](https://spring.io/blog/) result 200). * [ ] http://spring.io/blog/category/news with 1 occurrences migrated to: https://spring.io/blog/category/news ([https](https://spring.io/blog/category/news) result 200). * [ ] http://square.github.io/okhttp/ with 1 occurrences migrated to: https://square.github.io/okhttp/ ([https](https://square.github.io/okhttp/) result 200). * [ ] http://stackoverflow.com/questions/1481251/what-does-document-domain-document-domain-do with 1 occurrences migrated to: https://stackoverflow.com/questions/1481251/what-does-document-domain-document-domain-do ([https](https://stackoverflow.com/questions/1481251/what-does-document-domain-document-domain-do) result 200). * [ ] http://stackoverflow.com/questions/19394570/java-jre-7u45-breaks-classloader-getresources with 2 occurrences migrated to: https://stackoverflow.com/questions/19394570/java-jre-7u45-breaks-classloader-getresources ([https](https://stackoverflow.com/questions/19394570/java-jre-7u45-breaks-classloader-getresources) result 200). * [ ] http://stackoverflow.com/questions/22986109/testing-spring-managed-servlet with 1 occurrences migrated to: https://stackoverflow.com/questions/22986109/testing-spring-managed-servlet ([https](https://stackoverflow.com/questions/22986109/testing-spring-managed-servlet) result 200). * [ ] http://stackoverflow.com/questions/24725438/what-could-cause-a-class-implementing-applicationlistenercontextrefreshedevent with 1 occurrences migrated to: https://stackoverflow.com/questions/24725438/what-could-cause-a-class-implementing-applicationlistenercontextrefreshedevent ([https](https://stackoverflow.com/questions/24725438/what-could-cause-a-class-implementing-applicationlistenercontextrefreshedevent) result 200). * [ ] http://stackoverflow.com/questions/35733344/can-contextconfiguration-in-a-custom-annotation-be-merged with 1 occurrences migrated to: https://stackoverflow.com/questions/35733344/can-contextconfiguration-in-a-custom-annotation-be-merged ([https](https://stackoverflow.com/questions/35733344/can-contextconfiguration-in-a-custom-annotation-be-merged) result 200). * [ ] http://start.spring.io/ with 2 occurrences migrated to: https://start.spring.io/ ([https](https://start.spring.io/) result 200). * [ ] http://stas-blogspot.blogspot.com/2010/03/java-bridge-methods-explained.html with 1 occurrences migrated to: https://stas-blogspot.blogspot.com/2010/03/java-bridge-methods-explained.html ([https](https://stas-blogspot.blogspot.com/2010/03/java-bridge-methods-explained.html) result 200). * [ ] http://stomp.github.io/stomp-specification-1.2.html with 9 occurrences migrated to: https://stomp.github.io/stomp-specification-1.2.html ([https](https://stomp.github.io/stomp-specification-1.2.html) result 200). * [ ] http://struts.apache.org with 1 occurrences migrated to: https://struts.apache.org ([https](https://struts.apache.org) result 200). * [ ] http://struts.apache.org/ with 1 occurrences migrated to: https://struts.apache.org/ ([https](https://struts.apache.org/) result 200). * [ ] http://tapestry.apache.org/ with 2 occurrences migrated to: https://tapestry.apache.org/ ([https](https://tapestry.apache.org/) result 200). * [ ] http://tiles.apache.org with 4 occurrences migrated to: https://tiles.apache.org ([https](https://tiles.apache.org) result 200). * [ ] http://tiles.apache.org/framework/dependency-management.html with 1 occurrences migrated to: https://tiles.apache.org/framework/dependency-management.html ([https](https://tiles.apache.org/framework/dependency-management.html) result 200). * [ ] http://tools.ietf.org/html/rfc1945 with 1 occurrences migrated to: https://tools.ietf.org/html/rfc1945 ([https](https://tools.ietf.org/html/rfc1945) result 200). * [ ] http://tools.ietf.org/html/rfc2109 with 2 occurrences migrated to: https://tools.ietf.org/html/rfc2109 ([https](https://tools.ietf.org/html/rfc2109) result 200). * [ ] http://tools.ietf.org/html/rfc2295 with 1 occurrences migrated to: https://tools.ietf.org/html/rfc2295 ([https](https://tools.ietf.org/html/rfc2295) result 200). * [ ] http://tools.ietf.org/html/rfc2324 with 1 occurrences migrated to: https://tools.ietf.org/html/rfc2324 ([https](https://tools.ietf.org/html/rfc2324) result 200). * [ ] http://tools.ietf.org/html/rfc2518 with 1 occurrences migrated to: https://tools.ietf.org/html/rfc2518 ([https](https://tools.ietf.org/html/rfc2518) result 200). * [ ] http://tools.ietf.org/html/rfc2616 with 3 occurrences migrated to: https://tools.ietf.org/html/rfc2616 ([https](https://tools.ietf.org/html/rfc2616) result 200). * [ ] http://tools.ietf.org/html/rfc2774 with 1 occurrences migrated to: https://tools.ietf.org/html/rfc2774 ([https](https://tools.ietf.org/html/rfc2774) result 200). * [ ] http://tools.ietf.org/html/rfc2817 with 1 occurrences migrated to: https://tools.ietf.org/html/rfc2817 ([https](https://tools.ietf.org/html/rfc2817) result 200). * [ ] http://tools.ietf.org/html/rfc2965 with 1 occurrences migrated to: https://tools.ietf.org/html/rfc2965 ([https](https://tools.ietf.org/html/rfc2965) result 200). * [ ] http://tools.ietf.org/html/rfc3229 with 1 occurrences migrated to: https://tools.ietf.org/html/rfc3229 ([https](https://tools.ietf.org/html/rfc3229) result 200). * [ ] http://tools.ietf.org/html/rfc3986 with 3 occurrences migrated to: https://tools.ietf.org/html/rfc3986 ([https](https://tools.ietf.org/html/rfc3986) result 200). * [ ] http://tools.ietf.org/html/rfc4918 with 5 occurrences migrated to: https://tools.ietf.org/html/rfc4918 ([https](https://tools.ietf.org/html/rfc4918) result 200). * [ ] http://tools.ietf.org/html/rfc5842 with 2 occurrences migrated to: https://tools.ietf.org/html/rfc5842 ([https](https://tools.ietf.org/html/rfc5842) result 200). * [ ] http://tools.ietf.org/html/rfc5988 with 1 occurrences migrated to: https://tools.ietf.org/html/rfc5988 ([https](https://tools.ietf.org/html/rfc5988) result 200). * [ ] http://tools.ietf.org/html/rfc6202 with 1 occurrences migrated to: https://tools.ietf.org/html/rfc6202 ([https](https://tools.ietf.org/html/rfc6202) result 200). * [ ] http://tools.ietf.org/html/rfc6266 with 1 occurrences migrated to: https://tools.ietf.org/html/rfc6266 ([https](https://tools.ietf.org/html/rfc6266) result 200). * [ ] http://tools.ietf.org/html/rfc6454 with 1 occurrences migrated to: https://tools.ietf.org/html/rfc6454 ([https](https://tools.ietf.org/html/rfc6454) result 200). * [ ] http://tools.ietf.org/html/rfc6455 with 2 occurrences migrated to: https://tools.ietf.org/html/rfc6455 ([https](https://tools.ietf.org/html/rfc6455) result 200). * [ ] http://tools.ietf.org/html/rfc6585 with 4 occurrences migrated to: https://tools.ietf.org/html/rfc6585 ([https](https://tools.ietf.org/html/rfc6585) result 200). * [ ] http://tools.ietf.org/html/rfc7230 with 10 occurrences migrated to: https://tools.ietf.org/html/rfc7230 ([https](https://tools.ietf.org/html/rfc7230) result 200). * [ ] http://tools.ietf.org/html/rfc7231 with 56 occurrences migrated to: https://tools.ietf.org/html/rfc7231 ([https](https://tools.ietf.org/html/rfc7231) result 200). * [ ] http://tools.ietf.org/html/rfc7232 with 8 occurrences migrated to: https://tools.ietf.org/html/rfc7232 ([https](https://tools.ietf.org/html/rfc7232) result 200). * [ ] http://tools.ietf.org/html/rfc7233 with 12 occurrences migrated to: https://tools.ietf.org/html/rfc7233 ([https](https://tools.ietf.org/html/rfc7233) result 200). * [ ] http://tools.ietf.org/html/rfc7234 with 5 occurrences migrated to: https://tools.ietf.org/html/rfc7234 ([https](https://tools.ietf.org/html/rfc7234) result 200). * [ ] http://tools.ietf.org/html/rfc7235 with 6 occurrences migrated to: https://tools.ietf.org/html/rfc7235 ([https](https://tools.ietf.org/html/rfc7235) result 200). * [ ] http://tools.ietf.org/html/rfc7238 with 1 occurrences migrated to: https://tools.ietf.org/html/rfc7238 ([https](https://tools.ietf.org/html/rfc7238) result 200). * [ ] http://tools.ietf.org/html/rfc7239 with 7 occurrences migrated to: https://tools.ietf.org/html/rfc7239 ([https](https://tools.ietf.org/html/rfc7239) result 200). * [ ] http://tools.ietf.org/rfcdiff?difftype=--hwdiff&url2=draft-ietf-webdav-protocol-06.txt with 3 occurrences migrated to: https://tools.ietf.org/rfcdiff?difftype=--hwdiff&url2=draft-ietf-webdav-protocol-06.txt ([https](https://tools.ietf.org/rfcdiff?difftype=--hwdiff&url2=draft-ietf-webdav-protocol-06.txt) result 200). * [ ] http://unlicense.org with 1 occurrences migrated to: https://unlicense.org ([https](https://unlicense.org) result 200). * [ ] http://www.amazon.com/exec/obidos/tg/detail/-/0764543857/ with 10 occurrences migrated to: https://www.amazon.com/exec/obidos/tg/detail/-/0764543857/ ([https](https://www.amazon.com/exec/obidos/tg/detail/-/0764543857/) result 200). * [ ] http://www.apache.org with 1 occurrences migrated to: https://www.apache.org ([https](https://www.apache.org) result 200). * [ ] http://www.apple.com/DTDs/PropertyList-1.0.dtd with 6 occurrences migrated to: https://www.apple.com/DTDs/PropertyList-1.0.dtd ([https](https://www.apple.com/DTDs/PropertyList-1.0.dtd) result 200). * [ ] http://www.atomikos.com/ with 1 occurrences migrated to: https://www.atomikos.com/ ([https](https://www.atomikos.com/) result 200). * [ ] http://www.baeldung.com/kotlin-null-safety with 1 occurrences migrated to: https://www.baeldung.com/kotlin-null-safety ([https](https://www.baeldung.com/kotlin-null-safety) result 200). * [ ] http://www.eclipse.org/aspectj/doc/released/devguide/index.html with 1 occurrences migrated to: https://www.eclipse.org/aspectj/doc/released/devguide/index.html ([https](https://www.eclipse.org/aspectj/doc/released/devguide/index.html) result 200). * [ ] http://www.eclipse.org/aspectj/doc/released/devguide/ltw-configuration.html with 1 occurrences migrated to: https://www.eclipse.org/aspectj/doc/released/devguide/ltw-configuration.html ([https](https://www.eclipse.org/aspectj/doc/released/devguide/ltw-configuration.html) result 200). * [ ] http://www.eclipse.org/aspectj/dtd/aspectj.dtd with 1 occurrences migrated to: https://www.eclipse.org/aspectj/dtd/aspectj.dtd ([https](https://www.eclipse.org/aspectj/dtd/aspectj.dtd) result 200). * [ ] http://ehcache.sourceforge.net (301) with 1 occurrences migrated to: https://www.ehcache.org/ ([https](https://ehcache.sourceforge.net) result 200). * [ ] http://ehcache.org/ (301) with 1 occurrences migrated to: https://www.ehcache.org/ ([https](https://ehcache.org/) result 200). * [ ] http://www.embeddedjs.com/ with 2 occurrences migrated to: https://www.embeddedjs.com/ ([https](https://www.embeddedjs.com/) result 200). * [ ] http://www.enterpriseintegrationpatterns.com with 1 occurrences migrated to: https://www.enterpriseintegrationpatterns.com ([https](https://www.enterpriseintegrationpatterns.com) result 200). * [ ] http://www.example.org/?param=aGVsbG9Xb3JsZA%3D%3D with 1 occurrences migrated to: https://www.example.org/?param=aGVsbG9Xb3JsZA%3D%3D ([https](https://www.example.org/?param=aGVsbG9Xb3JsZA%3D%3D) result 200). * [ ] http://www.google.com with 2 occurrences migrated to: https://www.google.com ([https](https://www.google.com) result 200). * [ ] http://www.h2database.com with 1 occurrences migrated to: https://www.h2database.com ([https](https://www.h2database.com) result 200). * [ ] http://www.h2database.com/html/grammar.html with 1 occurrences migrated to: https://www.h2database.com/html/grammar.html ([https](https://www.h2database.com/html/grammar.html) result 200). * [ ] http://www.ietf.org with 1 occurrences migrated to: https://www.ietf.org ([https](https://www.ietf.org) result 200). * [ ] http://www.ietf.org/rfc/rfc1867.txt with 1 occurrences migrated to: https://www.ietf.org/rfc/rfc1867.txt ([https](https://www.ietf.org/rfc/rfc1867.txt) result 200). * [ ] http://www.ietf.org/rfc/rfc2396.txt with 2 occurrences migrated to: https://www.ietf.org/rfc/rfc2396.txt ([https](https://www.ietf.org/rfc/rfc2396.txt) result 200). * [ ] http://www.ietf.org/rfc/rfc3986.txt with 11 occurrences migrated to: https://www.ietf.org/rfc/rfc3986.txt ([https](https://www.ietf.org/rfc/rfc3986.txt) result 200). * [ ] http://www.infoq.com/ with 1 occurrences migrated to: https://www.infoq.com/ ([https](https://www.infoq.com/) result 200). * [ ] http://www.infoq.com/minibooks/JTDS with 1 occurrences migrated to: https://www.infoq.com/minibooks/JTDS ([https](https://www.infoq.com/minibooks/JTDS) result 200). * [ ] http://www.jetbrains.com/idea/ with 1 occurrences migrated to: https://www.jetbrains.com/idea/ ([https](https://www.jetbrains.com/idea/) result 200). * [ ] http://www.json.org/ with 1 occurrences migrated to: https://www.json.org/ ([https](https://www.json.org/) result 200). * [ ] http://www.jython.org with 2 occurrences migrated to: https://www.jython.org ([https](https://www.jython.org) result 200). * [ ] http://www.jython.org/ with 2 occurrences migrated to: https://www.jython.org/ ([https](https://www.jython.org/) result 200). * [ ] http://www.lowagie.com/iText with 2 occurrences migrated to: https://www.lowagie.com/iText ([https](https://www.lowagie.com/iText) result 200). * [ ] http://www.manpagez.com/man/5/crontab/ with 1 occurrences migrated to: https://www.manpagez.com/man/5/crontab/ ([https](https://www.manpagez.com/man/5/crontab/) result 200). * [ ] http://mydomain1.com:80/ (301) with 2 occurrences migrated to: https://www.mydomain1.com/ ([https](https://mydomain1.com:80/) result 200). * [ ] http://mydomain1.com:80 (301) with 1 occurrences migrated to: https://www.mydomain1.com/ ([https](https://mydomain1.com:80) result 200). * [ ] http://www.oracle.com/technetwork/articles/javaee/jpa-137156.html with 1 occurrences migrated to: https://www.oracle.com/technetwork/articles/javaee/jpa-137156.html ([https](https://www.oracle.com/technetwork/articles/javaee/jpa-137156.html) result 200). * [ ] http://www.oracle.com/technetwork/java/javaee/javaserverfaces-139869.html with 1 occurrences migrated to: https://www.oracle.com/technetwork/java/javaee/javaserverfaces-139869.html ([https](https://www.oracle.com/technetwork/java/javaee/javaserverfaces-139869.html) result 200). * [ ] http://www.oracle.com/technetwork/java/javase/documentation/spec-136004.html with 1 occurrences migrated to: https://www.oracle.com/technetwork/java/javase/documentation/spec-136004.html ([https](https://www.oracle.com/technetwork/java/javase/documentation/spec-136004.html) result 200). * [ ] http://www.oracle.com/technetwork/java/javase/tech/download-jsp-141676.html with 1 occurrences migrated to: https://www.oracle.com/technetwork/java/javase/tech/download-jsp-141676.html ([https](https://www.oracle.com/technetwork/java/javase/tech/download-jsp-141676.html) result 200). * [ ] http://www.oracle.com/technetwork/java/javase/tech/javamanagement-140525.html with 1 occurrences migrated to: https://www.oracle.com/technetwork/java/javase/tech/javamanagement-140525.html ([https](https://www.oracle.com/technetwork/java/javase/tech/javamanagement-140525.html) result 200). * [ ] http://www.ow2.org/ with 1 occurrences migrated to: https://www.ow2.org/ ([https](https://www.ow2.org/) result 200). * [ ] http://www.owasp.org/index.php/HTTPOnly with 4 occurrences migrated to: https://www.owasp.org/index.php/HTTPOnly ([https](https://www.owasp.org/index.php/HTTPOnly) result 200). * [ ] http://quartz-scheduler.org (301) with 3 occurrences migrated to: https://www.quartz-scheduler.org/ ([https](https://quartz-scheduler.org) result 200). * [ ] http://www.rabbitmq.com/stomp.html with 1 occurrences migrated to: https://www.rabbitmq.com/stomp.html ([https](https://www.rabbitmq.com/stomp.html) result 200). * [ ] http://www.reactive-streams.org with 1 occurrences migrated to: https://www.reactive-streams.org ([https](https://www.reactive-streams.org) result 200). * [ ] http://www.reactive-streams.org/ with 2 occurrences migrated to: https://www.reactive-streams.org/ ([https](https://www.reactive-streams.org/) result 200). * [ ] http://www.reactive-streams.org/reactive-streams-1.0.1-javadoc/org/reactivestreams/Publisher.html with 1 occurrences migrated to: https://www.reactive-streams.org/reactive-streams-1.0.1-javadoc/org/reactivestreams/Publisher.html ([https](https://www.reactive-streams.org/reactive-streams-1.0.1-javadoc/org/reactivestreams/Publisher.html) result 200). * [ ] http://www.reactive-streams.org/reactive-streams-1.0.1-javadoc/org/reactivestreams/Subscriber.html with 1 occurrences migrated to: https://www.reactive-streams.org/reactive-streams-1.0.1-javadoc/org/reactivestreams/Subscriber.html ([https](https://www.reactive-streams.org/reactive-streams-1.0.1-javadoc/org/reactivestreams/Subscriber.html) result 200). * [ ] http://seleniumhq.org/projects/webdriver/ (301) with 1 occurrences migrated to: https://www.seleniumhq.org ([https](https://seleniumhq.org/projects/webdriver/) result 200). * [ ] http://www.springbyexample.org/examples/custom-thread-scope-module.html with 1 occurrences migrated to: https://www.springbyexample.org/examples/custom-thread-scope-module.html ([https](https://www.springbyexample.org/examples/custom-thread-scope-module.html) result 200). * [ ] http://www.springframework.org/dtd/spring-beans-2.0.dtd with 3 occurrences migrated to: https://www.springframework.org/dtd/spring-beans-2.0.dtd ([https](https://www.springframework.org/dtd/spring-beans-2.0.dtd) result 200). * [ ] http://www.springframework.org/schema/aop/spring-aop.xsd with 12 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 80 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/cache/spring-cache.xsd with 2 occurrences migrated to: https://www.springframework.org/schema/cache/spring-cache.xsd ([https](https://www.springframework.org/schema/cache/spring-cache.xsd) result 200). * [ ] http://www.springframework.org/schema/context/spring-context.xsd with 13 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/jdbc/spring-jdbc.xsd with 1 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 2 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/jms/spring-jms.xsd with 2 occurrences migrated to: https://www.springframework.org/schema/jms/spring-jms.xsd ([https](https://www.springframework.org/schema/jms/spring-jms.xsd) result 200). * [ ] http://www.springframework.org/schema/lang/spring-lang.xsd with 4 occurrences migrated to: https://www.springframework.org/schema/lang/spring-lang.xsd ([https](https://www.springframework.org/schema/lang/spring-lang.xsd) result 200). * [ ] http://www.springframework.org/schema/mvc/spring-mvc.xsd with 3 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 1 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/tool/spring-tool.xsd with 13 occurrences migrated to: https://www.springframework.org/schema/tool/spring-tool.xsd ([https](https://www.springframework.org/schema/tool/spring-tool.xsd) result 200). * [ ] http://www.springframework.org/schema/tx/spring-tx.xsd with 8 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 1 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.springframework.org/schema/websocket/spring-websocket.xsd with 12 occurrences migrated to: https://www.springframework.org/schema/websocket/spring-websocket.xsd ([https](https://www.springframework.org/schema/websocket/spring-websocket.xsd) result 200). * [ ] http://www.stuartellis.eu/articles/erb/ (301) with 2 occurrences migrated to: https://www.stuartellis.name/articles/erb/ ([https](https://www.stuartellis.eu/articles/erb/) result 200). * [ ] http://www.thymeleaf.org/ with 2 occurrences migrated to: https://www.thymeleaf.org/ ([https](https://www.thymeleaf.org/) result 200). * [ ] http://www.thymeleaf.org/documentation.html with 2 occurrences migrated to: https://www.thymeleaf.org/documentation.html ([https](https://www.thymeleaf.org/documentation.html) result 200). * [ ] http://www.w3.org/2000/xmlns/ with 5 occurrences migrated to: https://www.w3.org/2000/xmlns/ ([https](https://www.w3.org/2000/xmlns/) result 200). * [ ] http://www.w3.org/2004/08/xop/include with 2 occurrences migrated to: https://www.w3.org/2004/08/xop/include ([https](https://www.w3.org/2004/08/xop/include) result 200). * [ ] http://www.w3.org/DesignIssues/MatrixURIs.html with 1 occurrences migrated to: https://www.w3.org/DesignIssues/MatrixURIs.html ([https](https://www.w3.org/DesignIssues/MatrixURIs.html) result 200). * [ ] http://www.w3.org/TR/2004/WD-soap12-mtom-20040608/ with 2 occurrences migrated to: https://www.w3.org/TR/2004/WD-soap12-mtom-20040608/ ([https](https://www.w3.org/TR/2004/WD-soap12-mtom-20040608/) result 200). * [ ] http://www.w3.org/TR/2005/REC-xop10-20050125/ with 6 occurrences migrated to: https://www.w3.org/TR/2005/REC-xop10-20050125/ ([https](https://www.w3.org/TR/2005/REC-xop10-20050125/) result 200). * [ ] http://www.w3.org/TR/cors/ with 19 occurrences migrated to: https://www.w3.org/TR/cors/ ([https](https://www.w3.org/TR/cors/) result 200). * [ ] http://www.w3.org/TR/eventsource/ with 2 occurrences migrated to: https://www.w3.org/TR/eventsource/ ([https](https://www.w3.org/TR/eventsource/) result 200). * [ ] http://www.w3.org/TR/xhtml1/ with 1 occurrences migrated to: https://www.w3.org/TR/xhtml1/ ([https](https://www.w3.org/TR/xhtml1/) result 200). * [ ] http://www.w3.org/TR/xhtml1/diffs.html with 1 occurrences migrated to: https://www.w3.org/TR/xhtml1/diffs.html ([https](https://www.w3.org/TR/xhtml1/diffs.html) result 200). * [ ] http://www.w3.org/TR/xhtml1/dtds.html with 1 occurrences migrated to: https://www.w3.org/TR/xhtml1/dtds.html ([https](https://www.w3.org/TR/xhtml1/dtds.html) result 200). * [ ] http://www.webjars.org with 4 occurrences migrated to: https://www.webjars.org ([https](https://www.webjars.org) result 200). * [ ] http://www.webjars.org/ with 2 occurrences migrated to: https://www.webjars.org/ ([https](https://www.webjars.org/) result 200). * [ ] http://www.webjars.org/documentation with 2 occurrences migrated to: https://www.webjars.org/documentation ([https](https://www.webjars.org/documentation) result 200). * [ ] http://x-stream.github.io/ with 2 occurrences migrated to: https://x-stream.github.io/ ([https](https://x-stream.github.io/) result 200). * [ ] http://youtrack.jetbrains.com/issue/IDEA-53476 with 1 occurrences migrated to: https://youtrack.jetbrains.com/issue/IDEA-53476 ([https](https://youtrack.jetbrains.com/issue/IDEA-53476) result 200). * [ ] http://youtrack.jetbrains.com/issue/IDEA-64446 with 1 occurrences migrated to: https://youtrack.jetbrains.com/issue/IDEA-64446 ([https](https://youtrack.jetbrains.com/issue/IDEA-64446) result 200). * [ ] http://bit.ly/TRlX2r with 1 occurrences migrated to: https://bit.ly/TRlX2r ([https](https://bit.ly/TRlX2r) result 301). * [ ] http://bit.ly/UzccDt with 1 occurrences migrated to: https://bit.ly/UzccDt ([https](https://bit.ly/UzccDt) result 301). * [ ] http://bit.ly/p9rIvx with 1 occurrences migrated to: https://bit.ly/p9rIvx ([https](https://bit.ly/p9rIvx) result 301). * [ ] http://bit.ly/qUwvwz with 1 occurrences migrated to: https://bit.ly/qUwvwz ([https](https://bit.ly/qUwvwz) result 301). * [ ] http://blogs.msdn.com/b/ieinternals/archive/2010/05/13/xdomainrequest-restrictions-limitations-and-workarounds.aspx with 1 occurrences migrated to: https://blogs.msdn.com/b/ieinternals/archive/2010/05/13/xdomainrequest-restrictions-limitations-and-workarounds.aspx ([https](https://blogs.msdn.com/b/ieinternals/archive/2010/05/13/xdomainrequest-restrictions-limitations-and-workarounds.aspx) result 301). * [ ] http://castor-data-binding.github.io/castor with 1 occurrences migrated to: https://castor-data-binding.github.io/castor ([https](https://castor-data-binding.github.io/castor) result 301). * [ ] http://code.google.com/p/beanshell2/ with 1 occurrences migrated to: https://code.google.com/p/beanshell2/ ([https](https://code.google.com/p/beanshell2/) result 301). * [ ] http://code.google.com/p/browsersec/wiki/Part2 with 1 occurrences migrated to: https://code.google.com/p/browsersec/wiki/Part2 ([https](https://code.google.com/p/browsersec/wiki/Part2) result 301). * [ ] http://code.google.com/p/gears/wiki/ResumableHttpRequestsProposal with 1 occurrences migrated to: https://code.google.com/p/gears/wiki/ResumableHttpRequestsProposal ([https](https://code.google.com/p/gears/wiki/ResumableHttpRequestsProposal) result 301). * [ ] http://code.google.com/p/xml-matchers/ with 3 occurrences migrated to: https://code.google.com/p/xml-matchers/ ([https](https://code.google.com/p/xml-matchers/) result 301). * [ ] http://commons.apache.org/proper/commons-dbcp with 2 occurrences migrated to: https://commons.apache.org/proper/commons-dbcp ([https](https://commons.apache.org/proper/commons-dbcp) result 301). * [ ] http://commons.apache.org/proper/commons-fileupload with 2 occurrences migrated to: https://commons.apache.org/proper/commons-fileupload ([https](https://commons.apache.org/proper/commons-fileupload) result 301). * [ ] http://confluence.jetbrains.net/display/IDEADEV/Gradle+integration with 1 occurrences migrated to: https://confluence.jetbrains.net/display/IDEADEV/Gradle+integration ([https](https://confluence.jetbrains.net/display/IDEADEV/Gradle+integration) result 301). * [ ] http://contributor-covenant.org with 1 occurrences migrated to: https://contributor-covenant.org ([https](https://contributor-covenant.org) result 301). * [ ] http://contributor-covenant.org/version/1/3/0/ with 1 occurrences migrated to: https://contributor-covenant.org/version/1/3/0/ ([https](https://contributor-covenant.org/version/1/3/0/) result 301). * [ ] http://db.apache.org/derby with 2 occurrences migrated to: https://db.apache.org/derby ([https](https://db.apache.org/derby) result 301). * [ ] http://dev.w3.org/html5/eventsource/ with 2 occurrences migrated to: https://dev.w3.org/html5/eventsource/ ([https](https://dev.w3.org/html5/eventsource/) result 301). * [ ] http://domain.com with 24 occurrences migrated to: https://domain.com ([https](https://domain.com) result 301). * [ ] http://domain.com/ with 1 occurrences migrated to: https://domain.com/ ([https](https://domain.com/) result 301). * [ ] http://en.wikipedia.org/wiki/Cache_ with 1 occurrences migrated to: https://en.wikipedia.org/wiki/Cache_ ([https](https://en.wikipedia.org/wiki/Cache_) result 301). * [ ] http://facebook.github.io/react/ with 2 occurrences migrated to: https://facebook.github.io/react/ ([https](https://facebook.github.io/react/) result 301). * [ ] http://forum.springframework.org/showthread.php?t=41350 with 1 occurrences migrated to: https://forum.springframework.org/showthread.php?t=41350 ([https](https://forum.springframework.org/showthread.php?t=41350) result 301). * [ ] http://github.com/SpringSource/spring-framework with 1 occurrences migrated to: https://github.com/SpringSource/spring-framework ([https](https://github.com/SpringSource/spring-framework) result 301). * [ ] http://hdiv.org/ with 1 occurrences migrated to: https://hdiv.org/ ([https](https://hdiv.org/) result 301). * [ ] http://jakarta.apache.org/commons/fileupload with 1 occurrences migrated to: https://jakarta.apache.org/commons/fileupload ([https](https://jakarta.apache.org/commons/fileupload) result 301). * [ ] http://jira.springframework.org/browse/SPR-5708 with 1 occurrences migrated to: https://jira.springframework.org/browse/SPR-5708 ([https](https://jira.springframework.org/browse/SPR-5708) result 301). * [ ] http://jira.springframework.org/browse/SPR-6124 with 1 occurrences migrated to: https://jira.springframework.org/browse/SPR-6124 ([https](https://jira.springframework.org/browse/SPR-6124) result 301). * [ ] http://jira.springframework.org/browse/SPR-6128 with 1 occurrences migrated to: https://jira.springframework.org/browse/SPR-6128 ([https](https://jira.springframework.org/browse/SPR-6128) result 301). * [ ] http://jira.springframework.org/browse/SPR-7064 with 1 occurrences migrated to: https://jira.springframework.org/browse/SPR-7064 ([https](https://jira.springframework.org/browse/SPR-7064) result 301). * [ ] http://maven.apache.org/plugins/maven-surefire-plugin/test-mojo.html with 1 occurrences migrated to: https://maven.apache.org/plugins/maven-surefire-plugin/test-mojo.html ([https](https://maven.apache.org/plugins/maven-surefire-plugin/test-mojo.html) result 301). * [ ] http://mockito.org/ (301) with 1 occurrences migrated to: https://mockito.github.io ([https](https://mockito.org/) result 301). * [ ] http://mydomain1.com with 37 occurrences migrated to: https://mydomain1.com ([https](https://mydomain1.com) result 301). * [ ] http://mydomain1.com/ with 2 occurrences migrated to: https://mydomain1.com/ ([https](https://mydomain1.com/) result 301). * [ ] http://mydomain1.com/path with 2 occurrences migrated to: https://mydomain1.com/path ([https](https://mydomain1.com/path) result 301). * [ ] http://opensource.atlassian.com/projects/spring/browse/SPR-2660 with 1 occurrences migrated to: https://opensource.atlassian.com/projects/spring/browse/SPR-2660 ([https](https://opensource.atlassian.com/projects/spring/browse/SPR-2660) result 301). * [ ] http://opensource.atlassian.com/projects/spring/browse/SPR-2754 with 1 occurrences migrated to: https://opensource.atlassian.com/projects/spring/browse/SPR-2754 ([https](https://opensource.atlassian.com/projects/spring/browse/SPR-2754) result 301). * [ ] http://opensource.atlassian.com/projects/spring/browse/SPR-2789 with 1 occurrences migrated to: https://opensource.atlassian.com/projects/spring/browse/SPR-2789 ([https](https://opensource.atlassian.com/projects/spring/browse/SPR-2789) result 301). * [ ] http://opensource.atlassian.com/projects/spring/browse/SPR-3127 with 1 occurrences migrated to: https://opensource.atlassian.com/projects/spring/browse/SPR-3127 ([https](https://opensource.atlassian.com/projects/spring/browse/SPR-3127) result 301). * [ ] http://opensource.atlassian.com/projects/spring/browse/SPR-3775 with 1 occurrences migrated to: https://opensource.atlassian.com/projects/spring/browse/SPR-3775 ([https](https://opensource.atlassian.com/projects/spring/browse/SPR-3775) result 301). * [ ] http://opensource.atlassian.com/projects/spring/browse/SPR-3880 with 1 occurrences migrated to: https://opensource.atlassian.com/projects/spring/browse/SPR-3880 ([https](https://opensource.atlassian.com/projects/spring/browse/SPR-3880) result 301). * [ ] http://opensource.atlassian.com/projects/spring/browse/SPR-3896 with 7 occurrences migrated to: https://opensource.atlassian.com/projects/spring/browse/SPR-3896 ([https](https://opensource.atlassian.com/projects/spring/browse/SPR-3896) result 301). * [ ] http://opensource.atlassian.com/projects/spring/browse/SPR-3949 with 1 occurrences migrated to: https://opensource.atlassian.com/projects/spring/browse/SPR-3949 ([https](https://opensource.atlassian.com/projects/spring/browse/SPR-3949) result 301). * [ ] http://opensource.atlassian.com/projects/spring/browse/SPR-4008 with 2 occurrences migrated to: https://opensource.atlassian.com/projects/spring/browse/SPR-4008 ([https](https://opensource.atlassian.com/projects/spring/browse/SPR-4008) result 301). * [ ] http://opensource.atlassian.com/projects/spring/browse/SPR-4040 with 2 occurrences migrated to: https://opensource.atlassian.com/projects/spring/browse/SPR-4040 ([https](https://opensource.atlassian.com/projects/spring/browse/SPR-4040) result 301). * [ ] http://publib.boulder.ibm.com/infocenter/wasinfo/v5r1//topic/com.ibm.websphere.base.doc/info/aes/ae/rdat_extiapi.html with 1 occurrences migrated to: https://publib.boulder.ibm.com/infocenter/wasinfo/v5r1//topic/com.ibm.websphere.base.doc/info/aes/ae/rdat_extiapi.html ([https](https://publib.boulder.ibm.com/infocenter/wasinfo/v5r1//topic/com.ibm.websphere.base.doc/info/aes/ae/rdat_extiapi.html) result 301). * [ ] http://publib.boulder.ibm.com/infocenter/wasinfo/v6r0/topic/com.ibm.websphere.javadoc.doc/public_html/api/com/ibm/websphere/rsadapter/JDBCConnectionSpec.html with 1 occurrences migrated to: https://publib.boulder.ibm.com/infocenter/wasinfo/v6r0/topic/com.ibm.websphere.javadoc.doc/public_html/api/com/ibm/websphere/rsadapter/JDBCConnectionSpec.html ([https](https://publib.boulder.ibm.com/infocenter/wasinfo/v6r0/topic/com.ibm.websphere.javadoc.doc/public_html/api/com/ibm/websphere/rsadapter/JDBCConnectionSpec.html) result 301). * [ ] http://site2.com with 3 occurrences migrated to: https://site2.com ([https](https://site2.com) result 301). * [ ] http://slack.kotlinlang.org/ with 2 occurrences migrated to: https://slack.kotlinlang.org/ ([https](https://slack.kotlinlang.org/) result 301). * [ ] http://sourceforge.net/projects/c3p0 with 2 occurrences migrated to: https://sourceforge.net/projects/c3p0 ([https](https://sourceforge.net/projects/c3p0) result 301). * [ ] http://sourceforge.net/projects/javadiff with 1 occurrences migrated to: https://sourceforge.net/projects/javadiff ([https](https://sourceforge.net/projects/javadiff) result 301). * [ ] http://springframework.org with 2 occurrences migrated to: https://springframework.org ([https](https://springframework.org) result 301). * [ ] http://www.atomenabled.org/developers/syndication/ with 1 occurrences migrated to: https://www.atomenabled.org/developers/syndication/ ([https](https://www.atomenabled.org/developers/syndication/) result 301). * [ ] http://www.google.com/ig/calculator?q=1USD=?EUR with 1 occurrences migrated to: https://www.google.com/ig/calculator?q=1USD=?EUR ([https](https://www.google.com/ig/calculator?q=1USD=?EUR) result 301). * [ ] http://www.javaworld.com/javaworld/jw-01-2009/jw-01-spring-transactions.html with 1 occurrences migrated to: https://www.javaworld.com/javaworld/jw-01-2009/jw-01-spring-transactions.html ([https](https://www.javaworld.com/javaworld/jw-01-2009/jw-01-spring-transactions.html) result 301). * [ ] http://www.junit.org/ with 1 occurrences migrated to: https://www.junit.org/ ([https](https://www.junit.org/) result 301). * [ ] http://www.mnot.net/cache_docs with 1 occurrences migrated to: https://www.mnot.net/cache_docs ([https](https://www.mnot.net/cache_docs) result 301). * [ ] http://www.sf.net/home.view?siteLanguage=nl with 1 occurrences migrated to: https://www.sf.net/home.view?siteLanguage=nl ([https](https://www.sf.net/home.view?siteLanguage=nl) result 301). * [ ] http://www.springframework.org with 7 occurrences migrated to: https://www.springframework.org ([https](https://www.springframework.org) result 301). * [ ] http://www.springframework.org/ with 3 occurrences migrated to: https://www.springframework.org/ ([https](https://www.springframework.org/) result 301). * [ ] http://xyz.com/path with 2 occurrences migrated to: https://xyz.com/path ([https](https://xyz.com/path) result 301). * [ ] http://commons.apache.org/codec/ with 1 occurrences migrated to: https://commons.apache.org/codec/ ([https](https://commons.apache.org/codec/) result 302). * [ ] http://commons.apache.org/logging with 2 occurrences migrated to: https://commons.apache.org/logging ([https](https://commons.apache.org/logging) result 302). * [ ] http://download.oracle.com/javaee/6/api/javax/inject/Scope.html with 1 occurrences migrated to: https://download.oracle.com/javaee/6/api/javax/inject/Scope.html ([https](https://download.oracle.com/javaee/6/api/javax/inject/Scope.html) result 302). * [ ] http://download.oracle.com/javase/1.5.0/docs/api/java/lang/System.html with 4 occurrences migrated to: https://download.oracle.com/javase/1.5.0/docs/api/java/lang/System.html ([https](https://download.oracle.com/javase/1.5.0/docs/api/java/lang/System.html) result 302). * [ ] http://download.oracle.com/javase/6/docs/technotes/guides/jar/jar.html with 1 occurrences migrated to: https://download.oracle.com/javase/6/docs/technotes/guides/jar/jar.html ([https](https://download.oracle.com/javase/6/docs/technotes/guides/jar/jar.html) result 302). * [ ] http://download.oracle.com/javase/8/docs/api/java/beans/ConstructorProperties.html with 1 occurrences migrated to: https://download.oracle.com/javase/8/docs/api/java/beans/ConstructorProperties.html ([https](https://download.oracle.com/javase/8/docs/api/java/beans/ConstructorProperties.html) result 302). * [ ] http://download.oracle.com/javase/jndi/tutorial/beyond/misc/policy.html with 1 occurrences migrated to: https://download.oracle.com/javase/jndi/tutorial/beyond/misc/policy.html ([https](https://download.oracle.com/javase/jndi/tutorial/beyond/misc/policy.html) result 302). * [ ] http://gafter.blogspot.nl/2006/12/super-type-tokens.html with 1 occurrences migrated to: https://gafter.blogspot.nl/2006/12/super-type-tokens.html ([https](https://gafter.blogspot.nl/2006/12/super-type-tokens.html) result 302). * [ ] http://git-scm.com/book/en/Distributed-Git-Contributing-to-a-Project with 1 occurrences migrated to: https://git-scm.com/book/en/Distributed-Git-Contributing-to-a-Project ([https](https://git-scm.com/book/en/Distributed-Git-Contributing-to-a-Project) result 302). * [ ] http://git-scm.com/book/en/Git-Tools-Rewriting-History with 1 occurrences migrated to: https://git-scm.com/book/en/Git-Tools-Rewriting-History ([https](https://git-scm.com/book/en/Git-Tools-Rewriting-History) result 302). * [ ] http://java.sun.com with 3 occurrences migrated to: https://java.sun.com ([https](https://java.sun.com) result 302). * [ ] http://java.sun.com/docs/books/jls/third_edition/html/conversions.html with 1 occurrences migrated to: https://java.sun.com/docs/books/jls/third_edition/html/conversions.html ([https](https://java.sun.com/docs/books/jls/third_edition/html/conversions.html) result 302). * [ ] http://java.sun.com/docs/books/jls/third_edition/html/expressions.html with 1 occurrences migrated to: https://java.sun.com/docs/books/jls/third_edition/html/expressions.html ([https](https://java.sun.com/docs/books/jls/third_edition/html/expressions.html) result 302). * [ ] http://java.sun.com/j2se/ with 2 occurrences migrated to: https://java.sun.com/j2se/ ([https](https://java.sun.com/j2se/) result 302). * [ ] http://java.sun.com/j2se/1.4.1/docs/tooldocs/solaris/javadoc.html with 1 occurrences migrated to: https://java.sun.com/j2se/1.4.1/docs/tooldocs/solaris/javadoc.html ([https](https://java.sun.com/j2se/1.4.1/docs/tooldocs/solaris/javadoc.html) result 302). * [ ] http://java.sun.com/j2se/1.4.2/docs/api/java/text/SimpleDateFormat.html with 1 occurrences migrated to: https://java.sun.com/j2se/1.4.2/docs/api/java/text/SimpleDateFormat.html ([https](https://java.sun.com/j2se/1.4.2/docs/api/java/text/SimpleDateFormat.html) result 302). * [ ] http://java.sun.com/j2se/javadoc with 1 occurrences migrated to: https://java.sun.com/j2se/javadoc ([https](https://java.sun.com/j2se/javadoc) result 302). * [ ] http://java.sun.com/j2se/javadoc/ with 1 occurrences migrated to: https://java.sun.com/j2se/javadoc/ ([https](https://java.sun.com/j2se/javadoc/) result 302). * [ ] http://java.sun.com/j2se/javadoc/faq.html with 1 occurrences migrated to: https://java.sun.com/j2se/javadoc/faq.html ([https](https://java.sun.com/j2se/javadoc/faq.html) result 302). * [ ] http://java.sun.com/webservices/jaxb/ with 1 occurrences migrated to: https://java.sun.com/webservices/jaxb/ ([https](https://java.sun.com/webservices/jaxb/) result 302). * [ ] http://java.sun.com/xml/ns/j2ee/connector_1_5.xsd with 1 occurrences migrated to: https://java.sun.com/xml/ns/j2ee/connector_1_5.xsd ([https](https://java.sun.com/xml/ns/j2ee/connector_1_5.xsd) result 302). * [ ] http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd with 2 occurrences migrated to: https://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd ([https](https://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd) result 302). * [ ] http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd with 2 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://sourceforge.net/projects/cglib/files/cglib3/3.0/cglib-3.0.jar/download with 1 occurrences migrated to: https://sourceforge.net/projects/cglib/files/cglib3/3.0/cglib-3.0.jar/download ([https](https://sourceforge.net/projects/cglib/files/cglib3/3.0/cglib-3.0.jar/download) result 302). * [ ] http://other.info/foo/bar (301) with 1 occurrences migrated to: https://weibo.com/otherinfo/foo/bar ([https](https://other.info/foo/bar) result 302). * [ ] http://www.iana.org/assignments/http-status-codes with 1 occurrences migrated to: https://www.iana.org/assignments/http-status-codes ([https](https://www.iana.org/assignments/http-status-codes) result 302). * [ ] http://www.iana.org/assignments/media-types/ with 1 occurrences migrated to: https://www.iana.org/assignments/media-types/ ([https](https://www.iana.org/assignments/media-types/) result 302). * [ ] http://www.sys-con.com/java with 1 occurrences migrated to: https://www.sys-con.com/java ([https](https://www.sys-con.com/java) result 302). These URLs were intentionally ignored. * http://Additional-namespace-name-URI with 1 occurrences * http://Default-namespace-name-URI with 1 occurrences * http://HOST:8080/remoting/AccountService with 1 occurrences * http://Namespace-name-URI with 1 occurrences * http://Unbound-namespace-name-URI with 1 occurrences * http://anotherHost/mvc-showcase with 1 occurrences * http://apache.org/xml/features/disallow-doctype-decl with 14 occurrences * http://barfoo:8888 with 1 occurrences * http://example/ with 1 occurrences * http://fake-service with 7 occurrences * http://foo with 3 occurrences * http://foobar:8088 with 1 occurrences * http://host:port/myApp/myEndpoint/ with 1 occurrences * http://java.sun.com/jsp/jstl/core with 1 occurrences * http://java.sun.com/xml/jaxp/properties/schemaLanguage with 1 occurrences * http://java.sun.com/xml/ns/j2ee with 6 occurrences * http://java.sun.com/xml/ns/javaee with 4 occurrences * http://java.sun.com/xml/ns/persistence with 1 occurrences * http://java.sun.com/xml/stream/properties/report-cdata-event with 1 occurrences * http://jaxws.remoting.springframework.org/ with 4 occurrences * http://localhost with 86 occurrences * http://localhost/ with 16 occurrences * http://localhost/42 with 1 occurrences * http://localhost/?cookie=foo with 1 occurrences * http://localhost/FILE.TXT with 1 occurrences * http://localhost/abc with 1 occurrences * http://localhost/abc/def with 1 occurrences * http://localhost/app%20/path/ with 1 occurrences * http://localhost/app/path%20with%20spaces/ with 1 occurrences * http://localhost/bar with 2 occurrences * http://localhost/context/a with 3 occurrences * http://localhost/contextPath/main/path with 2 occurrences * http://localhost/file.foo with 1 occurrences * http://localhost/file.txt with 1 occurrences * http://localhost/foo with 2 occurrences * http://localhost/foo%20bar with 1 occurrences * http://localhost/foo/bar with 1 occurrences * http://localhost/foo/bar/baz with 1 occurrences * http://localhost/forward with 1 occurrences * http://localhost/hotels/42/bookings/21 with 4 occurrences * http://localhost/input with 1 occurrences * http://localhost/jquery-1.11.0.min.js with 5 occurrences * http://localhost/messages/form with 1 occurrences * http://localhost/mvc-showcase with 2 occurrences * http://localhost/mvc-showcase/app with 1 occurrences * http://localhost/mvc-showcase/data/foo%20bar with 1 occurrences * http://localhost/mvc-showcase/data/param with 1 occurrences * http://localhost/mvc-showcase/data/param?foo=123 with 2 occurrences * http://localhost/myapp/main with 1 occurrences * http://localhost/myapp/people/1/addresses/DE with 1 occurrences * http://localhost/path with 3 occurrences * http://localhost/path;a=b/with/semicolon with 1 occurrences * http://localhost/persons with 1 occurrences * http://localhost/prefix with 1 occurrences * http://localhost/prefix/app with 1 occurrences * http://localhost/prefix/bar with 1 occurrences * http://localhost/prefix/mvc-showcase with 3 occurrences * http://localhost/query= with 1 occurrences * http://localhost/query=foo@bar with 1 occurrences * http://localhost/resources/child/response.txt with 1 occurrences * http://localhost/resources/foo with 2 occurrences * http://localhost/resources/foo.txt with 1 occurrences * http://localhost/resources/response.txt with 2 occurrences * http://localhost/rest/books/6/pages/1.json with 1 occurrences * http://localhost/something/1/foo with 1 occurrences * http://localhost/something/optional-param with 1 occurrences * http://localhost/test with 4 occurrences * http://localhost/test.html with 1 occurrences * http://localhost/test/this with 2 occurrences * http://localhost:7070/example/adminhandle.vm with 1 occurrences * http://localhost:7070/example/bingo.html with 1 occurrences * http://localhost:80/jquery-1.11.0.min.js with 1 occurrences * http://localhost:8080 with 34 occurrences * http://localhost:8080/ with 4 occurrences * http://localhost:8080/OrderService with 3 occurrences * http://localhost:8080/aA/bB/cC with 1 occurrences * http://localhost:8080/context with 1 occurrences * http://localhost:8080/context/myapiresource with 1 occurrences * http://localhost:8080/gamecast/admin/index.html with 1 occurrences * http://localhost:8080/gamecast/display.html with 1 occurrences * http://localhost:8080/gamecast/displayShoppingCart.html with 1 occurrences * http://localhost:8080/jquery-1.11.0.min.js with 1 occurrences * http://localhost:8080/mvc-showcase with 1 occurrences * http://localhost:8080/myapiresource with 1 occurrences * http://localhost:8080/myapp/js/sockjs-client.js with 1 occurrences * http://localhost:8080/path with 2 occurrences * http://localhost:8080/people with 2 occurrences * http://localhost:8080/portfolio with 1 occurrences * http://localhost:8080/spring/ with 2 occurrences * http://localhost:8080/test/ with 2 occurrences * http://localhost:8080/test/print?value=%EA%B0%80+%EB%82%98 with 1 occurrences * http://localhost:8081 with 1 occurrences * http://localhost:8081/ with 1 occurrences * http://localhost:8181 with 1 occurrences * http://localhost:8888/AccountServiceEndpoint?WSDL with 1 occurrences * http://localhost:9000 with 7 occurrences * http://localhost:9090 with 18 occurrences * http://localhost:9090/jquery-1.11.0.min.js with 2 occurrences * http://localhost:9990/mail/messages/form with 1 occurrences * http://localhost:9999/ with 1 occurrences * http://localhost:9999/OrderService?wsdl with 4 occurrences * http://localhosta/testbean with 3 occurrences * http://myserver with 1 occurrences * http://myurl with 12 occurrences * http://remotehost:8080/remoting/AccountService with 2 occurrences * http://samples.springframework.org/flight with 39 occurrences * http://somethingDifferent with 1 occurrences * http://springframework.org/spring-ws with 17 occurrences * http://test.com with 1 occurrences * http://test.com/ with 1 occurrences * http://testng.org/ with 1 occurrences * http://tiles.apache.org/tags-tiles with 1 occurrences * http://www with 1 occurrences * http://www.foo.com/schema/component with 6 occurrences * http://www.mycompany.com/schema/myns with 4 occurrences * http://www.springframework.org/schema/aop with 30 occurrences * http://www.springframework.org/schema/beans with 169 occurrences * http://www.springframework.org/schema/beans/test with 2 occurrences * http://www.springframework.org/schema/c with 1 occurrences * http://www.springframework.org/schema/cache with 5 occurrences * http://www.springframework.org/schema/context with 28 occurrences * http://www.springframework.org/schema/jdbc with 8 occurrences * http://www.springframework.org/schema/jee with 9 occurrences * http://www.springframework.org/schema/jms with 5 occurrences * http://www.springframework.org/schema/lang with 10 occurrences * http://www.springframework.org/schema/mvc with 8 occurrences * http://www.springframework.org/schema/oxm with 4 occurrences * http://www.springframework.org/schema/p with 4 occurrences * http://www.springframework.org/schema/task with 2 occurrences * http://www.springframework.org/schema/tool with 27 occurrences * http://www.springframework.org/schema/tx with 18 occurrences * http://www.springframework.org/schema/util with 8 occurrences * http://www.springframework.org/schema/websocket with 26 occurrences * http://www.springframework.org/spring-ws with 1 occurrences * http://www.springframework.org/tags with 4 occurrences * http://www.springframework.org/tags/form with 2 occurrences * http://www.w3.org/1999/XSL/Transform with 8 occurrences * http://www.w3.org/2001/XMLSchema with 24 occurrences * http://www.w3.org/2001/XMLSchema-instance with 83 occurrences * http://www.w3.org/2005/Atom with 4 occurrences * http://www.w3.org/TR/html4/charset.html with 5 occurrences * http://www.w3.org/TR/html4/sgml/entities.html with 14 occurrences * http://www.w3.org/XML/1998/namespace with 5 occurrences * http://xml.org/sax/features/ with 4 occurrences * http://xml.org/sax/features/external-general-entities with 14 occurrences * http://xml.org/sax/features/is-standalone with 1 occurrences * http://xml.org/sax/features/namespace-prefixes with 13 occurrences * http://xml.org/sax/features/namespaces with 12 occurrences * http://xml.org/sax/features/namespaces-prefixes with 1 occurrences * http://xml.org/sax/properties/lexical-handler with 12 occurrences Closes gh-22680
This commit is contained in:
committed by
Sam Brannen
parent
1aaadb39c0
commit
3db08c6b7a
@@ -134,10 +134,10 @@ public class HttpHeadersTests {
|
||||
|
||||
@Test
|
||||
public void location() throws URISyntaxException {
|
||||
URI location = new URI("http://www.example.com/hotels");
|
||||
URI location = new URI("https://www.example.com/hotels");
|
||||
headers.setLocation(location);
|
||||
assertEquals("Invalid Location header", location, headers.getLocation());
|
||||
assertEquals("Invalid Location header", "http://www.example.com/hotels", headers.getFirst("Location"));
|
||||
assertEquals("Invalid Location header", "https://www.example.com/hotels", headers.getFirst("Location"));
|
||||
}
|
||||
|
||||
@Test
|
||||
|
||||
@@ -42,7 +42,7 @@ public class RequestEntityTests {
|
||||
public void normal() throws URISyntaxException {
|
||||
String headerName = "My-Custom-Header";
|
||||
String headerValue = "HeaderValue";
|
||||
URI url = new URI("http://example.com");
|
||||
URI url = new URI("https://example.com");
|
||||
Integer entity = 42;
|
||||
|
||||
RequestEntity<Object> requestEntity =
|
||||
@@ -58,13 +58,13 @@ public class RequestEntityTests {
|
||||
|
||||
@Test
|
||||
public void uriVariablesExpansion() throws URISyntaxException {
|
||||
URI uri = new UriTemplate("http://example.com/{foo}").expand("bar");
|
||||
URI uri = new UriTemplate("https://example.com/{foo}").expand("bar");
|
||||
RequestEntity.get(uri).accept(MediaType.TEXT_PLAIN).build();
|
||||
|
||||
String url = "http://www.{host}.com/{path}";
|
||||
String host = "example";
|
||||
String path = "foo/bar";
|
||||
URI expected = new URI("http://www.example.com/foo/bar");
|
||||
URI expected = new URI("https://www.example.com/foo/bar");
|
||||
|
||||
uri = new UriTemplate(url).expand(host, path);
|
||||
RequestEntity<?> entity = RequestEntity.get(uri).build();
|
||||
@@ -81,7 +81,7 @@ public class RequestEntityTests {
|
||||
|
||||
@Test
|
||||
public void get() {
|
||||
RequestEntity<Void> requestEntity = RequestEntity.get(URI.create("http://example.com")).accept(
|
||||
RequestEntity<Void> requestEntity = RequestEntity.get(URI.create("https://example.com")).accept(
|
||||
MediaType.IMAGE_GIF, MediaType.IMAGE_JPEG, MediaType.IMAGE_PNG).build();
|
||||
|
||||
assertNotNull(requestEntity);
|
||||
@@ -99,7 +99,7 @@ public class RequestEntityTests {
|
||||
long contentLength = 67890;
|
||||
MediaType contentType = MediaType.TEXT_PLAIN;
|
||||
|
||||
RequestEntity<Void> responseEntity = RequestEntity.post(new URI("http://example.com")).
|
||||
RequestEntity<Void> responseEntity = RequestEntity.post(new URI("https://example.com")).
|
||||
accept(accept).
|
||||
acceptCharset(StandardCharsets.UTF_8).
|
||||
ifModifiedSince(ifModifiedSince).
|
||||
@@ -110,7 +110,7 @@ public class RequestEntityTests {
|
||||
|
||||
assertNotNull(responseEntity);
|
||||
assertEquals(HttpMethod.POST, responseEntity.getMethod());
|
||||
assertEquals(new URI("http://example.com"), responseEntity.getUrl());
|
||||
assertEquals(new URI("https://example.com"), responseEntity.getUrl());
|
||||
HttpHeaders responseHeaders = responseEntity.getHeaders();
|
||||
|
||||
assertEquals("text/plain", responseHeaders.getFirst("Accept"));
|
||||
@@ -125,7 +125,7 @@ public class RequestEntityTests {
|
||||
|
||||
@Test
|
||||
public void methods() throws URISyntaxException {
|
||||
URI url = new URI("http://example.com");
|
||||
URI url = new URI("https://example.com");
|
||||
|
||||
RequestEntity<?> entity = RequestEntity.get(url).build();
|
||||
assertEquals(HttpMethod.GET, entity.getMethod());
|
||||
@@ -152,7 +152,7 @@ public class RequestEntityTests {
|
||||
|
||||
@Test // SPR-13154
|
||||
public void types() throws URISyntaxException {
|
||||
URI url = new URI("http://example.com");
|
||||
URI url = new URI("https://example.com");
|
||||
List<String> body = Arrays.asList("foo", "bar");
|
||||
ParameterizedTypeReference<?> typeReference = new ParameterizedTypeReference<List<String>>() {};
|
||||
|
||||
|
||||
@@ -49,7 +49,7 @@ public class BufferedSimpleHttpRequestFactoryTests extends AbstractHttpRequestFa
|
||||
|
||||
@Test
|
||||
public void prepareConnectionWithRequestBody() throws Exception {
|
||||
URL uri = new URL("http://example.com");
|
||||
URL uri = new URL("https://example.com");
|
||||
testRequestBodyAllowed(uri, "GET", false);
|
||||
testRequestBodyAllowed(uri, "HEAD", false);
|
||||
testRequestBodyAllowed(uri, "OPTIONS", false);
|
||||
@@ -61,7 +61,7 @@ public class BufferedSimpleHttpRequestFactoryTests extends AbstractHttpRequestFa
|
||||
|
||||
@Test
|
||||
public void deleteWithoutBodyDoesNotRaiseException() throws Exception {
|
||||
HttpURLConnection connection = new TestHttpURLConnection(new URL("http://example.com"));
|
||||
HttpURLConnection connection = new TestHttpURLConnection(new URL("https://example.com"));
|
||||
((SimpleClientHttpRequestFactory) this.factory).prepareConnection(connection, "DELETE");
|
||||
SimpleBufferingClientHttpRequest request = new SimpleBufferingClientHttpRequest(connection, false);
|
||||
request.execute();
|
||||
|
||||
@@ -150,7 +150,7 @@ public class HttpComponentsClientHttpRequestFactoryTests extends AbstractHttpReq
|
||||
|
||||
@Test
|
||||
public void createHttpUriRequest() throws Exception {
|
||||
URI uri = new URI("http://example.com");
|
||||
URI uri = new URI("https://example.com");
|
||||
testRequestBodyAllowed(uri, HttpMethod.GET, false);
|
||||
testRequestBodyAllowed(uri, HttpMethod.HEAD, false);
|
||||
testRequestBodyAllowed(uri, HttpMethod.OPTIONS, false);
|
||||
|
||||
@@ -59,7 +59,7 @@ public class InterceptingClientHttpRequestFactoryTests {
|
||||
interceptors.add(new NoOpInterceptor());
|
||||
requestFactory = new InterceptingClientHttpRequestFactory(requestFactoryMock, interceptors);
|
||||
|
||||
ClientHttpRequest request = requestFactory.createRequest(new URI("http://example.com"), HttpMethod.GET);
|
||||
ClientHttpRequest request = requestFactory.createRequest(new URI("https://example.com"), HttpMethod.GET);
|
||||
ClientHttpResponse response = request.execute();
|
||||
|
||||
assertTrue(((NoOpInterceptor) interceptors.get(0)).invoked);
|
||||
@@ -83,7 +83,7 @@ public class InterceptingClientHttpRequestFactoryTests {
|
||||
interceptors.add(new NoOpInterceptor());
|
||||
requestFactory = new InterceptingClientHttpRequestFactory(requestFactoryMock, interceptors);
|
||||
|
||||
ClientHttpRequest request = requestFactory.createRequest(new URI("http://example.com"), HttpMethod.GET);
|
||||
ClientHttpRequest request = requestFactory.createRequest(new URI("https://example.com"), HttpMethod.GET);
|
||||
ClientHttpResponse response = request.execute();
|
||||
|
||||
assertFalse(((NoOpInterceptor) interceptors.get(1)).invoked);
|
||||
@@ -122,13 +122,13 @@ public class InterceptingClientHttpRequestFactoryTests {
|
||||
requestFactory =
|
||||
new InterceptingClientHttpRequestFactory(requestFactoryMock, Collections.singletonList(interceptor));
|
||||
|
||||
ClientHttpRequest request = requestFactory.createRequest(new URI("http://example.com"), HttpMethod.GET);
|
||||
ClientHttpRequest request = requestFactory.createRequest(new URI("https://example.com"), HttpMethod.GET);
|
||||
request.execute();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void changeURI() throws Exception {
|
||||
final URI changedUri = new URI("http://example.com/2");
|
||||
final URI changedUri = new URI("https://example.com/2");
|
||||
|
||||
ClientHttpRequestInterceptor interceptor = new ClientHttpRequestInterceptor() {
|
||||
@Override
|
||||
@@ -155,7 +155,7 @@ public class InterceptingClientHttpRequestFactoryTests {
|
||||
requestFactory =
|
||||
new InterceptingClientHttpRequestFactory(requestFactoryMock, Collections.singletonList(interceptor));
|
||||
|
||||
ClientHttpRequest request = requestFactory.createRequest(new URI("http://example.com"), HttpMethod.GET);
|
||||
ClientHttpRequest request = requestFactory.createRequest(new URI("https://example.com"), HttpMethod.GET);
|
||||
request.execute();
|
||||
}
|
||||
|
||||
@@ -188,7 +188,7 @@ public class InterceptingClientHttpRequestFactoryTests {
|
||||
requestFactory =
|
||||
new InterceptingClientHttpRequestFactory(requestFactoryMock, Collections.singletonList(interceptor));
|
||||
|
||||
ClientHttpRequest request = requestFactory.createRequest(new URI("http://example.com"), HttpMethod.GET);
|
||||
ClientHttpRequest request = requestFactory.createRequest(new URI("https://example.com"), HttpMethod.GET);
|
||||
request.execute();
|
||||
}
|
||||
|
||||
@@ -207,7 +207,7 @@ public class InterceptingClientHttpRequestFactoryTests {
|
||||
requestFactory =
|
||||
new InterceptingClientHttpRequestFactory(requestFactoryMock, Collections.singletonList(interceptor));
|
||||
|
||||
ClientHttpRequest request = requestFactory.createRequest(new URI("http://example.com"), HttpMethod.GET);
|
||||
ClientHttpRequest request = requestFactory.createRequest(new URI("https://example.com"), HttpMethod.GET);
|
||||
request.execute();
|
||||
assertTrue(Arrays.equals(changedBody, requestMock.body.toByteArray()));
|
||||
}
|
||||
|
||||
@@ -66,7 +66,7 @@ public class BasicAuthorizationInterceptorTests {
|
||||
@Test
|
||||
public void interceptShouldAddHeader() throws Exception {
|
||||
SimpleClientHttpRequestFactory requestFactory = new SimpleClientHttpRequestFactory();
|
||||
ClientHttpRequest request = requestFactory.createRequest(new URI("http://example.com"), HttpMethod.GET);
|
||||
ClientHttpRequest request = requestFactory.createRequest(new URI("https://example.com"), HttpMethod.GET);
|
||||
ClientHttpRequestExecution execution = mock(ClientHttpRequestExecution.class);
|
||||
byte[] body = new byte[] {};
|
||||
new BasicAuthorizationInterceptor("spring", "boot").intercept(request, body,
|
||||
|
||||
@@ -86,7 +86,7 @@ public class RssChannelHttpMessageConverterTests {
|
||||
public void write() throws IOException, SAXException {
|
||||
Channel channel = new Channel("rss_2.0");
|
||||
channel.setTitle("title");
|
||||
channel.setLink("http://example.com");
|
||||
channel.setLink("https://example.com");
|
||||
channel.setDescription("description");
|
||||
|
||||
Item item1 = new Item();
|
||||
@@ -106,7 +106,7 @@ public class RssChannelHttpMessageConverterTests {
|
||||
assertEquals("Invalid content-type", new MediaType("application", "rss+xml", StandardCharsets.UTF_8),
|
||||
outputMessage.getHeaders().getContentType());
|
||||
String expected = "<rss version=\"2.0\">" +
|
||||
"<channel><title>title</title><link>http://example.com</link><description>description</description>" +
|
||||
"<channel><title>title</title><link>https://example.com</link><description>description</description>" +
|
||||
"<item><title>title1</title></item>" +
|
||||
"<item><title>title2</title></item>" +
|
||||
"</channel></rss>";
|
||||
@@ -117,7 +117,7 @@ public class RssChannelHttpMessageConverterTests {
|
||||
public void writeOtherCharset() throws IOException, SAXException {
|
||||
Channel channel = new Channel("rss_2.0");
|
||||
channel.setTitle("title");
|
||||
channel.setLink("http://example.com");
|
||||
channel.setLink("https://example.com");
|
||||
channel.setDescription("description");
|
||||
|
||||
String encoding = "ISO-8859-1";
|
||||
|
||||
@@ -125,7 +125,7 @@ public class Jaxb2RootElementHttpMessageConverterTests {
|
||||
@Test
|
||||
public void readXmlRootElementExternalEntityDisabled() throws Exception {
|
||||
Resource external = new ClassPathResource("external.txt", getClass());
|
||||
String content = "<!DOCTYPE root SYSTEM \"http://192.168.28.42/1.jsp\" [" +
|
||||
String content = "<!DOCTYPE root SYSTEM \"https://192.168.28.42/1.jsp\" [" +
|
||||
" <!ELEMENT external ANY >\n" +
|
||||
" <!ENTITY ext SYSTEM \"" + external.getURI() + "\" >]>" +
|
||||
" <rootElement><external>&ext;</external></rootElement>";
|
||||
|
||||
@@ -150,7 +150,7 @@ public class MappingJackson2XmlHttpMessageConverterTests {
|
||||
|
||||
@Test
|
||||
public void readWithExternalReference() throws IOException {
|
||||
String body = "<!DOCTYPE MyBean SYSTEM \"http://192.168.28.42/1.jsp\" [" +
|
||||
String body = "<!DOCTYPE MyBean SYSTEM \"https://192.168.28.42/1.jsp\" [" +
|
||||
" <!ELEMENT root ANY >\n" +
|
||||
" <!ENTITY ext SYSTEM \"" +
|
||||
new ClassPathResource("external.txt", getClass()).getURI() +
|
||||
|
||||
@@ -72,7 +72,7 @@ public class SourceHttpMessageConverterTests {
|
||||
converter = new SourceHttpMessageConverter<>();
|
||||
Resource external = new ClassPathResource("external.txt", getClass());
|
||||
|
||||
bodyExternal = "<!DOCTYPE root SYSTEM \"http://192.168.28.42/1.jsp\" [" +
|
||||
bodyExternal = "<!DOCTYPE root SYSTEM \"https://192.168.28.42/1.jsp\" [" +
|
||||
" <!ELEMENT root ANY >\n" +
|
||||
" <!ENTITY ext SYSTEM \"" + external.getURI() + "\" >]><root>&ext;</root>";
|
||||
}
|
||||
|
||||
@@ -59,7 +59,7 @@ public class ServletServerHttpRequestTests {
|
||||
|
||||
@Test
|
||||
public void getUriForSimplePath() throws URISyntaxException {
|
||||
URI uri = new URI("http://example.com/path");
|
||||
URI uri = new URI("https://example.com/path");
|
||||
mockRequest.setServerName(uri.getHost());
|
||||
mockRequest.setServerPort(uri.getPort());
|
||||
mockRequest.setRequestURI(uri.getPath());
|
||||
@@ -69,7 +69,7 @@ public class ServletServerHttpRequestTests {
|
||||
|
||||
@Test
|
||||
public void getUriWithQueryString() throws URISyntaxException {
|
||||
URI uri = new URI("http://example.com/path?query");
|
||||
URI uri = new URI("https://example.com/path?query");
|
||||
mockRequest.setServerName(uri.getHost());
|
||||
mockRequest.setServerPort(uri.getPort());
|
||||
mockRequest.setRequestURI(uri.getPath());
|
||||
@@ -82,7 +82,7 @@ public class ServletServerHttpRequestTests {
|
||||
mockRequest.setServerName("example.com");
|
||||
mockRequest.setRequestURI("/path");
|
||||
mockRequest.setQueryString("query=foo");
|
||||
assertEquals(new URI("http://example.com/path?query=foo"), request.getURI());
|
||||
assertEquals(new URI("https://example.com/path?query=foo"), request.getURI());
|
||||
}
|
||||
|
||||
@Test // SPR-16414
|
||||
@@ -90,7 +90,7 @@ public class ServletServerHttpRequestTests {
|
||||
mockRequest.setServerName("example.com");
|
||||
mockRequest.setRequestURI("/path");
|
||||
mockRequest.setQueryString("query=foo%%x");
|
||||
assertEquals(new URI("http://example.com/path"), request.getURI());
|
||||
assertEquals(new URI("https://example.com/path"), request.getURI());
|
||||
}
|
||||
|
||||
@Test // SPR-13876
|
||||
|
||||
@@ -96,16 +96,16 @@ public class ServerHttpRequestTests {
|
||||
request = createHttpRequest("/").mutate().method(HttpMethod.DELETE).build();
|
||||
assertEquals(HttpMethod.DELETE, request.getMethod());
|
||||
|
||||
String baseUri = "http://aaa.org:8080/a";
|
||||
String baseUri = "https://www.aaa.org/articles/";
|
||||
|
||||
request = createHttpRequest(baseUri).mutate().uri(URI.create("http://bbb.org:9090/b")).build();
|
||||
assertEquals("http://bbb.org:9090/b", request.getURI().toString());
|
||||
request = createHttpRequest(baseUri).mutate().uri(URI.create("https://bbb.org:9090/b")).build();
|
||||
assertEquals("https://bbb.org:9090/b", request.getURI().toString());
|
||||
|
||||
request = createHttpRequest(baseUri).mutate().path("/b/c/d").build();
|
||||
assertEquals("http://aaa.org:8080/b/c/d", request.getURI().toString());
|
||||
assertEquals("https://www.aaa.org/b/c/d", request.getURI().toString());
|
||||
|
||||
request = createHttpRequest(baseUri).mutate().path("/app/b/c/d").contextPath("/app").build();
|
||||
assertEquals("http://aaa.org:8080/app/b/c/d", request.getURI().toString());
|
||||
assertEquals("https://www.aaa.org/app/b/c/d", request.getURI().toString());
|
||||
assertEquals("/app", request.getPath().contextPath().value());
|
||||
}
|
||||
|
||||
|
||||
@@ -106,10 +106,10 @@ public class RestTemplateTests {
|
||||
|
||||
@Test
|
||||
public void varArgsTemplateVariables() throws Exception {
|
||||
mockSentRequest(GET, "http://example.com/hotels/42/bookings/21");
|
||||
mockSentRequest(GET, "https://example.com/hotels/42/bookings/21");
|
||||
mockResponseStatus(HttpStatus.OK);
|
||||
|
||||
template.execute("http://example.com/hotels/{hotel}/bookings/{booking}", GET,
|
||||
template.execute("https://example.com/hotels/{hotel}/bookings/{booking}", GET,
|
||||
null, null, "42", "21");
|
||||
|
||||
verify(response).close();
|
||||
@@ -117,41 +117,41 @@ public class RestTemplateTests {
|
||||
|
||||
@Test
|
||||
public void varArgsNullTemplateVariable() throws Exception {
|
||||
mockSentRequest(GET, "http://example.com/-foo");
|
||||
mockSentRequest(GET, "https://example.com/-foo");
|
||||
mockResponseStatus(HttpStatus.OK);
|
||||
|
||||
template.execute("http://example.com/{first}-{last}", GET, null, null, null, "foo");
|
||||
template.execute("https://example.com/{first}-{last}", GET, null, null, null, "foo");
|
||||
|
||||
verify(response).close();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void mapTemplateVariables() throws Exception {
|
||||
mockSentRequest(GET, "http://example.com/hotels/42/bookings/42");
|
||||
mockSentRequest(GET, "https://example.com/hotels/42/bookings/42");
|
||||
mockResponseStatus(HttpStatus.OK);
|
||||
|
||||
Map<String, String> vars = Collections.singletonMap("hotel", "42");
|
||||
template.execute("http://example.com/hotels/{hotel}/bookings/{hotel}", GET, null, null, vars);
|
||||
template.execute("https://example.com/hotels/{hotel}/bookings/{hotel}", GET, null, null, vars);
|
||||
|
||||
verify(response).close();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void mapNullTemplateVariable() throws Exception {
|
||||
mockSentRequest(GET, "http://example.com/-foo");
|
||||
mockSentRequest(GET, "https://example.com/-foo");
|
||||
mockResponseStatus(HttpStatus.OK);
|
||||
|
||||
Map<String, String> vars = new HashMap<>(2);
|
||||
vars.put("first", null);
|
||||
vars.put("last", "foo");
|
||||
template.execute("http://example.com/{first}-{last}", GET, null, null, vars);
|
||||
template.execute("https://example.com/{first}-{last}", GET, null, null, vars);
|
||||
|
||||
verify(response).close();
|
||||
}
|
||||
|
||||
@Test // SPR-15201
|
||||
public void uriTemplateWithTrailingSlash() throws Exception {
|
||||
String url = "http://example.com/spring/";
|
||||
String url = "https://example.com/spring/";
|
||||
mockSentRequest(GET, url);
|
||||
mockResponseStatus(HttpStatus.OK);
|
||||
|
||||
@@ -162,7 +162,7 @@ public class RestTemplateTests {
|
||||
|
||||
@Test
|
||||
public void errorHandling() throws Exception {
|
||||
String url = "http://example.com";
|
||||
String url = "https://example.com";
|
||||
mockSentRequest(GET, url);
|
||||
mockResponseStatus(HttpStatus.INTERNAL_SERVER_ERROR);
|
||||
willThrow(new HttpServerErrorException(HttpStatus.INTERNAL_SERVER_ERROR))
|
||||
@@ -184,11 +184,11 @@ public class RestTemplateTests {
|
||||
String expected = "Hello World";
|
||||
mockTextPlainHttpMessageConverter();
|
||||
HttpHeaders requestHeaders = new HttpHeaders();
|
||||
mockSentRequest(GET, "http://example.com", requestHeaders);
|
||||
mockSentRequest(GET, "https://example.com", requestHeaders);
|
||||
mockResponseStatus(HttpStatus.OK);
|
||||
mockTextResponseBody("Hello World");
|
||||
|
||||
String result = template.getForObject("http://example.com", String.class);
|
||||
String result = template.getForObject("https://example.com", String.class);
|
||||
assertEquals("Invalid GET result", expected, result);
|
||||
assertEquals("Invalid Accept header", MediaType.TEXT_PLAIN_VALUE,
|
||||
requestHeaders.getFirst("Accept"));
|
||||
@@ -198,7 +198,7 @@ public class RestTemplateTests {
|
||||
|
||||
@Test
|
||||
public void getUnsupportedMediaType() throws Exception {
|
||||
mockSentRequest(GET, "http://example.com/resource");
|
||||
mockSentRequest(GET, "https://example.com/resource");
|
||||
mockResponseStatus(HttpStatus.OK);
|
||||
|
||||
given(converter.canRead(String.class, null)).willReturn(true);
|
||||
@@ -210,7 +210,7 @@ public class RestTemplateTests {
|
||||
given(converter.canRead(String.class, barBaz)).willReturn(false);
|
||||
|
||||
try {
|
||||
template.getForObject("http://example.com/{p}", String.class, "resource");
|
||||
template.getForObject("https://example.com/{p}", String.class, "resource");
|
||||
fail("UnsupportedMediaTypeException expected");
|
||||
}
|
||||
catch (RestClientException ex) {
|
||||
@@ -232,12 +232,12 @@ public class RestTemplateTests {
|
||||
.willReturn(Collections.singletonList(MediaType.TEXT_PLAIN));
|
||||
|
||||
HttpHeaders requestHeaders = new HttpHeaders();
|
||||
mockSentRequest(GET, "http://example.com/", requestHeaders);
|
||||
mockSentRequest(GET, "https://example.com/", requestHeaders);
|
||||
mockResponseStatus(HttpStatus.OK);
|
||||
mockTextResponseBody("Hello World");
|
||||
|
||||
template.setMessageConverters(Arrays.asList(firstConverter, secondConverter));
|
||||
template.getForObject("http://example.com/", String.class);
|
||||
template.getForObject("https://example.com/", String.class);
|
||||
|
||||
assertEquals("Sent duplicate Accept header values", 1,
|
||||
requestHeaders.getAccept().size());
|
||||
@@ -246,13 +246,13 @@ public class RestTemplateTests {
|
||||
@Test
|
||||
public void getForEntity() throws Exception {
|
||||
HttpHeaders requestHeaders = new HttpHeaders();
|
||||
mockSentRequest(GET, "http://example.com", requestHeaders);
|
||||
mockSentRequest(GET, "https://example.com", requestHeaders);
|
||||
mockTextPlainHttpMessageConverter();
|
||||
mockResponseStatus(HttpStatus.OK);
|
||||
String expected = "Hello World";
|
||||
mockTextResponseBody(expected);
|
||||
|
||||
ResponseEntity<String> result = template.getForEntity("http://example.com", String.class);
|
||||
ResponseEntity<String> result = template.getForEntity("https://example.com", String.class);
|
||||
assertEquals("Invalid GET result", expected, result.getBody());
|
||||
assertEquals("Invalid Accept header", MediaType.TEXT_PLAIN_VALUE, requestHeaders.getFirst("Accept"));
|
||||
assertEquals("Invalid Content-Type header", MediaType.TEXT_PLAIN, result.getHeaders().getContentType());
|
||||
@@ -265,7 +265,7 @@ public class RestTemplateTests {
|
||||
public void getForObjectWithCustomUriTemplateHandler() throws Exception {
|
||||
DefaultUriBuilderFactory uriTemplateHandler = new DefaultUriBuilderFactory();
|
||||
template.setUriTemplateHandler(uriTemplateHandler);
|
||||
mockSentRequest(GET, "http://example.com/hotels/1/pic/pics%2Flogo.png/size/150x150");
|
||||
mockSentRequest(GET, "https://example.com/hotels/1/pic/pics%2Flogo.png/size/150x150");
|
||||
mockResponseStatus(HttpStatus.OK);
|
||||
given(response.getHeaders()).willReturn(new HttpHeaders());
|
||||
given(response.getBody()).willReturn(StreamUtils.emptyInput());
|
||||
@@ -275,7 +275,7 @@ public class RestTemplateTests {
|
||||
uriVariables.put("publicpath", "pics/logo.png");
|
||||
uriVariables.put("scale", "150x150");
|
||||
|
||||
String url = "http://example.com/hotels/{hotel}/pic/{publicpath}/size/{scale}";
|
||||
String url = "https://example.com/hotels/{hotel}/pic/{publicpath}/size/{scale}";
|
||||
template.getForObject(url, String.class, uriVariables);
|
||||
|
||||
verify(response).close();
|
||||
@@ -283,12 +283,12 @@ public class RestTemplateTests {
|
||||
|
||||
@Test
|
||||
public void headForHeaders() throws Exception {
|
||||
mockSentRequest(HEAD, "http://example.com");
|
||||
mockSentRequest(HEAD, "https://example.com");
|
||||
mockResponseStatus(HttpStatus.OK);
|
||||
HttpHeaders responseHeaders = new HttpHeaders();
|
||||
given(response.getHeaders()).willReturn(responseHeaders);
|
||||
|
||||
HttpHeaders result = template.headForHeaders("http://example.com");
|
||||
HttpHeaders result = template.headForHeaders("https://example.com");
|
||||
|
||||
assertSame("Invalid headers returned", responseHeaders, result);
|
||||
|
||||
@@ -297,16 +297,16 @@ public class RestTemplateTests {
|
||||
|
||||
@Test
|
||||
public void postForLocation() throws Exception {
|
||||
mockSentRequest(POST, "http://example.com");
|
||||
mockSentRequest(POST, "https://example.com");
|
||||
mockTextPlainHttpMessageConverter();
|
||||
mockResponseStatus(HttpStatus.OK);
|
||||
String helloWorld = "Hello World";
|
||||
HttpHeaders responseHeaders = new HttpHeaders();
|
||||
URI expected = new URI("http://example.com/hotels");
|
||||
URI expected = new URI("https://example.com/hotels");
|
||||
responseHeaders.setLocation(expected);
|
||||
given(response.getHeaders()).willReturn(responseHeaders);
|
||||
|
||||
URI result = template.postForLocation("http://example.com", helloWorld);
|
||||
URI result = template.postForLocation("https://example.com", helloWorld);
|
||||
assertEquals("Invalid POST result", expected, result);
|
||||
|
||||
verify(response).close();
|
||||
@@ -314,13 +314,13 @@ public class RestTemplateTests {
|
||||
|
||||
@Test
|
||||
public void postForLocationEntityContentType() throws Exception {
|
||||
mockSentRequest(POST, "http://example.com");
|
||||
mockSentRequest(POST, "https://example.com");
|
||||
mockTextPlainHttpMessageConverter();
|
||||
mockResponseStatus(HttpStatus.OK);
|
||||
|
||||
String helloWorld = "Hello World";
|
||||
HttpHeaders responseHeaders = new HttpHeaders();
|
||||
URI expected = new URI("http://example.com/hotels");
|
||||
URI expected = new URI("https://example.com/hotels");
|
||||
responseHeaders.setLocation(expected);
|
||||
given(response.getHeaders()).willReturn(responseHeaders);
|
||||
|
||||
@@ -328,7 +328,7 @@ public class RestTemplateTests {
|
||||
entityHeaders.setContentType(MediaType.TEXT_PLAIN);
|
||||
HttpEntity<String> entity = new HttpEntity<>(helloWorld, entityHeaders);
|
||||
|
||||
URI result = template.postForLocation("http://example.com", entity);
|
||||
URI result = template.postForLocation("https://example.com", entity);
|
||||
assertEquals("Invalid POST result", expected, result);
|
||||
|
||||
verify(response).close();
|
||||
@@ -337,11 +337,11 @@ public class RestTemplateTests {
|
||||
@Test
|
||||
public void postForLocationEntityCustomHeader() throws Exception {
|
||||
HttpHeaders requestHeaders = new HttpHeaders();
|
||||
mockSentRequest(POST, "http://example.com", requestHeaders);
|
||||
mockSentRequest(POST, "https://example.com", requestHeaders);
|
||||
mockTextPlainHttpMessageConverter();
|
||||
mockResponseStatus(HttpStatus.OK);
|
||||
HttpHeaders responseHeaders = new HttpHeaders();
|
||||
URI expected = new URI("http://example.com/hotels");
|
||||
URI expected = new URI("https://example.com/hotels");
|
||||
responseHeaders.setLocation(expected);
|
||||
given(response.getHeaders()).willReturn(responseHeaders);
|
||||
|
||||
@@ -349,7 +349,7 @@ public class RestTemplateTests {
|
||||
entityHeaders.set("MyHeader", "MyValue");
|
||||
HttpEntity<String> entity = new HttpEntity<>("Hello World", entityHeaders);
|
||||
|
||||
URI result = template.postForLocation("http://example.com", entity);
|
||||
URI result = template.postForLocation("https://example.com", entity);
|
||||
assertEquals("Invalid POST result", expected, result);
|
||||
assertEquals("No custom header set", "MyValue", requestHeaders.getFirst("MyHeader"));
|
||||
|
||||
@@ -358,11 +358,11 @@ public class RestTemplateTests {
|
||||
|
||||
@Test
|
||||
public void postForLocationNoLocation() throws Exception {
|
||||
mockSentRequest(POST, "http://example.com");
|
||||
mockSentRequest(POST, "https://example.com");
|
||||
mockTextPlainHttpMessageConverter();
|
||||
mockResponseStatus(HttpStatus.OK);
|
||||
|
||||
URI result = template.postForLocation("http://example.com", "Hello World");
|
||||
URI result = template.postForLocation("https://example.com", "Hello World");
|
||||
assertNull("Invalid POST result", result);
|
||||
|
||||
verify(response).close();
|
||||
@@ -371,10 +371,10 @@ public class RestTemplateTests {
|
||||
@Test
|
||||
public void postForLocationNull() throws Exception {
|
||||
HttpHeaders requestHeaders = new HttpHeaders();
|
||||
mockSentRequest(POST, "http://example.com", requestHeaders);
|
||||
mockSentRequest(POST, "https://example.com", requestHeaders);
|
||||
mockResponseStatus(HttpStatus.OK);
|
||||
|
||||
template.postForLocation("http://example.com", null);
|
||||
template.postForLocation("https://example.com", null);
|
||||
assertEquals("Invalid content length", 0, requestHeaders.getContentLength());
|
||||
|
||||
verify(response).close();
|
||||
@@ -384,12 +384,12 @@ public class RestTemplateTests {
|
||||
public void postForObject() throws Exception {
|
||||
mockTextPlainHttpMessageConverter();
|
||||
HttpHeaders requestHeaders = new HttpHeaders();
|
||||
mockSentRequest(POST, "http://example.com", requestHeaders);
|
||||
mockSentRequest(POST, "https://example.com", requestHeaders);
|
||||
mockResponseStatus(HttpStatus.OK);
|
||||
String expected = "42";
|
||||
mockResponseBody(expected, MediaType.TEXT_PLAIN);
|
||||
|
||||
String result = template.postForObject("http://example.com", "Hello World", String.class);
|
||||
String result = template.postForObject("https://example.com", "Hello World", String.class);
|
||||
assertEquals("Invalid POST result", expected, result);
|
||||
assertEquals("Invalid Accept header", MediaType.TEXT_PLAIN_VALUE, requestHeaders.getFirst("Accept"));
|
||||
|
||||
@@ -400,12 +400,12 @@ public class RestTemplateTests {
|
||||
public void postForEntity() throws Exception {
|
||||
mockTextPlainHttpMessageConverter();
|
||||
HttpHeaders requestHeaders = new HttpHeaders();
|
||||
mockSentRequest(POST, "http://example.com", requestHeaders);
|
||||
mockSentRequest(POST, "https://example.com", requestHeaders);
|
||||
mockResponseStatus(HttpStatus.OK);
|
||||
String expected = "42";
|
||||
mockResponseBody(expected, MediaType.TEXT_PLAIN);
|
||||
|
||||
ResponseEntity<String> result = template.postForEntity("http://example.com", "Hello World", String.class);
|
||||
ResponseEntity<String> result = template.postForEntity("https://example.com", "Hello World", String.class);
|
||||
assertEquals("Invalid POST result", expected, result.getBody());
|
||||
assertEquals("Invalid Content-Type", MediaType.TEXT_PLAIN, result.getHeaders().getContentType());
|
||||
assertEquals("Invalid Accept header", MediaType.TEXT_PLAIN_VALUE, requestHeaders.getFirst("Accept"));
|
||||
@@ -418,7 +418,7 @@ public class RestTemplateTests {
|
||||
public void postForObjectNull() throws Exception {
|
||||
mockTextPlainHttpMessageConverter();
|
||||
HttpHeaders requestHeaders = new HttpHeaders();
|
||||
mockSentRequest(POST, "http://example.com", requestHeaders);
|
||||
mockSentRequest(POST, "https://example.com", requestHeaders);
|
||||
mockResponseStatus(HttpStatus.OK);
|
||||
HttpHeaders responseHeaders = new HttpHeaders();
|
||||
responseHeaders.setContentType(MediaType.TEXT_PLAIN);
|
||||
@@ -427,7 +427,7 @@ public class RestTemplateTests {
|
||||
given(response.getBody()).willReturn(StreamUtils.emptyInput());
|
||||
given(converter.read(String.class, response)).willReturn(null);
|
||||
|
||||
String result = template.postForObject("http://example.com", null, String.class);
|
||||
String result = template.postForObject("https://example.com", null, String.class);
|
||||
assertNull("Invalid POST result", result);
|
||||
assertEquals("Invalid content length", 0, requestHeaders.getContentLength());
|
||||
|
||||
@@ -438,7 +438,7 @@ public class RestTemplateTests {
|
||||
public void postForEntityNull() throws Exception {
|
||||
mockTextPlainHttpMessageConverter();
|
||||
HttpHeaders requestHeaders = new HttpHeaders();
|
||||
mockSentRequest(POST, "http://example.com", requestHeaders);
|
||||
mockSentRequest(POST, "https://example.com", requestHeaders);
|
||||
mockResponseStatus(HttpStatus.OK);
|
||||
HttpHeaders responseHeaders = new HttpHeaders();
|
||||
responseHeaders.setContentType(MediaType.TEXT_PLAIN);
|
||||
@@ -447,7 +447,7 @@ public class RestTemplateTests {
|
||||
given(response.getBody()).willReturn(StreamUtils.emptyInput());
|
||||
given(converter.read(String.class, response)).willReturn(null);
|
||||
|
||||
ResponseEntity<String> result = template.postForEntity("http://example.com", null, String.class);
|
||||
ResponseEntity<String> result = template.postForEntity("https://example.com", null, String.class);
|
||||
assertFalse("Invalid POST result", result.hasBody());
|
||||
assertEquals("Invalid Content-Type", MediaType.TEXT_PLAIN, result.getHeaders().getContentType());
|
||||
assertEquals("Invalid content length", 0, requestHeaders.getContentLength());
|
||||
@@ -459,10 +459,10 @@ public class RestTemplateTests {
|
||||
@Test
|
||||
public void put() throws Exception {
|
||||
mockTextPlainHttpMessageConverter();
|
||||
mockSentRequest(PUT, "http://example.com");
|
||||
mockSentRequest(PUT, "https://example.com");
|
||||
mockResponseStatus(HttpStatus.OK);
|
||||
|
||||
template.put("http://example.com", "Hello World");
|
||||
template.put("https://example.com", "Hello World");
|
||||
|
||||
verify(response).close();
|
||||
}
|
||||
@@ -470,10 +470,10 @@ public class RestTemplateTests {
|
||||
@Test
|
||||
public void putNull() throws Exception {
|
||||
HttpHeaders requestHeaders = new HttpHeaders();
|
||||
mockSentRequest(PUT, "http://example.com", requestHeaders);
|
||||
mockSentRequest(PUT, "https://example.com", requestHeaders);
|
||||
mockResponseStatus(HttpStatus.OK);
|
||||
|
||||
template.put("http://example.com", null);
|
||||
template.put("https://example.com", null);
|
||||
assertEquals("Invalid content length", 0, requestHeaders.getContentLength());
|
||||
|
||||
verify(response).close();
|
||||
@@ -483,12 +483,12 @@ public class RestTemplateTests {
|
||||
public void patchForObject() throws Exception {
|
||||
mockTextPlainHttpMessageConverter();
|
||||
HttpHeaders requestHeaders = new HttpHeaders();
|
||||
mockSentRequest(PATCH, "http://example.com", requestHeaders);
|
||||
mockSentRequest(PATCH, "https://example.com", requestHeaders);
|
||||
mockResponseStatus(HttpStatus.OK);
|
||||
String expected = "42";
|
||||
mockResponseBody("42", MediaType.TEXT_PLAIN);
|
||||
|
||||
String result = template.patchForObject("http://example.com", "Hello World", String.class);
|
||||
String result = template.patchForObject("https://example.com", "Hello World", String.class);
|
||||
assertEquals("Invalid POST result", expected, result);
|
||||
assertEquals("Invalid Accept header", MediaType.TEXT_PLAIN_VALUE, requestHeaders.getFirst("Accept"));
|
||||
|
||||
@@ -499,7 +499,7 @@ public class RestTemplateTests {
|
||||
public void patchForObjectNull() throws Exception {
|
||||
mockTextPlainHttpMessageConverter();
|
||||
HttpHeaders requestHeaders = new HttpHeaders();
|
||||
mockSentRequest(PATCH, "http://example.com", requestHeaders);
|
||||
mockSentRequest(PATCH, "https://example.com", requestHeaders);
|
||||
mockResponseStatus(HttpStatus.OK);
|
||||
HttpHeaders responseHeaders = new HttpHeaders();
|
||||
responseHeaders.setContentType(MediaType.TEXT_PLAIN);
|
||||
@@ -507,7 +507,7 @@ public class RestTemplateTests {
|
||||
given(response.getHeaders()).willReturn(responseHeaders);
|
||||
given(response.getBody()).willReturn(StreamUtils.emptyInput());
|
||||
|
||||
String result = template.patchForObject("http://example.com", null, String.class);
|
||||
String result = template.patchForObject("https://example.com", null, String.class);
|
||||
assertNull("Invalid POST result", result);
|
||||
assertEquals("Invalid content length", 0, requestHeaders.getContentLength());
|
||||
|
||||
@@ -517,24 +517,24 @@ public class RestTemplateTests {
|
||||
|
||||
@Test
|
||||
public void delete() throws Exception {
|
||||
mockSentRequest(DELETE, "http://example.com");
|
||||
mockSentRequest(DELETE, "https://example.com");
|
||||
mockResponseStatus(HttpStatus.OK);
|
||||
|
||||
template.delete("http://example.com");
|
||||
template.delete("https://example.com");
|
||||
|
||||
verify(response).close();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void optionsForAllow() throws Exception {
|
||||
mockSentRequest(OPTIONS, "http://example.com");
|
||||
mockSentRequest(OPTIONS, "https://example.com");
|
||||
mockResponseStatus(HttpStatus.OK);
|
||||
HttpHeaders responseHeaders = new HttpHeaders();
|
||||
EnumSet<HttpMethod> expected = EnumSet.of(GET, POST);
|
||||
responseHeaders.setAllow(expected);
|
||||
given(response.getHeaders()).willReturn(responseHeaders);
|
||||
|
||||
Set<HttpMethod> result = template.optionsForAllow("http://example.com");
|
||||
Set<HttpMethod> result = template.optionsForAllow("https://example.com");
|
||||
assertEquals("Invalid OPTIONS result", expected, result);
|
||||
|
||||
verify(response).close();
|
||||
@@ -542,7 +542,7 @@ public class RestTemplateTests {
|
||||
|
||||
@Test // SPR-9325, SPR-13860
|
||||
public void ioException() throws Exception {
|
||||
String url = "http://example.com/resource?access_token=123";
|
||||
String url = "https://example.com/resource?access_token=123";
|
||||
mockSentRequest(GET, url);
|
||||
mockHttpMessageConverter(new MediaType("foo", "bar"), String.class);
|
||||
given(request.execute()).willThrow(new IOException("Socket failure"));
|
||||
@@ -552,7 +552,7 @@ public class RestTemplateTests {
|
||||
fail("RestClientException expected");
|
||||
}
|
||||
catch (ResourceAccessException ex) {
|
||||
assertEquals("I/O error on GET request for \"http://example.com/resource\": " +
|
||||
assertEquals("I/O error on GET request for \"https://example.com/resource\": " +
|
||||
"Socket failure; nested exception is java.io.IOException: Socket failure",
|
||||
ex.getMessage());
|
||||
}
|
||||
@@ -561,7 +561,7 @@ public class RestTemplateTests {
|
||||
@Test // SPR-15900
|
||||
public void ioExceptionWithEmptyQueryString() throws Exception {
|
||||
|
||||
// http://example.com/resource?
|
||||
// https://example.com/resource?
|
||||
URI uri = new URI("http", "example.com", "/resource", "", null);
|
||||
|
||||
given(converter.canRead(String.class, null)).willReturn(true);
|
||||
@@ -575,7 +575,7 @@ public class RestTemplateTests {
|
||||
fail("RestClientException expected");
|
||||
}
|
||||
catch (ResourceAccessException ex) {
|
||||
assertEquals("I/O error on GET request for \"http://example.com/resource\": " +
|
||||
assertEquals("I/O error on GET request for \"https://example.com/resource\": " +
|
||||
"Socket failure; nested exception is java.io.IOException: Socket failure",
|
||||
ex.getMessage());
|
||||
}
|
||||
@@ -585,7 +585,7 @@ public class RestTemplateTests {
|
||||
public void exchange() throws Exception {
|
||||
mockTextPlainHttpMessageConverter();
|
||||
HttpHeaders requestHeaders = new HttpHeaders();
|
||||
mockSentRequest(POST, "http://example.com", requestHeaders);
|
||||
mockSentRequest(POST, "https://example.com", requestHeaders);
|
||||
mockResponseStatus(HttpStatus.OK);
|
||||
String expected = "42";
|
||||
mockResponseBody(expected, MediaType.TEXT_PLAIN);
|
||||
@@ -593,7 +593,7 @@ public class RestTemplateTests {
|
||||
HttpHeaders entityHeaders = new HttpHeaders();
|
||||
entityHeaders.set("MyHeader", "MyValue");
|
||||
HttpEntity<String> entity = new HttpEntity<>("Hello World", entityHeaders);
|
||||
ResponseEntity<String> result = template.exchange("http://example.com", POST, entity, String.class);
|
||||
ResponseEntity<String> result = template.exchange("https://example.com", POST, entity, String.class);
|
||||
assertEquals("Invalid POST result", expected, result.getBody());
|
||||
assertEquals("Invalid Content-Type", MediaType.TEXT_PLAIN, result.getHeaders().getContentType());
|
||||
assertEquals("Invalid Accept header", MediaType.TEXT_PLAIN_VALUE, requestHeaders.getFirst("Accept"));
|
||||
@@ -614,7 +614,7 @@ public class RestTemplateTests {
|
||||
given(converter.canWrite(String.class, String.class, null)).willReturn(true);
|
||||
|
||||
HttpHeaders requestHeaders = new HttpHeaders();
|
||||
mockSentRequest(POST, "http://example.com", requestHeaders);
|
||||
mockSentRequest(POST, "https://example.com", requestHeaders);
|
||||
List<Integer> expected = Collections.singletonList(42);
|
||||
HttpHeaders responseHeaders = new HttpHeaders();
|
||||
responseHeaders.setContentType(MediaType.TEXT_PLAIN);
|
||||
@@ -628,7 +628,7 @@ public class RestTemplateTests {
|
||||
HttpHeaders entityHeaders = new HttpHeaders();
|
||||
entityHeaders.set("MyHeader", "MyValue");
|
||||
HttpEntity<String> requestEntity = new HttpEntity<>("Hello World", entityHeaders);
|
||||
ResponseEntity<List<Integer>> result = template.exchange("http://example.com", POST, requestEntity, intList);
|
||||
ResponseEntity<List<Integer>> result = template.exchange("https://example.com", POST, requestEntity, intList);
|
||||
assertEquals("Invalid POST result", expected, result.getBody());
|
||||
assertEquals("Invalid Content-Type", MediaType.TEXT_PLAIN, result.getHeaders().getContentType());
|
||||
assertEquals("Invalid Accept header", MediaType.TEXT_PLAIN_VALUE, requestHeaders.getFirst("Accept"));
|
||||
@@ -647,13 +647,13 @@ public class RestTemplateTests {
|
||||
template.setInterceptors(Collections.singletonList(interceptor));
|
||||
|
||||
HttpHeaders requestHeaders = new HttpHeaders();
|
||||
mockSentRequest(POST, "http://example.com", requestHeaders);
|
||||
mockSentRequest(POST, "https://example.com", requestHeaders);
|
||||
mockResponseStatus(HttpStatus.OK);
|
||||
|
||||
HttpHeaders entityHeaders = new HttpHeaders();
|
||||
entityHeaders.add("MyHeader", "MyEntityValue");
|
||||
HttpEntity<Void> entity = new HttpEntity<>(null, entityHeaders);
|
||||
template.exchange("http://example.com", POST, entity, Void.class);
|
||||
template.exchange("https://example.com", POST, entity, Void.class);
|
||||
assertThat(requestHeaders.get("MyHeader"), contains("MyEntityValue", "MyInterceptorValue"));
|
||||
|
||||
verify(response).close();
|
||||
@@ -670,14 +670,14 @@ public class RestTemplateTests {
|
||||
MediaType contentType = MediaType.TEXT_PLAIN;
|
||||
given(converter.canWrite(String.class, contentType)).willReturn(true);
|
||||
HttpHeaders requestHeaders = new HttpHeaders();
|
||||
mockSentRequest(POST, "http://example.com", requestHeaders);
|
||||
mockSentRequest(POST, "https://example.com", requestHeaders);
|
||||
mockResponseStatus(HttpStatus.OK);
|
||||
|
||||
HttpHeaders entityHeaders = new HttpHeaders();
|
||||
entityHeaders.setContentType(contentType);
|
||||
entityHeaders.add("MyHeader", "MyEntityValue");
|
||||
HttpEntity<String> entity = new HttpEntity<>("Hello World", entityHeaders);
|
||||
template.exchange("http://example.com", POST, entity, Void.class);
|
||||
template.exchange("https://example.com", POST, entity, Void.class);
|
||||
assertThat(requestHeaders.get("MyHeader"), contains("MyEntityValue", "MyInterceptorValue"));
|
||||
|
||||
verify(response).close();
|
||||
|
||||
@@ -67,7 +67,7 @@ public class ServletWebRequestHttpMethodsTests {
|
||||
@Before
|
||||
public void setup() {
|
||||
currentDate = new Date();
|
||||
servletRequest = new MockHttpServletRequest(method, "http://example.org");
|
||||
servletRequest = new MockHttpServletRequest(method, "https://example.org");
|
||||
servletResponse = new MockHttpServletResponse();
|
||||
request = new ServletWebRequest(servletRequest, servletResponse);
|
||||
}
|
||||
|
||||
@@ -112,17 +112,17 @@ public class CorsConfigurationTests {
|
||||
public void combineWithDefaultPermitValues() {
|
||||
CorsConfiguration config = new CorsConfiguration().applyPermitDefaultValues();
|
||||
CorsConfiguration other = new CorsConfiguration();
|
||||
other.addAllowedOrigin("http://domain.com");
|
||||
other.addAllowedOrigin("https://domain.com");
|
||||
other.addAllowedHeader("header1");
|
||||
other.addAllowedMethod(HttpMethod.PUT.name());
|
||||
|
||||
CorsConfiguration combinedConfig = config.combine(other);
|
||||
assertEquals(Arrays.asList("http://domain.com"), combinedConfig.getAllowedOrigins());
|
||||
assertEquals(Arrays.asList("https://domain.com"), combinedConfig.getAllowedOrigins());
|
||||
assertEquals(Arrays.asList("header1"), combinedConfig.getAllowedHeaders());
|
||||
assertEquals(Arrays.asList(HttpMethod.PUT.name()), combinedConfig.getAllowedMethods());
|
||||
|
||||
combinedConfig = other.combine(config);
|
||||
assertEquals(Arrays.asList("http://domain.com"), combinedConfig.getAllowedOrigins());
|
||||
assertEquals(Arrays.asList("https://domain.com"), combinedConfig.getAllowedOrigins());
|
||||
assertEquals(Arrays.asList("header1"), combinedConfig.getAllowedHeaders());
|
||||
assertEquals(Arrays.asList(HttpMethod.PUT.name()), combinedConfig.getAllowedMethods());
|
||||
|
||||
@@ -146,7 +146,7 @@ public class CorsConfigurationTests {
|
||||
config.addAllowedHeader("*");
|
||||
config.addAllowedMethod("*");
|
||||
CorsConfiguration other = new CorsConfiguration();
|
||||
other.addAllowedOrigin("http://domain.com");
|
||||
other.addAllowedOrigin("https://domain.com");
|
||||
other.addAllowedHeader("header1");
|
||||
other.addExposedHeader("header2");
|
||||
other.addAllowedMethod(HttpMethod.PUT.name());
|
||||
@@ -163,8 +163,8 @@ public class CorsConfigurationTests {
|
||||
@Test // SPR-14792
|
||||
public void combineWithDuplicatedElements() {
|
||||
CorsConfiguration config = new CorsConfiguration();
|
||||
config.addAllowedOrigin("http://domain1.com");
|
||||
config.addAllowedOrigin("http://domain2.com");
|
||||
config.addAllowedOrigin("https://domain1.com");
|
||||
config.addAllowedOrigin("https://domain2.com");
|
||||
config.addAllowedHeader("header1");
|
||||
config.addAllowedHeader("header2");
|
||||
config.addExposedHeader("header3");
|
||||
@@ -172,12 +172,12 @@ public class CorsConfigurationTests {
|
||||
config.addAllowedMethod(HttpMethod.GET.name());
|
||||
config.addAllowedMethod(HttpMethod.PUT.name());
|
||||
CorsConfiguration other = new CorsConfiguration();
|
||||
other.addAllowedOrigin("http://domain1.com");
|
||||
other.addAllowedOrigin("https://domain1.com");
|
||||
other.addAllowedHeader("header1");
|
||||
other.addExposedHeader("header3");
|
||||
other.addAllowedMethod(HttpMethod.GET.name());
|
||||
CorsConfiguration combinedConfig = config.combine(other);
|
||||
assertEquals(Arrays.asList("http://domain1.com", "http://domain2.com"), combinedConfig.getAllowedOrigins());
|
||||
assertEquals(Arrays.asList("https://domain1.com", "https://domain2.com"), combinedConfig.getAllowedOrigins());
|
||||
assertEquals(Arrays.asList("header1", "header2"), combinedConfig.getAllowedHeaders());
|
||||
assertEquals(Arrays.asList("header3", "header4"), combinedConfig.getExposedHeaders());
|
||||
assertEquals(Arrays.asList(HttpMethod.GET.name(), HttpMethod.PUT.name()), combinedConfig.getAllowedMethods());
|
||||
@@ -186,21 +186,21 @@ public class CorsConfigurationTests {
|
||||
@Test
|
||||
public void combine() {
|
||||
CorsConfiguration config = new CorsConfiguration();
|
||||
config.addAllowedOrigin("http://domain1.com");
|
||||
config.addAllowedOrigin("https://domain1.com");
|
||||
config.addAllowedHeader("header1");
|
||||
config.addExposedHeader("header3");
|
||||
config.addAllowedMethod(HttpMethod.GET.name());
|
||||
config.setMaxAge(123L);
|
||||
config.setAllowCredentials(true);
|
||||
CorsConfiguration other = new CorsConfiguration();
|
||||
other.addAllowedOrigin("http://domain2.com");
|
||||
other.addAllowedOrigin("https://domain2.com");
|
||||
other.addAllowedHeader("header2");
|
||||
other.addExposedHeader("header4");
|
||||
other.addAllowedMethod(HttpMethod.PUT.name());
|
||||
other.setMaxAge(456L);
|
||||
other.setAllowCredentials(false);
|
||||
config = config.combine(other);
|
||||
assertEquals(Arrays.asList("http://domain1.com", "http://domain2.com"), config.getAllowedOrigins());
|
||||
assertEquals(Arrays.asList("https://domain1.com", "https://domain2.com"), config.getAllowedOrigins());
|
||||
assertEquals(Arrays.asList("header1", "header2"), config.getAllowedHeaders());
|
||||
assertEquals(Arrays.asList("header3", "header4"), config.getExposedHeaders());
|
||||
assertEquals(Arrays.asList(HttpMethod.GET.name(), HttpMethod.PUT.name()), config.getAllowedMethods());
|
||||
@@ -212,26 +212,26 @@ public class CorsConfigurationTests {
|
||||
public void checkOriginAllowed() {
|
||||
CorsConfiguration config = new CorsConfiguration();
|
||||
config.setAllowedOrigins(Arrays.asList("*"));
|
||||
assertEquals("*", config.checkOrigin("http://domain.com"));
|
||||
assertEquals("*", config.checkOrigin("https://domain.com"));
|
||||
config.setAllowCredentials(true);
|
||||
assertEquals("http://domain.com", config.checkOrigin("http://domain.com"));
|
||||
config.setAllowedOrigins(Arrays.asList("http://domain.com"));
|
||||
assertEquals("http://domain.com", config.checkOrigin("http://domain.com"));
|
||||
assertEquals("https://domain.com", config.checkOrigin("https://domain.com"));
|
||||
config.setAllowedOrigins(Arrays.asList("https://domain.com"));
|
||||
assertEquals("https://domain.com", config.checkOrigin("https://domain.com"));
|
||||
config.setAllowCredentials(false);
|
||||
assertEquals("http://domain.com", config.checkOrigin("http://domain.com"));
|
||||
assertEquals("https://domain.com", config.checkOrigin("https://domain.com"));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void checkOriginNotAllowed() {
|
||||
CorsConfiguration config = new CorsConfiguration();
|
||||
assertNull(config.checkOrigin(null));
|
||||
assertNull(config.checkOrigin("http://domain.com"));
|
||||
assertNull(config.checkOrigin("https://domain.com"));
|
||||
config.addAllowedOrigin("*");
|
||||
assertNull(config.checkOrigin(null));
|
||||
config.setAllowedOrigins(Arrays.asList("http://domain1.com"));
|
||||
assertNull(config.checkOrigin("http://domain2.com"));
|
||||
config.setAllowedOrigins(Arrays.asList("https://domain1.com"));
|
||||
assertNull(config.checkOrigin("https://domain2.com"));
|
||||
config.setAllowedOrigins(new ArrayList<>());
|
||||
assertNull(config.checkOrigin("http://domain.com"));
|
||||
assertNull(config.checkOrigin("https://domain.com"));
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -282,10 +282,10 @@ public class CorsConfigurationTests {
|
||||
@Test // SPR-15772
|
||||
public void changePermitDefaultValues() {
|
||||
CorsConfiguration config = new CorsConfiguration().applyPermitDefaultValues();
|
||||
config.addAllowedOrigin("http://domain.com");
|
||||
config.addAllowedOrigin("https://domain.com");
|
||||
config.addAllowedHeader("header1");
|
||||
config.addAllowedMethod("PATCH");
|
||||
assertEquals(Arrays.asList("*", "http://domain.com"), config.getAllowedOrigins());
|
||||
assertEquals(Arrays.asList("*", "https://domain.com"), config.getAllowedOrigins());
|
||||
assertEquals(Arrays.asList("*", "header1"), config.getAllowedHeaders());
|
||||
assertEquals(Arrays.asList("GET", "HEAD", "POST", "PATCH"), config.getAllowedMethods());
|
||||
}
|
||||
|
||||
@@ -34,7 +34,7 @@ public class CorsUtilsTests {
|
||||
@Test
|
||||
public void isCorsRequest() {
|
||||
MockHttpServletRequest request = new MockHttpServletRequest();
|
||||
request.addHeader(HttpHeaders.ORIGIN, "http://domain.com");
|
||||
request.addHeader(HttpHeaders.ORIGIN, "https://domain.com");
|
||||
assertTrue(CorsUtils.isCorsRequest(request));
|
||||
}
|
||||
|
||||
@@ -48,7 +48,7 @@ public class CorsUtilsTests {
|
||||
public void isPreFlightRequest() {
|
||||
MockHttpServletRequest request = new MockHttpServletRequest();
|
||||
request.setMethod(HttpMethod.OPTIONS.name());
|
||||
request.addHeader(HttpHeaders.ORIGIN, "http://domain.com");
|
||||
request.addHeader(HttpHeaders.ORIGIN, "https://domain.com");
|
||||
request.addHeader(HttpHeaders.ACCESS_CONTROL_REQUEST_METHOD, "GET");
|
||||
assertTrue(CorsUtils.isPreFlightRequest(request));
|
||||
}
|
||||
@@ -60,7 +60,7 @@ public class CorsUtilsTests {
|
||||
|
||||
request = new MockHttpServletRequest();
|
||||
request.setMethod(HttpMethod.OPTIONS.name());
|
||||
request.addHeader(HttpHeaders.ORIGIN, "http://domain.com");
|
||||
request.addHeader(HttpHeaders.ORIGIN, "https://domain.com");
|
||||
assertFalse(CorsUtils.isPreFlightRequest(request));
|
||||
|
||||
request = new MockHttpServletRequest();
|
||||
|
||||
@@ -62,7 +62,7 @@ public class DefaultCorsProcessorTests {
|
||||
@Test
|
||||
public void actualRequestWithOriginHeader() throws Exception {
|
||||
this.request.setMethod(HttpMethod.GET.name());
|
||||
this.request.addHeader(HttpHeaders.ORIGIN, "http://domain2.com");
|
||||
this.request.addHeader(HttpHeaders.ORIGIN, "https://domain2.com");
|
||||
|
||||
this.processor.processRequest(this.conf, this.request, this.response);
|
||||
assertFalse(this.response.containsHeader(HttpHeaders.ACCESS_CONTROL_ALLOW_ORIGIN));
|
||||
@@ -74,7 +74,7 @@ public class DefaultCorsProcessorTests {
|
||||
@Test
|
||||
public void actualRequestWithOriginHeaderAndNullConfig() throws Exception {
|
||||
this.request.setMethod(HttpMethod.GET.name());
|
||||
this.request.addHeader(HttpHeaders.ORIGIN, "http://domain2.com");
|
||||
this.request.addHeader(HttpHeaders.ORIGIN, "https://domain2.com");
|
||||
|
||||
this.processor.processRequest(null, this.request, this.response);
|
||||
assertFalse(this.response.containsHeader(HttpHeaders.ACCESS_CONTROL_ALLOW_ORIGIN));
|
||||
@@ -84,7 +84,7 @@ public class DefaultCorsProcessorTests {
|
||||
@Test
|
||||
public void actualRequestWithOriginHeaderAndAllowedOrigin() throws Exception {
|
||||
this.request.setMethod(HttpMethod.GET.name());
|
||||
this.request.addHeader(HttpHeaders.ORIGIN, "http://domain2.com");
|
||||
this.request.addHeader(HttpHeaders.ORIGIN, "https://domain2.com");
|
||||
this.conf.addAllowedOrigin("*");
|
||||
|
||||
this.processor.processRequest(this.conf, this.request, this.response);
|
||||
@@ -100,15 +100,15 @@ public class DefaultCorsProcessorTests {
|
||||
@Test
|
||||
public void actualRequestCredentials() throws Exception {
|
||||
this.request.setMethod(HttpMethod.GET.name());
|
||||
this.request.addHeader(HttpHeaders.ORIGIN, "http://domain2.com");
|
||||
this.conf.addAllowedOrigin("http://domain1.com");
|
||||
this.conf.addAllowedOrigin("http://domain2.com");
|
||||
this.request.addHeader(HttpHeaders.ORIGIN, "https://domain2.com");
|
||||
this.conf.addAllowedOrigin("https://domain1.com");
|
||||
this.conf.addAllowedOrigin("https://domain2.com");
|
||||
this.conf.addAllowedOrigin("http://domain3.com");
|
||||
this.conf.setAllowCredentials(true);
|
||||
|
||||
this.processor.processRequest(this.conf, this.request, this.response);
|
||||
assertTrue(this.response.containsHeader(HttpHeaders.ACCESS_CONTROL_ALLOW_ORIGIN));
|
||||
assertEquals("http://domain2.com", this.response.getHeader(HttpHeaders.ACCESS_CONTROL_ALLOW_ORIGIN));
|
||||
assertEquals("https://domain2.com", this.response.getHeader(HttpHeaders.ACCESS_CONTROL_ALLOW_ORIGIN));
|
||||
assertTrue(this.response.containsHeader(HttpHeaders.ACCESS_CONTROL_ALLOW_CREDENTIALS));
|
||||
assertEquals("true", this.response.getHeader(HttpHeaders.ACCESS_CONTROL_ALLOW_CREDENTIALS));
|
||||
assertThat(this.response.getHeaders(HttpHeaders.VARY), contains(HttpHeaders.ORIGIN,
|
||||
@@ -119,13 +119,13 @@ public class DefaultCorsProcessorTests {
|
||||
@Test
|
||||
public void actualRequestCredentialsWithOriginWildcard() throws Exception {
|
||||
this.request.setMethod(HttpMethod.GET.name());
|
||||
this.request.addHeader(HttpHeaders.ORIGIN, "http://domain2.com");
|
||||
this.request.addHeader(HttpHeaders.ORIGIN, "https://domain2.com");
|
||||
this.conf.addAllowedOrigin("*");
|
||||
this.conf.setAllowCredentials(true);
|
||||
|
||||
this.processor.processRequest(this.conf, this.request, this.response);
|
||||
assertTrue(this.response.containsHeader(HttpHeaders.ACCESS_CONTROL_ALLOW_ORIGIN));
|
||||
assertEquals("http://domain2.com", this.response.getHeader(HttpHeaders.ACCESS_CONTROL_ALLOW_ORIGIN));
|
||||
assertEquals("https://domain2.com", this.response.getHeader(HttpHeaders.ACCESS_CONTROL_ALLOW_ORIGIN));
|
||||
assertTrue(this.response.containsHeader(HttpHeaders.ACCESS_CONTROL_ALLOW_CREDENTIALS));
|
||||
assertEquals("true", this.response.getHeader(HttpHeaders.ACCESS_CONTROL_ALLOW_CREDENTIALS));
|
||||
assertThat(this.response.getHeaders(HttpHeaders.VARY), contains(HttpHeaders.ORIGIN,
|
||||
@@ -136,8 +136,8 @@ public class DefaultCorsProcessorTests {
|
||||
@Test
|
||||
public void actualRequestCaseInsensitiveOriginMatch() throws Exception {
|
||||
this.request.setMethod(HttpMethod.GET.name());
|
||||
this.request.addHeader(HttpHeaders.ORIGIN, "http://domain2.com");
|
||||
this.conf.addAllowedOrigin("http://DOMAIN2.com");
|
||||
this.request.addHeader(HttpHeaders.ORIGIN, "https://domain2.com");
|
||||
this.conf.addAllowedOrigin("https://DOMAIN2.com");
|
||||
|
||||
this.processor.processRequest(this.conf, this.request, this.response);
|
||||
assertTrue(this.response.containsHeader(HttpHeaders.ACCESS_CONTROL_ALLOW_ORIGIN));
|
||||
@@ -149,14 +149,14 @@ public class DefaultCorsProcessorTests {
|
||||
@Test
|
||||
public void actualRequestExposedHeaders() throws Exception {
|
||||
this.request.setMethod(HttpMethod.GET.name());
|
||||
this.request.addHeader(HttpHeaders.ORIGIN, "http://domain2.com");
|
||||
this.request.addHeader(HttpHeaders.ORIGIN, "https://domain2.com");
|
||||
this.conf.addExposedHeader("header1");
|
||||
this.conf.addExposedHeader("header2");
|
||||
this.conf.addAllowedOrigin("http://domain2.com");
|
||||
this.conf.addAllowedOrigin("https://domain2.com");
|
||||
|
||||
this.processor.processRequest(this.conf, this.request, this.response);
|
||||
assertTrue(this.response.containsHeader(HttpHeaders.ACCESS_CONTROL_ALLOW_ORIGIN));
|
||||
assertEquals("http://domain2.com", this.response.getHeader(HttpHeaders.ACCESS_CONTROL_ALLOW_ORIGIN));
|
||||
assertEquals("https://domain2.com", this.response.getHeader(HttpHeaders.ACCESS_CONTROL_ALLOW_ORIGIN));
|
||||
assertTrue(this.response.containsHeader(HttpHeaders.ACCESS_CONTROL_EXPOSE_HEADERS));
|
||||
assertTrue(this.response.getHeader(HttpHeaders.ACCESS_CONTROL_EXPOSE_HEADERS).contains("header1"));
|
||||
assertTrue(this.response.getHeader(HttpHeaders.ACCESS_CONTROL_EXPOSE_HEADERS).contains("header2"));
|
||||
@@ -168,7 +168,7 @@ public class DefaultCorsProcessorTests {
|
||||
@Test
|
||||
public void preflightRequestAllOriginsAllowed() throws Exception {
|
||||
this.request.setMethod(HttpMethod.OPTIONS.name());
|
||||
this.request.addHeader(HttpHeaders.ORIGIN, "http://domain2.com");
|
||||
this.request.addHeader(HttpHeaders.ORIGIN, "https://domain2.com");
|
||||
this.request.addHeader(HttpHeaders.ACCESS_CONTROL_REQUEST_METHOD, "GET");
|
||||
this.conf.addAllowedOrigin("*");
|
||||
|
||||
@@ -181,7 +181,7 @@ public class DefaultCorsProcessorTests {
|
||||
@Test
|
||||
public void preflightRequestWrongAllowedMethod() throws Exception {
|
||||
this.request.setMethod(HttpMethod.OPTIONS.name());
|
||||
this.request.addHeader(HttpHeaders.ORIGIN, "http://domain2.com");
|
||||
this.request.addHeader(HttpHeaders.ORIGIN, "https://domain2.com");
|
||||
this.request.addHeader(HttpHeaders.ACCESS_CONTROL_REQUEST_METHOD, "DELETE");
|
||||
this.conf.addAllowedOrigin("*");
|
||||
|
||||
@@ -194,7 +194,7 @@ public class DefaultCorsProcessorTests {
|
||||
@Test
|
||||
public void preflightRequestMatchedAllowedMethod() throws Exception {
|
||||
this.request.setMethod(HttpMethod.OPTIONS.name());
|
||||
this.request.addHeader(HttpHeaders.ORIGIN, "http://domain2.com");
|
||||
this.request.addHeader(HttpHeaders.ORIGIN, "https://domain2.com");
|
||||
this.request.addHeader(HttpHeaders.ACCESS_CONTROL_REQUEST_METHOD, "GET");
|
||||
this.conf.addAllowedOrigin("*");
|
||||
|
||||
@@ -208,7 +208,7 @@ public class DefaultCorsProcessorTests {
|
||||
@Test
|
||||
public void preflightRequestTestWithOriginButWithoutOtherHeaders() throws Exception {
|
||||
this.request.setMethod(HttpMethod.OPTIONS.name());
|
||||
this.request.addHeader(HttpHeaders.ORIGIN, "http://domain2.com");
|
||||
this.request.addHeader(HttpHeaders.ORIGIN, "https://domain2.com");
|
||||
|
||||
this.processor.processRequest(this.conf, this.request, this.response);
|
||||
assertFalse(this.response.containsHeader(HttpHeaders.ACCESS_CONTROL_ALLOW_ORIGIN));
|
||||
@@ -220,7 +220,7 @@ public class DefaultCorsProcessorTests {
|
||||
@Test
|
||||
public void preflightRequestWithoutRequestMethod() throws Exception {
|
||||
this.request.setMethod(HttpMethod.OPTIONS.name());
|
||||
this.request.addHeader(HttpHeaders.ORIGIN, "http://domain2.com");
|
||||
this.request.addHeader(HttpHeaders.ORIGIN, "https://domain2.com");
|
||||
this.request.addHeader(HttpHeaders.ACCESS_CONTROL_REQUEST_HEADERS, "Header1");
|
||||
|
||||
this.processor.processRequest(this.conf, this.request, this.response);
|
||||
@@ -233,7 +233,7 @@ public class DefaultCorsProcessorTests {
|
||||
@Test
|
||||
public void preflightRequestWithRequestAndMethodHeaderButNoConfig() throws Exception {
|
||||
this.request.setMethod(HttpMethod.OPTIONS.name());
|
||||
this.request.addHeader(HttpHeaders.ORIGIN, "http://domain2.com");
|
||||
this.request.addHeader(HttpHeaders.ORIGIN, "https://domain2.com");
|
||||
this.request.addHeader(HttpHeaders.ACCESS_CONTROL_REQUEST_METHOD, "GET");
|
||||
this.request.addHeader(HttpHeaders.ACCESS_CONTROL_REQUEST_HEADERS, "Header1");
|
||||
|
||||
@@ -247,7 +247,7 @@ public class DefaultCorsProcessorTests {
|
||||
@Test
|
||||
public void preflightRequestValidRequestAndConfig() throws Exception {
|
||||
this.request.setMethod(HttpMethod.OPTIONS.name());
|
||||
this.request.addHeader(HttpHeaders.ORIGIN, "http://domain2.com");
|
||||
this.request.addHeader(HttpHeaders.ORIGIN, "https://domain2.com");
|
||||
this.request.addHeader(HttpHeaders.ACCESS_CONTROL_REQUEST_METHOD, "GET");
|
||||
this.request.addHeader(HttpHeaders.ACCESS_CONTROL_REQUEST_HEADERS, "Header1");
|
||||
this.conf.addAllowedOrigin("*");
|
||||
@@ -270,18 +270,18 @@ public class DefaultCorsProcessorTests {
|
||||
@Test
|
||||
public void preflightRequestCredentials() throws Exception {
|
||||
this.request.setMethod(HttpMethod.OPTIONS.name());
|
||||
this.request.addHeader(HttpHeaders.ORIGIN, "http://domain2.com");
|
||||
this.request.addHeader(HttpHeaders.ORIGIN, "https://domain2.com");
|
||||
this.request.addHeader(HttpHeaders.ACCESS_CONTROL_REQUEST_METHOD, "GET");
|
||||
this.request.addHeader(HttpHeaders.ACCESS_CONTROL_REQUEST_HEADERS, "Header1");
|
||||
this.conf.addAllowedOrigin("http://domain1.com");
|
||||
this.conf.addAllowedOrigin("http://domain2.com");
|
||||
this.conf.addAllowedOrigin("https://domain1.com");
|
||||
this.conf.addAllowedOrigin("https://domain2.com");
|
||||
this.conf.addAllowedOrigin("http://domain3.com");
|
||||
this.conf.addAllowedHeader("Header1");
|
||||
this.conf.setAllowCredentials(true);
|
||||
|
||||
this.processor.processRequest(this.conf, this.request, this.response);
|
||||
assertTrue(this.response.containsHeader(HttpHeaders.ACCESS_CONTROL_ALLOW_ORIGIN));
|
||||
assertEquals("http://domain2.com", this.response.getHeader(HttpHeaders.ACCESS_CONTROL_ALLOW_ORIGIN));
|
||||
assertEquals("https://domain2.com", this.response.getHeader(HttpHeaders.ACCESS_CONTROL_ALLOW_ORIGIN));
|
||||
assertTrue(this.response.containsHeader(HttpHeaders.ACCESS_CONTROL_ALLOW_CREDENTIALS));
|
||||
assertEquals("true", this.response.getHeader(HttpHeaders.ACCESS_CONTROL_ALLOW_CREDENTIALS));
|
||||
assertThat(this.response.getHeaders(HttpHeaders.VARY), contains(HttpHeaders.ORIGIN,
|
||||
@@ -292,10 +292,10 @@ public class DefaultCorsProcessorTests {
|
||||
@Test
|
||||
public void preflightRequestCredentialsWithOriginWildcard() throws Exception {
|
||||
this.request.setMethod(HttpMethod.OPTIONS.name());
|
||||
this.request.addHeader(HttpHeaders.ORIGIN, "http://domain2.com");
|
||||
this.request.addHeader(HttpHeaders.ORIGIN, "https://domain2.com");
|
||||
this.request.addHeader(HttpHeaders.ACCESS_CONTROL_REQUEST_METHOD, "GET");
|
||||
this.request.addHeader(HttpHeaders.ACCESS_CONTROL_REQUEST_HEADERS, "Header1");
|
||||
this.conf.addAllowedOrigin("http://domain1.com");
|
||||
this.conf.addAllowedOrigin("https://domain1.com");
|
||||
this.conf.addAllowedOrigin("*");
|
||||
this.conf.addAllowedOrigin("http://domain3.com");
|
||||
this.conf.addAllowedHeader("Header1");
|
||||
@@ -303,7 +303,7 @@ public class DefaultCorsProcessorTests {
|
||||
|
||||
this.processor.processRequest(this.conf, this.request, this.response);
|
||||
assertTrue(this.response.containsHeader(HttpHeaders.ACCESS_CONTROL_ALLOW_ORIGIN));
|
||||
assertEquals("http://domain2.com", this.response.getHeader(HttpHeaders.ACCESS_CONTROL_ALLOW_ORIGIN));
|
||||
assertEquals("https://domain2.com", this.response.getHeader(HttpHeaders.ACCESS_CONTROL_ALLOW_ORIGIN));
|
||||
assertThat(this.response.getHeaders(HttpHeaders.VARY), contains(HttpHeaders.ORIGIN,
|
||||
HttpHeaders.ACCESS_CONTROL_REQUEST_METHOD, HttpHeaders.ACCESS_CONTROL_REQUEST_HEADERS));
|
||||
assertEquals(HttpServletResponse.SC_OK, this.response.getStatus());
|
||||
@@ -312,13 +312,13 @@ public class DefaultCorsProcessorTests {
|
||||
@Test
|
||||
public void preflightRequestAllowedHeaders() throws Exception {
|
||||
this.request.setMethod(HttpMethod.OPTIONS.name());
|
||||
this.request.addHeader(HttpHeaders.ORIGIN, "http://domain2.com");
|
||||
this.request.addHeader(HttpHeaders.ORIGIN, "https://domain2.com");
|
||||
this.request.addHeader(HttpHeaders.ACCESS_CONTROL_REQUEST_METHOD, "GET");
|
||||
this.request.addHeader(HttpHeaders.ACCESS_CONTROL_REQUEST_HEADERS, "Header1, Header2");
|
||||
this.conf.addAllowedHeader("Header1");
|
||||
this.conf.addAllowedHeader("Header2");
|
||||
this.conf.addAllowedHeader("Header3");
|
||||
this.conf.addAllowedOrigin("http://domain2.com");
|
||||
this.conf.addAllowedOrigin("https://domain2.com");
|
||||
|
||||
this.processor.processRequest(this.conf, this.request, this.response);
|
||||
assertTrue(this.response.containsHeader(HttpHeaders.ACCESS_CONTROL_ALLOW_ORIGIN));
|
||||
@@ -334,11 +334,11 @@ public class DefaultCorsProcessorTests {
|
||||
@Test
|
||||
public void preflightRequestAllowsAllHeaders() throws Exception {
|
||||
this.request.setMethod(HttpMethod.OPTIONS.name());
|
||||
this.request.addHeader(HttpHeaders.ORIGIN, "http://domain2.com");
|
||||
this.request.addHeader(HttpHeaders.ORIGIN, "https://domain2.com");
|
||||
this.request.addHeader(HttpHeaders.ACCESS_CONTROL_REQUEST_METHOD, "GET");
|
||||
this.request.addHeader(HttpHeaders.ACCESS_CONTROL_REQUEST_HEADERS, "Header1, Header2");
|
||||
this.conf.addAllowedHeader("*");
|
||||
this.conf.addAllowedOrigin("http://domain2.com");
|
||||
this.conf.addAllowedOrigin("https://domain2.com");
|
||||
|
||||
this.processor.processRequest(this.conf, this.request, this.response);
|
||||
assertTrue(this.response.containsHeader(HttpHeaders.ACCESS_CONTROL_ALLOW_ORIGIN));
|
||||
@@ -354,11 +354,11 @@ public class DefaultCorsProcessorTests {
|
||||
@Test
|
||||
public void preflightRequestWithEmptyHeaders() throws Exception {
|
||||
this.request.setMethod(HttpMethod.OPTIONS.name());
|
||||
this.request.addHeader(HttpHeaders.ORIGIN, "http://domain2.com");
|
||||
this.request.addHeader(HttpHeaders.ORIGIN, "https://domain2.com");
|
||||
this.request.addHeader(HttpHeaders.ACCESS_CONTROL_REQUEST_METHOD, "GET");
|
||||
this.request.addHeader(HttpHeaders.ACCESS_CONTROL_REQUEST_HEADERS, "");
|
||||
this.conf.addAllowedHeader("*");
|
||||
this.conf.addAllowedOrigin("http://domain2.com");
|
||||
this.conf.addAllowedOrigin("https://domain2.com");
|
||||
|
||||
this.processor.processRequest(this.conf, this.request, this.response);
|
||||
assertTrue(this.response.containsHeader(HttpHeaders.ACCESS_CONTROL_ALLOW_ORIGIN));
|
||||
@@ -371,7 +371,7 @@ public class DefaultCorsProcessorTests {
|
||||
@Test
|
||||
public void preflightRequestWithNullConfig() throws Exception {
|
||||
this.request.setMethod(HttpMethod.OPTIONS.name());
|
||||
this.request.addHeader(HttpHeaders.ORIGIN, "http://domain2.com");
|
||||
this.request.addHeader(HttpHeaders.ORIGIN, "https://domain2.com");
|
||||
this.request.addHeader(HttpHeaders.ACCESS_CONTROL_REQUEST_METHOD, "GET");
|
||||
this.conf.addAllowedOrigin("*");
|
||||
|
||||
|
||||
@@ -39,7 +39,7 @@ public class CorsUtilsTests {
|
||||
|
||||
@Test
|
||||
public void isCorsRequest() {
|
||||
ServerHttpRequest request = get("/").header(HttpHeaders.ORIGIN, "http://domain.com").build();
|
||||
ServerHttpRequest request = get("/").header(HttpHeaders.ORIGIN, "https://domain.com").build();
|
||||
assertTrue(CorsUtils.isCorsRequest(request));
|
||||
}
|
||||
|
||||
@@ -52,7 +52,7 @@ public class CorsUtilsTests {
|
||||
@Test
|
||||
public void isPreFlightRequest() {
|
||||
ServerHttpRequest request = options("/")
|
||||
.header(HttpHeaders.ORIGIN, "http://domain.com")
|
||||
.header(HttpHeaders.ORIGIN, "https://domain.com")
|
||||
.header(HttpHeaders.ACCESS_CONTROL_REQUEST_METHOD, "GET")
|
||||
.build();
|
||||
assertTrue(CorsUtils.isPreFlightRequest(request));
|
||||
@@ -63,7 +63,7 @@ public class CorsUtilsTests {
|
||||
ServerHttpRequest request = get("/").build();
|
||||
assertFalse(CorsUtils.isPreFlightRequest(request));
|
||||
|
||||
request = options("/").header(HttpHeaders.ORIGIN, "http://domain.com").build();
|
||||
request = options("/").header(HttpHeaders.ORIGIN, "https://domain.com").build();
|
||||
assertFalse(CorsUtils.isPreFlightRequest(request));
|
||||
|
||||
request = options("/").header(HttpHeaders.ACCESS_CONTROL_REQUEST_METHOD, "GET").build();
|
||||
@@ -95,7 +95,7 @@ public class CorsUtilsTests {
|
||||
@Test // SPR-16362
|
||||
public void isSameOriginWithDifferentSchemes() {
|
||||
MockServerHttpRequest request = MockServerHttpRequest
|
||||
.get("http://mydomain1.com")
|
||||
.get("https://mydomain1.com")
|
||||
.header(HttpHeaders.ORIGIN, "https://mydomain1.com")
|
||||
.build();
|
||||
assertFalse(CorsUtils.isSameOrigin(request));
|
||||
|
||||
@@ -54,7 +54,7 @@ public class CorsWebFilterTests {
|
||||
|
||||
@Before
|
||||
public void setup() throws Exception {
|
||||
config.setAllowedOrigins(Arrays.asList("http://domain1.com", "http://domain2.com"));
|
||||
config.setAllowedOrigins(Arrays.asList("https://domain1.com", "https://domain2.com"));
|
||||
config.setAllowedMethods(Arrays.asList("GET", "POST"));
|
||||
config.setAllowedHeaders(Arrays.asList("header1", "header2"));
|
||||
config.setExposedHeaders(Arrays.asList("header3", "header4"));
|
||||
@@ -68,7 +68,7 @@ public class CorsWebFilterTests {
|
||||
WebFilterChain filterChain = (filterExchange) -> {
|
||||
try {
|
||||
HttpHeaders headers = filterExchange.getResponse().getHeaders();
|
||||
assertEquals("http://domain2.com", headers.getFirst(ACCESS_CONTROL_ALLOW_ORIGIN));
|
||||
assertEquals("https://domain2.com", headers.getFirst(ACCESS_CONTROL_ALLOW_ORIGIN));
|
||||
assertEquals("header3, header4", headers.getFirst(ACCESS_CONTROL_EXPOSE_HEADERS));
|
||||
} catch (AssertionError ex) {
|
||||
return Mono.error(ex);
|
||||
@@ -78,9 +78,9 @@ public class CorsWebFilterTests {
|
||||
};
|
||||
MockServerWebExchange exchange = MockServerWebExchange.from(
|
||||
MockServerHttpRequest
|
||||
.get("http://domain1.com/test.html")
|
||||
.get("https://domain1.com/test.html")
|
||||
.header(HOST, "domain1.com")
|
||||
.header(ORIGIN, "http://domain2.com")
|
||||
.header(ORIGIN, "https://domain2.com")
|
||||
.header("header2", "foo"));
|
||||
this.filter.filter(exchange, filterChain);
|
||||
}
|
||||
@@ -89,9 +89,9 @@ public class CorsWebFilterTests {
|
||||
public void invalidActualRequest() throws ServletException, IOException {
|
||||
MockServerWebExchange exchange = MockServerWebExchange.from(
|
||||
MockServerHttpRequest
|
||||
.delete("http://domain1.com/test.html")
|
||||
.delete("https://domain1.com/test.html")
|
||||
.header(HOST, "domain1.com")
|
||||
.header(ORIGIN, "http://domain2.com")
|
||||
.header(ORIGIN, "https://domain2.com")
|
||||
.header("header2", "foo"));
|
||||
|
||||
WebFilterChain filterChain = (filterExchange) -> Mono.error(
|
||||
@@ -106,9 +106,9 @@ public class CorsWebFilterTests {
|
||||
|
||||
MockServerWebExchange exchange = MockServerWebExchange.from(
|
||||
MockServerHttpRequest
|
||||
.options("http://domain1.com/test.html")
|
||||
.options("https://domain1.com/test.html")
|
||||
.header(HOST, "domain1.com")
|
||||
.header(ORIGIN, "http://domain2.com")
|
||||
.header(ORIGIN, "https://domain2.com")
|
||||
.header(ACCESS_CONTROL_REQUEST_METHOD, HttpMethod.GET.name())
|
||||
.header(ACCESS_CONTROL_REQUEST_HEADERS, "header1, header2")
|
||||
);
|
||||
@@ -118,7 +118,7 @@ public class CorsWebFilterTests {
|
||||
filter.filter(exchange, filterChain);
|
||||
|
||||
HttpHeaders headers = exchange.getResponse().getHeaders();
|
||||
assertEquals("http://domain2.com", headers.getFirst(ACCESS_CONTROL_ALLOW_ORIGIN));
|
||||
assertEquals("https://domain2.com", headers.getFirst(ACCESS_CONTROL_ALLOW_ORIGIN));
|
||||
assertEquals("header1, header2", headers.getFirst(ACCESS_CONTROL_ALLOW_HEADERS));
|
||||
assertEquals("header3, header4", headers.getFirst(ACCESS_CONTROL_EXPOSE_HEADERS));
|
||||
assertEquals(123L, Long.parseLong(headers.getFirst(ACCESS_CONTROL_MAX_AGE)));
|
||||
@@ -129,9 +129,9 @@ public class CorsWebFilterTests {
|
||||
|
||||
MockServerWebExchange exchange = MockServerWebExchange.from(
|
||||
MockServerHttpRequest
|
||||
.options("http://domain1.com/test.html")
|
||||
.options("https://domain1.com/test.html")
|
||||
.header(HOST, "domain1.com")
|
||||
.header(ORIGIN, "http://domain2.com")
|
||||
.header(ORIGIN, "https://domain2.com")
|
||||
.header(ACCESS_CONTROL_REQUEST_METHOD, HttpMethod.DELETE.name())
|
||||
.header(ACCESS_CONTROL_REQUEST_HEADERS, "header1, header2"));
|
||||
|
||||
|
||||
@@ -101,15 +101,15 @@ public class DefaultCorsProcessorTests {
|
||||
@Test
|
||||
public void actualRequestCredentials() throws Exception {
|
||||
ServerWebExchange exchange = actualRequest();
|
||||
this.conf.addAllowedOrigin("http://domain1.com");
|
||||
this.conf.addAllowedOrigin("http://domain2.com");
|
||||
this.conf.addAllowedOrigin("https://domain1.com");
|
||||
this.conf.addAllowedOrigin("https://domain2.com");
|
||||
this.conf.addAllowedOrigin("http://domain3.com");
|
||||
this.conf.setAllowCredentials(true);
|
||||
this.processor.process(this.conf, exchange);
|
||||
|
||||
ServerHttpResponse response = exchange.getResponse();
|
||||
assertTrue(response.getHeaders().containsKey(ACCESS_CONTROL_ALLOW_ORIGIN));
|
||||
assertEquals("http://domain2.com", response.getHeaders().getFirst(ACCESS_CONTROL_ALLOW_ORIGIN));
|
||||
assertEquals("https://domain2.com", response.getHeaders().getFirst(ACCESS_CONTROL_ALLOW_ORIGIN));
|
||||
assertTrue(response.getHeaders().containsKey(HttpHeaders.ACCESS_CONTROL_ALLOW_CREDENTIALS));
|
||||
assertEquals("true", response.getHeaders().getFirst(HttpHeaders.ACCESS_CONTROL_ALLOW_CREDENTIALS));
|
||||
assertThat(response.getHeaders().get(VARY), contains(ORIGIN,
|
||||
@@ -126,7 +126,7 @@ public class DefaultCorsProcessorTests {
|
||||
|
||||
ServerHttpResponse response = exchange.getResponse();
|
||||
assertTrue(response.getHeaders().containsKey(ACCESS_CONTROL_ALLOW_ORIGIN));
|
||||
assertEquals("http://domain2.com", response.getHeaders().getFirst(ACCESS_CONTROL_ALLOW_ORIGIN));
|
||||
assertEquals("https://domain2.com", response.getHeaders().getFirst(ACCESS_CONTROL_ALLOW_ORIGIN));
|
||||
assertTrue(response.getHeaders().containsKey(HttpHeaders.ACCESS_CONTROL_ALLOW_CREDENTIALS));
|
||||
assertEquals("true", response.getHeaders().getFirst(HttpHeaders.ACCESS_CONTROL_ALLOW_CREDENTIALS));
|
||||
assertThat(response.getHeaders().get(VARY), contains(ORIGIN,
|
||||
@@ -137,7 +137,7 @@ public class DefaultCorsProcessorTests {
|
||||
@Test
|
||||
public void actualRequestCaseInsensitiveOriginMatch() throws Exception {
|
||||
ServerWebExchange exchange = actualRequest();
|
||||
this.conf.addAllowedOrigin("http://DOMAIN2.com");
|
||||
this.conf.addAllowedOrigin("https://DOMAIN2.com");
|
||||
this.processor.process(this.conf, exchange);
|
||||
|
||||
ServerHttpResponse response = exchange.getResponse();
|
||||
@@ -152,12 +152,12 @@ public class DefaultCorsProcessorTests {
|
||||
ServerWebExchange exchange = actualRequest();
|
||||
this.conf.addExposedHeader("header1");
|
||||
this.conf.addExposedHeader("header2");
|
||||
this.conf.addAllowedOrigin("http://domain2.com");
|
||||
this.conf.addAllowedOrigin("https://domain2.com");
|
||||
this.processor.process(this.conf, exchange);
|
||||
|
||||
ServerHttpResponse response = exchange.getResponse();
|
||||
assertTrue(response.getHeaders().containsKey(ACCESS_CONTROL_ALLOW_ORIGIN));
|
||||
assertEquals("http://domain2.com", response.getHeaders().getFirst(ACCESS_CONTROL_ALLOW_ORIGIN));
|
||||
assertEquals("https://domain2.com", response.getHeaders().getFirst(ACCESS_CONTROL_ALLOW_ORIGIN));
|
||||
assertTrue(response.getHeaders().containsKey(HttpHeaders.ACCESS_CONTROL_EXPOSE_HEADERS));
|
||||
assertTrue(response.getHeaders().getFirst(HttpHeaders.ACCESS_CONTROL_EXPOSE_HEADERS).contains("header1"));
|
||||
assertTrue(response.getHeaders().getFirst(HttpHeaders.ACCESS_CONTROL_EXPOSE_HEADERS).contains("header2"));
|
||||
@@ -278,8 +278,8 @@ public class DefaultCorsProcessorTests {
|
||||
.header(ACCESS_CONTROL_REQUEST_METHOD, "GET")
|
||||
.header(ACCESS_CONTROL_REQUEST_HEADERS, "Header1"));
|
||||
|
||||
this.conf.addAllowedOrigin("http://domain1.com");
|
||||
this.conf.addAllowedOrigin("http://domain2.com");
|
||||
this.conf.addAllowedOrigin("https://domain1.com");
|
||||
this.conf.addAllowedOrigin("https://domain2.com");
|
||||
this.conf.addAllowedOrigin("http://domain3.com");
|
||||
this.conf.addAllowedHeader("Header1");
|
||||
this.conf.setAllowCredentials(true);
|
||||
@@ -288,7 +288,7 @@ public class DefaultCorsProcessorTests {
|
||||
|
||||
ServerHttpResponse response = exchange.getResponse();
|
||||
assertTrue(response.getHeaders().containsKey(ACCESS_CONTROL_ALLOW_ORIGIN));
|
||||
assertEquals("http://domain2.com", response.getHeaders().getFirst(ACCESS_CONTROL_ALLOW_ORIGIN));
|
||||
assertEquals("https://domain2.com", response.getHeaders().getFirst(ACCESS_CONTROL_ALLOW_ORIGIN));
|
||||
assertTrue(response.getHeaders().containsKey(HttpHeaders.ACCESS_CONTROL_ALLOW_CREDENTIALS));
|
||||
assertEquals("true", response.getHeaders().getFirst(HttpHeaders.ACCESS_CONTROL_ALLOW_CREDENTIALS));
|
||||
assertThat(response.getHeaders().get(VARY), contains(ORIGIN,
|
||||
@@ -302,7 +302,7 @@ public class DefaultCorsProcessorTests {
|
||||
.header(ACCESS_CONTROL_REQUEST_METHOD, "GET")
|
||||
.header(ACCESS_CONTROL_REQUEST_HEADERS, "Header1"));
|
||||
|
||||
this.conf.addAllowedOrigin("http://domain1.com");
|
||||
this.conf.addAllowedOrigin("https://domain1.com");
|
||||
this.conf.addAllowedOrigin("*");
|
||||
this.conf.addAllowedOrigin("http://domain3.com");
|
||||
this.conf.addAllowedHeader("Header1");
|
||||
@@ -312,7 +312,7 @@ public class DefaultCorsProcessorTests {
|
||||
|
||||
ServerHttpResponse response = exchange.getResponse();
|
||||
assertTrue(response.getHeaders().containsKey(ACCESS_CONTROL_ALLOW_ORIGIN));
|
||||
assertEquals("http://domain2.com", response.getHeaders().getFirst(ACCESS_CONTROL_ALLOW_ORIGIN));
|
||||
assertEquals("https://domain2.com", response.getHeaders().getFirst(ACCESS_CONTROL_ALLOW_ORIGIN));
|
||||
assertThat(response.getHeaders().get(VARY), contains(ORIGIN,
|
||||
ACCESS_CONTROL_REQUEST_METHOD, ACCESS_CONTROL_REQUEST_HEADERS));
|
||||
assertNull(response.getStatusCode());
|
||||
@@ -327,7 +327,7 @@ public class DefaultCorsProcessorTests {
|
||||
this.conf.addAllowedHeader("Header1");
|
||||
this.conf.addAllowedHeader("Header2");
|
||||
this.conf.addAllowedHeader("Header3");
|
||||
this.conf.addAllowedOrigin("http://domain2.com");
|
||||
this.conf.addAllowedOrigin("https://domain2.com");
|
||||
|
||||
this.processor.process(this.conf, exchange);
|
||||
|
||||
@@ -349,7 +349,7 @@ public class DefaultCorsProcessorTests {
|
||||
.header(ACCESS_CONTROL_REQUEST_HEADERS, "Header1, Header2"));
|
||||
|
||||
this.conf.addAllowedHeader("*");
|
||||
this.conf.addAllowedOrigin("http://domain2.com");
|
||||
this.conf.addAllowedOrigin("https://domain2.com");
|
||||
|
||||
this.processor.process(this.conf, exchange);
|
||||
|
||||
@@ -371,7 +371,7 @@ public class DefaultCorsProcessorTests {
|
||||
.header(ACCESS_CONTROL_REQUEST_HEADERS, ""));
|
||||
|
||||
this.conf.addAllowedHeader("*");
|
||||
this.conf.addAllowedOrigin("http://domain2.com");
|
||||
this.conf.addAllowedOrigin("https://domain2.com");
|
||||
|
||||
this.processor.process(this.conf, exchange);
|
||||
|
||||
@@ -407,7 +407,7 @@ public class DefaultCorsProcessorTests {
|
||||
private MockServerHttpRequest.BaseBuilder<?> corsRequest(HttpMethod method) {
|
||||
return MockServerHttpRequest
|
||||
.method(method, "http://localhost/test.html")
|
||||
.header(HttpHeaders.ORIGIN, "http://domain2.com");
|
||||
.header(HttpHeaders.ORIGIN, "https://domain2.com");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -43,7 +43,7 @@ public class CorsFilterTests {
|
||||
|
||||
@Before
|
||||
public void setup() throws Exception {
|
||||
config.setAllowedOrigins(Arrays.asList("http://domain1.com", "http://domain2.com"));
|
||||
config.setAllowedOrigins(Arrays.asList("https://domain1.com", "https://domain2.com"));
|
||||
config.setAllowedMethods(Arrays.asList("GET", "POST"));
|
||||
config.setAllowedHeaders(Arrays.asList("header1", "header2"));
|
||||
config.setExposedHeaders(Arrays.asList("header3", "header4"));
|
||||
@@ -56,12 +56,12 @@ public class CorsFilterTests {
|
||||
public void validActualRequest() throws ServletException, IOException {
|
||||
|
||||
MockHttpServletRequest request = new MockHttpServletRequest(HttpMethod.GET.name(), "/test.html");
|
||||
request.addHeader(HttpHeaders.ORIGIN, "http://domain2.com");
|
||||
request.addHeader(HttpHeaders.ORIGIN, "https://domain2.com");
|
||||
request.addHeader("header2", "foo");
|
||||
MockHttpServletResponse response = new MockHttpServletResponse();
|
||||
|
||||
FilterChain filterChain = (filterRequest, filterResponse) -> {
|
||||
assertEquals("http://domain2.com", response.getHeader(HttpHeaders.ACCESS_CONTROL_ALLOW_ORIGIN));
|
||||
assertEquals("https://domain2.com", response.getHeader(HttpHeaders.ACCESS_CONTROL_ALLOW_ORIGIN));
|
||||
assertEquals("header3, header4", response.getHeader(HttpHeaders.ACCESS_CONTROL_EXPOSE_HEADERS));
|
||||
};
|
||||
filter.doFilter(request, response, filterChain);
|
||||
@@ -71,7 +71,7 @@ public class CorsFilterTests {
|
||||
public void invalidActualRequest() throws ServletException, IOException {
|
||||
|
||||
MockHttpServletRequest request = new MockHttpServletRequest(HttpMethod.DELETE.name(), "/test.html");
|
||||
request.addHeader(HttpHeaders.ORIGIN, "http://domain2.com");
|
||||
request.addHeader(HttpHeaders.ORIGIN, "https://domain2.com");
|
||||
request.addHeader("header2", "foo");
|
||||
MockHttpServletResponse response = new MockHttpServletResponse();
|
||||
|
||||
@@ -86,7 +86,7 @@ public class CorsFilterTests {
|
||||
public void validPreFlightRequest() throws ServletException, IOException {
|
||||
|
||||
MockHttpServletRequest request = new MockHttpServletRequest(HttpMethod.OPTIONS.name(), "/test.html");
|
||||
request.addHeader(HttpHeaders.ORIGIN, "http://domain2.com");
|
||||
request.addHeader(HttpHeaders.ORIGIN, "https://domain2.com");
|
||||
request.addHeader(HttpHeaders.ACCESS_CONTROL_REQUEST_METHOD, HttpMethod.GET.name());
|
||||
request.addHeader(HttpHeaders.ACCESS_CONTROL_REQUEST_HEADERS, "header1, header2");
|
||||
MockHttpServletResponse response = new MockHttpServletResponse();
|
||||
@@ -95,7 +95,7 @@ public class CorsFilterTests {
|
||||
fail("Preflight requests must not be forwarded to the filter chain");
|
||||
filter.doFilter(request, response, filterChain);
|
||||
|
||||
assertEquals("http://domain2.com", response.getHeader(HttpHeaders.ACCESS_CONTROL_ALLOW_ORIGIN));
|
||||
assertEquals("https://domain2.com", response.getHeader(HttpHeaders.ACCESS_CONTROL_ALLOW_ORIGIN));
|
||||
assertEquals("header1, header2", response.getHeader(HttpHeaders.ACCESS_CONTROL_ALLOW_HEADERS));
|
||||
assertEquals("header3, header4", response.getHeader(HttpHeaders.ACCESS_CONTROL_EXPOSE_HEADERS));
|
||||
assertEquals(123L, Long.parseLong(response.getHeader(HttpHeaders.ACCESS_CONTROL_MAX_AGE)));
|
||||
@@ -105,7 +105,7 @@ public class CorsFilterTests {
|
||||
public void invalidPreFlightRequest() throws ServletException, IOException {
|
||||
|
||||
MockHttpServletRequest request = new MockHttpServletRequest(HttpMethod.OPTIONS.name(), "/test.html");
|
||||
request.addHeader(HttpHeaders.ORIGIN, "http://domain2.com");
|
||||
request.addHeader(HttpHeaders.ORIGIN, "https://domain2.com");
|
||||
request.addHeader(HttpHeaders.ACCESS_CONTROL_REQUEST_METHOD, HttpMethod.DELETE.name());
|
||||
request.addHeader(HttpHeaders.ACCESS_CONTROL_REQUEST_HEADERS, "header1, header2");
|
||||
MockHttpServletResponse response = new MockHttpServletResponse();
|
||||
|
||||
@@ -441,7 +441,7 @@ public class ForwardedHeaderFilterTests {
|
||||
this.request.addHeader(X_FORWARDED_HOST, "example.com");
|
||||
this.request.addHeader(X_FORWARDED_PORT, "443");
|
||||
|
||||
String location = "http://other.info/foo/bar";
|
||||
String location = "https://weibo.com/otherinfo/foo/bar";
|
||||
String redirectedUrl = sendRedirect(location);
|
||||
assertEquals(location, redirectedUrl);
|
||||
}
|
||||
|
||||
@@ -230,7 +230,7 @@ public class ShallowEtagHeaderFilterTests {
|
||||
assertEquals("Invalid request passed", request, filterRequest);
|
||||
response.setContentLength(100);
|
||||
FileCopyUtils.copy(responseBody, filterResponse.getOutputStream());
|
||||
((HttpServletResponse) filterResponse).sendRedirect("http://www.google.com");
|
||||
((HttpServletResponse) filterResponse).sendRedirect("https://www.google.com");
|
||||
};
|
||||
filter.doFilter(request, response, filterChain);
|
||||
|
||||
@@ -238,7 +238,7 @@ public class ShallowEtagHeaderFilterTests {
|
||||
assertNull("Invalid ETag header", response.getHeader("ETag"));
|
||||
assertEquals("Invalid Content-Length header", 100, response.getContentLength());
|
||||
assertArrayEquals("Invalid content", responseBody, response.getContentAsByteArray());
|
||||
assertEquals("Invalid redirect URL", "http://www.google.com", response.getRedirectedUrl());
|
||||
assertEquals("Invalid redirect URL", "https://www.google.com", response.getRedirectedUrl());
|
||||
}
|
||||
|
||||
// SPR-13717
|
||||
|
||||
@@ -56,7 +56,7 @@ public class RequestPartServletServerHttpRequestTests {
|
||||
this.mockRequest.addFile(new MockMultipartFile("part", "", "application/json", "content".getBytes("UTF-8")));
|
||||
ServerHttpRequest request = new RequestPartServletServerHttpRequest(this.mockRequest, "part");
|
||||
|
||||
URI uri = new URI("http://example.com/path?query");
|
||||
URI uri = new URI("https://example.com/path?query");
|
||||
this.mockRequest.setServerName(uri.getHost());
|
||||
this.mockRequest.setServerPort(uri.getPort());
|
||||
this.mockRequest.setRequestURI(uri.getPath());
|
||||
|
||||
@@ -58,7 +58,7 @@ public class DefaultServerWebExchangeTests {
|
||||
|
||||
|
||||
private DefaultServerWebExchange createExchange() {
|
||||
MockServerHttpRequest request = MockServerHttpRequest.get("http://example.com").build();
|
||||
MockServerHttpRequest request = MockServerHttpRequest.get("https://example.com").build();
|
||||
return createExchange(request);
|
||||
}
|
||||
|
||||
|
||||
@@ -33,7 +33,7 @@ import static org.junit.Assert.*;
|
||||
*/
|
||||
public class ForwardedHeaderTransformerTests {
|
||||
|
||||
private static final String BASE_URL = "http://example.com/path";
|
||||
private static final String BASE_URL = "https://example.com/path";
|
||||
|
||||
|
||||
private final ForwardedHeaderTransformer requestMutator = new ForwardedHeaderTransformer();
|
||||
@@ -85,7 +85,7 @@ public class ForwardedHeaderTransformerTests {
|
||||
headers.add("X-Forwarded-Prefix", "/prefix");
|
||||
ServerHttpRequest request = this.requestMutator.apply(getRequest(headers));
|
||||
|
||||
assertEquals(new URI("http://example.com/prefix/path"), request.getURI());
|
||||
assertEquals(new URI("https://example.com/prefix/path"), request.getURI());
|
||||
assertEquals("/prefix/path", request.getPath().value());
|
||||
assertForwardedHeadersRemoved(request);
|
||||
}
|
||||
@@ -96,7 +96,7 @@ public class ForwardedHeaderTransformerTests {
|
||||
headers.add("X-Forwarded-Prefix", "/prefix////");
|
||||
ServerHttpRequest request = this.requestMutator.apply(getRequest(headers));
|
||||
|
||||
assertEquals(new URI("http://example.com/prefix/path"), request.getURI());
|
||||
assertEquals(new URI("https://example.com/prefix/path"), request.getURI());
|
||||
assertEquals("/prefix/path", request.getPath().value());
|
||||
assertForwardedHeadersRemoved(request);
|
||||
}
|
||||
@@ -107,7 +107,7 @@ public class ForwardedHeaderTransformerTests {
|
||||
headers.add("Forwarded", "host=84.198.58.199;proto=https");
|
||||
|
||||
ServerHttpRequest request = MockServerHttpRequest
|
||||
.method(HttpMethod.GET, new URI("http://example.com/a%20b?q=a%2Bb"))
|
||||
.method(HttpMethod.GET, new URI("https://example.com/a%20b?q=a%2Bb"))
|
||||
.headers(headers)
|
||||
.build();
|
||||
|
||||
|
||||
@@ -48,24 +48,24 @@ public class DefaultUriBuilderFactoryTests {
|
||||
|
||||
@Test
|
||||
public void baseUri() {
|
||||
DefaultUriBuilderFactory factory = new DefaultUriBuilderFactory("http://foo.com/v1?id=123");
|
||||
DefaultUriBuilderFactory factory = new DefaultUriBuilderFactory("http://www.foo.com/v1?id=123");
|
||||
URI uri = factory.uriString("/bar").port(8080).build();
|
||||
assertEquals("http://foo.com:8080/v1/bar?id=123", uri.toString());
|
||||
assertEquals("https://foo.com:8080/v1/bar?id=123", uri.toString());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void baseUriWithFullOverride() {
|
||||
DefaultUriBuilderFactory factory = new DefaultUriBuilderFactory("http://foo.com/v1?id=123");
|
||||
URI uri = factory.uriString("http://example.com/1/2").build();
|
||||
DefaultUriBuilderFactory factory = new DefaultUriBuilderFactory("http://www.foo.com/v1?id=123");
|
||||
URI uri = factory.uriString("https://example.com/1/2").build();
|
||||
assertEquals("Use of host should case baseUri to be completely ignored",
|
||||
"http://example.com/1/2", uri.toString());
|
||||
"https://example.com/1/2", uri.toString());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void baseUriWithPathOverride() {
|
||||
DefaultUriBuilderFactory factory = new DefaultUriBuilderFactory("http://foo.com/v1");
|
||||
DefaultUriBuilderFactory factory = new DefaultUriBuilderFactory("http://www.foo.com/v1");
|
||||
URI uri = factory.builder().replacePath("/baz").build();
|
||||
assertEquals("http://foo.com/baz", uri.toString());
|
||||
assertEquals("http://www.foo.com/baz", uri.toString());
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -73,7 +73,7 @@ public class DefaultUriBuilderFactoryTests {
|
||||
DefaultUriBuilderFactory factory = new DefaultUriBuilderFactory("http://{host}/v1");
|
||||
factory.setDefaultUriVariables(singletonMap("host", "foo.com"));
|
||||
URI uri = factory.uriString("/{id}").build(singletonMap("id", "123"));
|
||||
assertEquals("http://foo.com/v1/123", uri.toString());
|
||||
assertEquals("http://www.foo.com/v1/123", uri.toString());
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -81,7 +81,7 @@ public class DefaultUriBuilderFactoryTests {
|
||||
DefaultUriBuilderFactory factory = new DefaultUriBuilderFactory("http://{host}/v1");
|
||||
factory.setDefaultUriVariables(singletonMap("host", "spring.io"));
|
||||
URI uri = factory.uriString("/bar").build(singletonMap("host", "docs.spring.io"));
|
||||
assertEquals("http://docs.spring.io/v1/bar", uri.toString());
|
||||
assertEquals("https://docs.spring.io/v1/bar", uri.toString());
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -89,7 +89,7 @@ public class DefaultUriBuilderFactoryTests {
|
||||
DefaultUriBuilderFactory factory = new DefaultUriBuilderFactory("http://{host}/v1");
|
||||
factory.setDefaultUriVariables(singletonMap("host", "foo.com"));
|
||||
URI uri = factory.uriString("/bar").build();
|
||||
assertEquals("Expected delegation to build(Map) method", "http://foo.com/v1/bar", uri.toString());
|
||||
assertEquals("Expected delegation to build(Map) method", "http://www.foo.com/v1/bar", uri.toString());
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -140,7 +140,7 @@ public class DefaultUriBuilderFactoryTests {
|
||||
factory.setDefaultUriVariables(singletonMap("host", "www.example.com"));
|
||||
UriBuilder uriBuilder = factory.uriString("http://{host}/user/{userId}/dashboard");
|
||||
|
||||
assertEquals("http://www.example.com/user/john%3Bdoe/dashboard",
|
||||
assertEquals("https://www.example.com/user/john%3Bdoe/dashboard",
|
||||
uriBuilder.build(singletonMap("userId", "john;doe")).toString());
|
||||
}
|
||||
|
||||
|
||||
@@ -73,10 +73,10 @@ public class DefaultUriTemplateHandlerTests {
|
||||
Map<String, String> vars = new HashMap<>(2);
|
||||
vars.put("hotel", "1");
|
||||
vars.put("publicpath", "pics/logo.png");
|
||||
String template = "http://example.com/hotels/{hotel}/pic/{publicpath}";
|
||||
String template = "https://example.com/hotels/{hotel}/pic/{publicpath}";
|
||||
URI actual = this.handler.expand(template, vars);
|
||||
|
||||
assertEquals("http://example.com/hotels/1/pic/pics/logo.png", actual.toString());
|
||||
assertEquals("https://example.com/hotels/1/pic/pics/logo.png", actual.toString());
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -86,10 +86,10 @@ public class DefaultUriTemplateHandlerTests {
|
||||
vars.put("hotel", "1");
|
||||
vars.put("publicpath", "pics/logo.png");
|
||||
vars.put("scale", "150x150");
|
||||
String template = "http://example.com/hotels/{hotel}/pic/{publicpath}/size/{scale}";
|
||||
String template = "https://example.com/hotels/{hotel}/pic/{publicpath}/size/{scale}";
|
||||
URI actual = this.handler.expand(template, vars);
|
||||
|
||||
assertEquals("http://example.com/hotels/1/pic/pics%2Flogo.png/size/150x150", actual.toString());
|
||||
assertEquals("https://example.com/hotels/1/pic/pics%2Flogo.png/size/150x150", actual.toString());
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -97,19 +97,19 @@ public class DefaultUriTemplateHandlerTests {
|
||||
this.handler.setStrictEncoding(false);
|
||||
Map<String, String> vars = new HashMap<>(2);
|
||||
vars.put("userId", "john;doe");
|
||||
String template = "http://www.example.com/user/{userId}/dashboard";
|
||||
String template = "https://www.example.com/user/{userId}/dashboard";
|
||||
URI actual = this.handler.expand(template, vars);
|
||||
|
||||
assertEquals("http://www.example.com/user/john;doe/dashboard", actual.toString());
|
||||
assertEquals("https://www.example.com/user/john;doe/dashboard", actual.toString());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void strictEncodingOffWithArray() throws Exception {
|
||||
this.handler.setStrictEncoding(false);
|
||||
String template = "http://www.example.com/user/{userId}/dashboard";
|
||||
String template = "https://www.example.com/user/{userId}/dashboard";
|
||||
URI actual = this.handler.expand(template, "john;doe");
|
||||
|
||||
assertEquals("http://www.example.com/user/john;doe/dashboard", actual.toString());
|
||||
assertEquals("https://www.example.com/user/john;doe/dashboard", actual.toString());
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -117,19 +117,19 @@ public class DefaultUriTemplateHandlerTests {
|
||||
this.handler.setStrictEncoding(true);
|
||||
Map<String, String> vars = new HashMap<>(2);
|
||||
vars.put("userId", "john;doe");
|
||||
String template = "http://www.example.com/user/{userId}/dashboard";
|
||||
String template = "https://www.example.com/user/{userId}/dashboard";
|
||||
URI actual = this.handler.expand(template, vars);
|
||||
|
||||
assertEquals("http://www.example.com/user/john%3Bdoe/dashboard", actual.toString());
|
||||
assertEquals("https://www.example.com/user/john%3Bdoe/dashboard", actual.toString());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void strictEncodingOnWithArray() throws Exception {
|
||||
this.handler.setStrictEncoding(true);
|
||||
String template = "http://www.example.com/user/{userId}/dashboard";
|
||||
String template = "https://www.example.com/user/{userId}/dashboard";
|
||||
URI actual = this.handler.expand(template, "john;doe");
|
||||
|
||||
assertEquals("http://www.example.com/user/john%3Bdoe/dashboard", actual.toString());
|
||||
assertEquals("https://www.example.com/user/john%3Bdoe/dashboard", actual.toString());
|
||||
}
|
||||
|
||||
@Test // SPR-14147
|
||||
@@ -145,7 +145,7 @@ public class DefaultUriTemplateHandlerTests {
|
||||
String template = "http://{host}/user/{userId}/dashboard";
|
||||
URI actual = this.handler.expand(template, vars);
|
||||
|
||||
assertEquals("http://www.example.com/user/john%3Bdoe/dashboard", actual.toString());
|
||||
assertEquals("https://www.example.com/user/john%3Bdoe/dashboard", actual.toString());
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -60,7 +60,7 @@ public class UriComponentsBuilderTests {
|
||||
assertEquals("bar", result.getQuery());
|
||||
assertEquals("baz", result.getFragment());
|
||||
|
||||
URI expected = new URI("http://example.com/foo?bar#baz");
|
||||
URI expected = new URI("https://example.com/foo?bar#baz");
|
||||
assertEquals("Invalid result URI", expected, result.toUri());
|
||||
}
|
||||
|
||||
@@ -75,7 +75,7 @@ public class UriComponentsBuilderTests {
|
||||
assertEquals("http", result1.getScheme());
|
||||
assertEquals("example.com", result1.getHost());
|
||||
assertEquals("/foo", result1.getPath());
|
||||
URI expected = new URI("http://example.com/foo");
|
||||
URI expected = new URI("https://example.com/foo");
|
||||
assertEquals("Invalid result URI", expected, result1.toUri());
|
||||
|
||||
assertEquals("http", result2.getScheme());
|
||||
@@ -83,7 +83,7 @@ public class UriComponentsBuilderTests {
|
||||
assertEquals("/foo/foo2", result2.getPath());
|
||||
assertEquals("bar", result2.getQuery());
|
||||
assertEquals("baz", result2.getFragment());
|
||||
expected = new URI("http://example.com/foo/foo2?bar#baz");
|
||||
expected = new URI("https://example.com/foo/foo2?bar#baz");
|
||||
assertEquals("Invalid result URI", expected, result2.toUri());
|
||||
}
|
||||
|
||||
@@ -108,7 +108,7 @@ public class UriComponentsBuilderTests {
|
||||
|
||||
@Test
|
||||
public void fromHierarchicalUri() throws URISyntaxException {
|
||||
URI uri = new URI("http://example.com/foo?bar#baz");
|
||||
URI uri = new URI("https://example.com/foo?bar#baz");
|
||||
UriComponents result = UriComponentsBuilder.fromUri(uri).build();
|
||||
assertEquals("http", result.getScheme());
|
||||
assertEquals("example.com", result.getHost());
|
||||
@@ -132,7 +132,7 @@ public class UriComponentsBuilderTests {
|
||||
|
||||
@Test // SPR-9317
|
||||
public void fromUriEncodedQuery() throws URISyntaxException {
|
||||
URI uri = new URI("http://www.example.org/?param=aGVsbG9Xb3JsZA%3D%3D");
|
||||
URI uri = new URI("https://www.example.org/?param=aGVsbG9Xb3JsZA%3D%3D");
|
||||
String fromUri = UriComponentsBuilder.fromUri(uri).build().getQueryParams().get("param").get(0);
|
||||
String fromUriString = UriComponentsBuilder.fromUriString(uri.toString())
|
||||
.build().getQueryParams().get("param").get(0);
|
||||
@@ -142,7 +142,7 @@ public class UriComponentsBuilderTests {
|
||||
|
||||
@Test
|
||||
public void fromUriString() {
|
||||
UriComponents result = UriComponentsBuilder.fromUriString("http://www.ietf.org/rfc/rfc3986.txt").build();
|
||||
UriComponents result = UriComponentsBuilder.fromUriString("https://www.ietf.org/rfc/rfc3986.txt").build();
|
||||
assertEquals("http", result.getScheme());
|
||||
assertNull(result.getUserInfo());
|
||||
assertEquals("www.ietf.org", result.getHost());
|
||||
@@ -152,7 +152,7 @@ public class UriComponentsBuilderTests {
|
||||
assertNull(result.getQuery());
|
||||
assertNull(result.getFragment());
|
||||
|
||||
String url = "http://arjen:foobar@java.sun.com:80" +
|
||||
String url = "https://arjen:foobar@java.sun.com:80" +
|
||||
"/javase/6/docs/api/java/util/BitSet.html?foo=bar#and(java.util.BitSet)";
|
||||
result = UriComponentsBuilder.fromUriString(url).build();
|
||||
assertEquals("http", result.getScheme());
|
||||
@@ -188,7 +188,7 @@ public class UriComponentsBuilderTests {
|
||||
|
||||
@Test // SPR-9832
|
||||
public void fromUriStringQueryParamWithReservedCharInValue() {
|
||||
String uri = "http://www.google.com/ig/calculator?q=1USD=?EUR";
|
||||
String uri = "https://www.google.com/ig/calculator?q=1USD=?EUR";
|
||||
UriComponents result = UriComponentsBuilder.fromUriString(uri).build();
|
||||
|
||||
assertEquals("q=1USD=?EUR", result.getQuery());
|
||||
@@ -231,7 +231,7 @@ public class UriComponentsBuilderTests {
|
||||
|
||||
@Test // SPR-11970
|
||||
public void fromUriStringNoPathWithReservedCharInQuery() {
|
||||
UriComponents result = UriComponentsBuilder.fromUriString("http://example.com?foo=bar@baz").build();
|
||||
UriComponents result = UriComponentsBuilder.fromUriString("https://example.com?foo=bar@baz").build();
|
||||
assertTrue(StringUtils.isEmpty(result.getUserInfo()));
|
||||
assertEquals("example.com", result.getHost());
|
||||
assertTrue(result.getQueryParams().containsKey("foo"));
|
||||
@@ -491,7 +491,7 @@ public class UriComponentsBuilderTests {
|
||||
HttpRequest httpRequest = new ServletServerHttpRequest(request);
|
||||
UriComponents result = UriComponentsBuilder.fromHttpRequest(httpRequest).build();
|
||||
|
||||
assertEquals("http://a.example.org/mvc-showcase", result.toString());
|
||||
assertEquals("https://a.example.org/mvc-showcase", result.toString());
|
||||
}
|
||||
|
||||
@Test // SPR-12816
|
||||
@@ -589,32 +589,32 @@ public class UriComponentsBuilderTests {
|
||||
|
||||
@Test
|
||||
public void replacePath() {
|
||||
UriComponentsBuilder builder = UriComponentsBuilder.fromUriString("http://www.ietf.org/rfc/rfc2396.txt");
|
||||
UriComponentsBuilder builder = UriComponentsBuilder.fromUriString("https://www.ietf.org/rfc/rfc2396.txt");
|
||||
builder.replacePath("/rfc/rfc3986.txt");
|
||||
UriComponents result = builder.build();
|
||||
|
||||
assertEquals("http://www.ietf.org/rfc/rfc3986.txt", result.toUriString());
|
||||
assertEquals("https://www.ietf.org/rfc/rfc3986.txt", result.toUriString());
|
||||
|
||||
builder = UriComponentsBuilder.fromUriString("http://www.ietf.org/rfc/rfc2396.txt");
|
||||
builder = UriComponentsBuilder.fromUriString("https://www.ietf.org/rfc/rfc2396.txt");
|
||||
builder.replacePath(null);
|
||||
result = builder.build();
|
||||
|
||||
assertEquals("http://www.ietf.org", result.toUriString());
|
||||
assertEquals("https://www.ietf.org", result.toUriString());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void replaceQuery() {
|
||||
UriComponentsBuilder builder = UriComponentsBuilder.fromUriString("http://example.com/foo?foo=bar&baz=qux");
|
||||
UriComponentsBuilder builder = UriComponentsBuilder.fromUriString("https://example.com/foo?foo=bar&baz=qux");
|
||||
builder.replaceQuery("baz=42");
|
||||
UriComponents result = builder.build();
|
||||
|
||||
assertEquals("http://example.com/foo?baz=42", result.toUriString());
|
||||
assertEquals("https://example.com/foo?baz=42", result.toUriString());
|
||||
|
||||
builder = UriComponentsBuilder.fromUriString("http://example.com/foo?foo=bar&baz=qux");
|
||||
builder = UriComponentsBuilder.fromUriString("https://example.com/foo?foo=bar&baz=qux");
|
||||
builder.replaceQuery(null);
|
||||
result = builder.build();
|
||||
|
||||
assertEquals("http://example.com/foo", result.toUriString());
|
||||
assertEquals("https://example.com/foo", result.toUriString());
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -682,22 +682,22 @@ public class UriComponentsBuilderTests {
|
||||
|
||||
@Test
|
||||
public void queryParamWithValueWithEquals() {
|
||||
UriComponents uriComponents = UriComponentsBuilder.fromUriString("http://example.com/foo?bar=baz").build();
|
||||
assertThat(uriComponents.toUriString(), equalTo("http://example.com/foo?bar=baz"));
|
||||
UriComponents uriComponents = UriComponentsBuilder.fromUriString("https://example.com/foo?bar=baz").build();
|
||||
assertThat(uriComponents.toUriString(), equalTo("https://example.com/foo?bar=baz"));
|
||||
assertThat(uriComponents.getQueryParams().get("bar").get(0), equalTo("baz"));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void queryParamWithoutValueWithEquals() {
|
||||
UriComponents uriComponents = UriComponentsBuilder.fromUriString("http://example.com/foo?bar=").build();
|
||||
assertThat(uriComponents.toUriString(), equalTo("http://example.com/foo?bar="));
|
||||
UriComponents uriComponents = UriComponentsBuilder.fromUriString("https://example.com/foo?bar=").build();
|
||||
assertThat(uriComponents.toUriString(), equalTo("https://example.com/foo?bar="));
|
||||
assertThat(uriComponents.getQueryParams().get("bar").get(0), equalTo(""));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void queryParamWithoutValueWithoutEquals() {
|
||||
UriComponents uriComponents = UriComponentsBuilder.fromUriString("http://example.com/foo?bar").build();
|
||||
assertThat(uriComponents.toUriString(), equalTo("http://example.com/foo?bar"));
|
||||
UriComponents uriComponents = UriComponentsBuilder.fromUriString("https://example.com/foo?bar").build();
|
||||
assertThat(uriComponents.toUriString(), equalTo("https://example.com/foo?bar"));
|
||||
|
||||
// TODO [SPR-13537] Change equalTo(null) to equalTo("").
|
||||
assertThat(uriComponents.getQueryParams().get("bar").get(0), equalTo(null));
|
||||
@@ -705,7 +705,7 @@ public class UriComponentsBuilderTests {
|
||||
|
||||
@Test
|
||||
public void relativeUrls() {
|
||||
String baseUrl = "http://example.com";
|
||||
String baseUrl = "https://example.com";
|
||||
assertThat(UriComponentsBuilder.fromUriString(baseUrl + "/foo/../bar").build().toString(),
|
||||
equalTo(baseUrl + "/foo/../bar"));
|
||||
assertThat(UriComponentsBuilder.fromUriString(baseUrl + "/foo/../bar").build().toUriString(),
|
||||
@@ -728,15 +728,15 @@ public class UriComponentsBuilderTests {
|
||||
|
||||
@Test
|
||||
public void emptySegments() {
|
||||
String baseUrl = "http://example.com/abc/";
|
||||
String baseUrl = "https://example.com/abc/";
|
||||
assertThat(UriComponentsBuilder.fromUriString(baseUrl).path("/x/y/z").build().toString(),
|
||||
equalTo("http://example.com/abc/x/y/z"));
|
||||
equalTo("https://example.com/abc/x/y/z"));
|
||||
assertThat(UriComponentsBuilder.fromUriString(baseUrl).pathSegment("x", "y", "z").build().toString(),
|
||||
equalTo("http://example.com/abc/x/y/z"));
|
||||
equalTo("https://example.com/abc/x/y/z"));
|
||||
assertThat(UriComponentsBuilder.fromUriString(baseUrl).path("/x/").path("/y/z").build().toString(),
|
||||
equalTo("http://example.com/abc/x/y/z"));
|
||||
equalTo("https://example.com/abc/x/y/z"));
|
||||
assertThat(UriComponentsBuilder.fromUriString(baseUrl).pathSegment("x").path("y").build().toString(),
|
||||
equalTo("http://example.com/abc/x/y"));
|
||||
equalTo("https://example.com/abc/x/y"));
|
||||
}
|
||||
|
||||
@Test
|
||||
|
||||
@@ -80,23 +80,23 @@ public class UriComponentsTests {
|
||||
@Test
|
||||
public void toUriEncoded() throws URISyntaxException {
|
||||
UriComponents uriComponents = UriComponentsBuilder.fromUriString(
|
||||
"http://example.com/hotel list/Z\u00fcrich").build();
|
||||
assertEquals(new URI("http://example.com/hotel%20list/Z%C3%BCrich"), uriComponents.encode().toUri());
|
||||
"https://example.com/hotel list/Z\u00fcrich").build();
|
||||
assertEquals(new URI("https://example.com/hotel%20list/Z%C3%BCrich"), uriComponents.encode().toUri());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void toUriNotEncoded() throws URISyntaxException {
|
||||
UriComponents uriComponents = UriComponentsBuilder.fromUriString(
|
||||
"http://example.com/hotel list/Z\u00fcrich").build();
|
||||
assertEquals(new URI("http://example.com/hotel%20list/Z\u00fcrich"), uriComponents.toUri());
|
||||
"https://example.com/hotel list/Z\u00fcrich").build();
|
||||
assertEquals(new URI("https://example.com/hotel%20list/Z\u00fcrich"), uriComponents.toUri());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void toUriAlreadyEncoded() throws URISyntaxException {
|
||||
UriComponents uriComponents = UriComponentsBuilder.fromUriString(
|
||||
"http://example.com/hotel%20list/Z%C3%BCrich").build(true);
|
||||
"https://example.com/hotel%20list/Z%C3%BCrich").build(true);
|
||||
UriComponents encoded = uriComponents.encode();
|
||||
assertEquals(new URI("http://example.com/hotel%20list/Z%C3%BCrich"), encoded.toUri());
|
||||
assertEquals(new URI("https://example.com/hotel%20list/Z%C3%BCrich"), encoded.toUri());
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -110,10 +110,10 @@ public class UriComponentsTests {
|
||||
@Test
|
||||
public void expand() {
|
||||
UriComponents uriComponents = UriComponentsBuilder.fromUriString(
|
||||
"http://example.com").path("/{foo} {bar}").build();
|
||||
"https://example.com").path("/{foo} {bar}").build();
|
||||
uriComponents = uriComponents.expand("1 2", "3 4");
|
||||
assertEquals("/1 2 3 4", uriComponents.getPath());
|
||||
assertEquals("http://example.com/1 2 3 4", uriComponents.toUriString());
|
||||
assertEquals("https://example.com/1 2 3 4", uriComponents.toUriString());
|
||||
}
|
||||
|
||||
@Test // SPR-13311
|
||||
@@ -132,18 +132,18 @@ public class UriComponentsTests {
|
||||
|
||||
@Test // SPR-12123
|
||||
public void port() {
|
||||
UriComponents uri1 = fromUriString("http://example.com:8080/bar").build();
|
||||
UriComponents uri2 = fromUriString("http://example.com/bar").port(8080).build();
|
||||
UriComponents uri3 = fromUriString("http://example.com/bar").port("{port}").build().expand(8080);
|
||||
UriComponents uri4 = fromUriString("http://example.com/bar").port("808{digit}").build().expand(0);
|
||||
UriComponents uri1 = fromUriString("https://example.com:8080/bar").build();
|
||||
UriComponents uri2 = fromUriString("https://example.com/bar").port(8080).build();
|
||||
UriComponents uri3 = fromUriString("https://example.com/bar").port("{port}").build().expand(8080);
|
||||
UriComponents uri4 = fromUriString("https://example.com/bar").port("808{digit}").build().expand(0);
|
||||
assertEquals(8080, uri1.getPort());
|
||||
assertEquals("http://example.com:8080/bar", uri1.toUriString());
|
||||
assertEquals("https://example.com:8080/bar", uri1.toUriString());
|
||||
assertEquals(8080, uri2.getPort());
|
||||
assertEquals("http://example.com:8080/bar", uri2.toUriString());
|
||||
assertEquals("https://example.com:8080/bar", uri2.toUriString());
|
||||
assertEquals(8080, uri3.getPort());
|
||||
assertEquals("http://example.com:8080/bar", uri3.toUriString());
|
||||
assertEquals("https://example.com:8080/bar", uri3.toUriString());
|
||||
assertEquals(8080, uri4.getPort());
|
||||
assertEquals("http://example.com:8080/bar", uri4.toUriString());
|
||||
assertEquals("https://example.com:8080/bar", uri4.toUriString());
|
||||
}
|
||||
|
||||
@Test(expected = IllegalStateException.class)
|
||||
@@ -163,14 +163,14 @@ public class UriComponentsTests {
|
||||
|
||||
@Test
|
||||
public void normalize() {
|
||||
UriComponents uriComponents = UriComponentsBuilder.fromUriString("http://example.com/foo/../bar").build();
|
||||
assertEquals("http://example.com/bar", uriComponents.normalize().toString());
|
||||
UriComponents uriComponents = UriComponentsBuilder.fromUriString("https://example.com/foo/../bar").build();
|
||||
assertEquals("https://example.com/bar", uriComponents.normalize().toString());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void serializable() throws Exception {
|
||||
UriComponents uriComponents = UriComponentsBuilder.fromUriString(
|
||||
"http://example.com").path("/{foo}").query("bar={baz}").build();
|
||||
"https://example.com").path("/{foo}").query("bar={baz}").build();
|
||||
ByteArrayOutputStream bos = new ByteArrayOutputStream();
|
||||
ObjectOutputStream oos = new ObjectOutputStream(bos);
|
||||
oos.writeObject(uriComponents);
|
||||
@@ -191,7 +191,7 @@ public class UriComponentsTests {
|
||||
|
||||
@Test
|
||||
public void equalsHierarchicalUriComponents() {
|
||||
String url = "http://example.com";
|
||||
String url = "https://example.com";
|
||||
UriComponents uric1 = UriComponentsBuilder.fromUriString(url).path("/{foo}").query("bar={baz}").build();
|
||||
UriComponents uric2 = UriComponentsBuilder.fromUriString(url).path("/{foo}").query("bar={baz}").build();
|
||||
UriComponents uric3 = UriComponentsBuilder.fromUriString(url).path("/{foo}").query("bin={baz}").build();
|
||||
|
||||
@@ -95,7 +95,7 @@ public class UriUtilsTests {
|
||||
public void encode() {
|
||||
assertEquals("Invalid encoded result", "foo", UriUtils.encode("foo", CHARSET));
|
||||
assertEquals("Invalid encoded result", "http%3A%2F%2Fexample.com%2Ffoo%20bar",
|
||||
UriUtils.encode("http://example.com/foo bar", CHARSET));
|
||||
UriUtils.encode("https://example.com/foo bar", CHARSET));
|
||||
}
|
||||
|
||||
@Test
|
||||
|
||||
@@ -169,7 +169,7 @@ public class UrlPathHelperTests {
|
||||
|
||||
//
|
||||
// suite of tests root requests for default servlets (SRV 11.2) on Websphere vs Tomcat and other containers
|
||||
// see: http://jira.springframework.org/browse/SPR-7064
|
||||
// see: https://jira.springframework.org/browse/SPR-7064
|
||||
//
|
||||
|
||||
|
||||
|
||||
@@ -92,41 +92,41 @@ public class WebUtilsTests {
|
||||
@Test
|
||||
public void isValidOrigin() {
|
||||
List<String> allowed = Collections.emptyList();
|
||||
assertTrue(checkValidOrigin("mydomain1.com", -1, "http://mydomain1.com", allowed));
|
||||
assertTrue(checkValidOrigin("mydomain1.com", -1, "https://mydomain1.com", allowed));
|
||||
assertFalse(checkValidOrigin("mydomain1.com", -1, "http://mydomain2.com", allowed));
|
||||
|
||||
allowed = Collections.singletonList("*");
|
||||
assertTrue(checkValidOrigin("mydomain1.com", -1, "http://mydomain2.com", allowed));
|
||||
|
||||
allowed = Collections.singletonList("http://mydomain1.com");
|
||||
assertTrue(checkValidOrigin("mydomain2.com", -1, "http://mydomain1.com", allowed));
|
||||
allowed = Collections.singletonList("https://mydomain1.com");
|
||||
assertTrue(checkValidOrigin("mydomain2.com", -1, "https://mydomain1.com", allowed));
|
||||
assertFalse(checkValidOrigin("mydomain2.com", -1, "http://mydomain3.com", allowed));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void isSameOrigin() {
|
||||
assertTrue(checkSameOrigin("http", "mydomain1.com", -1, "http://mydomain1.com"));
|
||||
assertTrue(checkSameOrigin("http", "mydomain1.com", -1, "http://mydomain1.com:80"));
|
||||
assertTrue(checkSameOrigin("http", "mydomain1.com", -1, "https://mydomain1.com"));
|
||||
assertTrue(checkSameOrigin("http", "mydomain1.com", -1, "https://www.mydomain1.com/"));
|
||||
assertTrue(checkSameOrigin("https", "mydomain1.com", 443, "https://mydomain1.com"));
|
||||
assertTrue(checkSameOrigin("https", "mydomain1.com", 443, "https://mydomain1.com:443"));
|
||||
assertTrue(checkSameOrigin("http", "mydomain1.com", 123, "http://mydomain1.com:123"));
|
||||
assertTrue(checkSameOrigin("http", "mydomain1.com", 123, "https://mydomain1.com:123"));
|
||||
assertTrue(checkSameOrigin("ws", "mydomain1.com", -1, "ws://mydomain1.com"));
|
||||
assertTrue(checkSameOrigin("wss", "mydomain1.com", 443, "wss://mydomain1.com"));
|
||||
|
||||
assertFalse(checkSameOrigin("http", "mydomain1.com", -1, "http://mydomain2.com"));
|
||||
assertFalse(checkSameOrigin("http", "mydomain1.com", -1, "https://mydomain1.com"));
|
||||
assertFalse(checkSameOrigin("http", "mydomain1.com", -1, "invalid-origin"));
|
||||
assertFalse(checkSameOrigin("https", "mydomain1.com", -1, "http://mydomain1.com"));
|
||||
assertFalse(checkSameOrigin("https", "mydomain1.com", -1, "https://mydomain1.com"));
|
||||
|
||||
// Handling of invalid origins as described in SPR-13478
|
||||
assertTrue(checkSameOrigin("http", "mydomain1.com", -1, "http://mydomain1.com/"));
|
||||
assertTrue(checkSameOrigin("http", "mydomain1.com", -1, "http://mydomain1.com:80/"));
|
||||
assertTrue(checkSameOrigin("http", "mydomain1.com", -1, "http://mydomain1.com/path"));
|
||||
assertTrue(checkSameOrigin("http", "mydomain1.com", -1, "http://mydomain1.com:80/path"));
|
||||
assertFalse(checkSameOrigin("http", "mydomain2.com", -1, "http://mydomain1.com/"));
|
||||
assertFalse(checkSameOrigin("http", "mydomain2.com", -1, "http://mydomain1.com:80/"));
|
||||
assertFalse(checkSameOrigin("http", "mydomain2.com", -1, "http://mydomain1.com/path"));
|
||||
assertFalse(checkSameOrigin("http", "mydomain2.com", -1, "http://mydomain1.com:80/path"));
|
||||
assertTrue(checkSameOrigin("http", "mydomain1.com", -1, "https://mydomain1.com/"));
|
||||
assertTrue(checkSameOrigin("http", "mydomain1.com", -1, "https://www.mydomain1.com/"));
|
||||
assertTrue(checkSameOrigin("http", "mydomain1.com", -1, "https://mydomain1.com/path"));
|
||||
assertTrue(checkSameOrigin("http", "mydomain1.com", -1, "https://www.mydomain1.com/path"));
|
||||
assertFalse(checkSameOrigin("http", "mydomain2.com", -1, "https://mydomain1.com/"));
|
||||
assertFalse(checkSameOrigin("http", "mydomain2.com", -1, "https://www.mydomain1.com/"));
|
||||
assertFalse(checkSameOrigin("http", "mydomain2.com", -1, "https://mydomain1.com/path"));
|
||||
assertFalse(checkSameOrigin("http", "mydomain2.com", -1, "https://www.mydomain1.com/path"));
|
||||
|
||||
// Handling of IPv6 hosts as described in SPR-13525
|
||||
assertTrue(checkSameOrigin("http", "[::1]", -1, "http://[::1]"));
|
||||
|
||||
@@ -484,7 +484,7 @@ public class PathPatternTests {
|
||||
// test exact matching
|
||||
checkMatches("test", "test");
|
||||
checkMatches("/test", "/test");
|
||||
checkMatches("http://example.org", "http://example.org");
|
||||
checkMatches("https://example.org", "https://example.org");
|
||||
checkNoMatch("/test.jpg", "test.jpg");
|
||||
checkNoMatch("test", "/test");
|
||||
checkNoMatch("/test", "test");
|
||||
|
||||
Reference in New Issue
Block a user