|
1 | 1 | package winstone; |
2 | 2 |
|
3 | 3 | import org.apache.commons.io.IOUtils; |
| 4 | +import org.eclipse.jetty.server.HttpConnectionFactory; |
4 | 5 | import org.eclipse.jetty.server.LowResourceMonitor; |
5 | 6 | import org.eclipse.jetty.server.ServerConnector; |
6 | 7 | import org.junit.Test; |
@@ -101,20 +102,24 @@ public void httpRedirect() throws Exception { |
101 | 102 | Map<String,String> args = new HashMap<>(); |
102 | 103 | args.put("warfile", "target/test-classes/test.war"); |
103 | 104 | args.put("prefix", "/"); |
104 | | - // TODO not sure why but random port doesn't work when using redirect |
105 | | - args.put("httpPort", "55708"); // 0 |
106 | | - args.put("httpsPort", "55709"); // 0 |
| 105 | + args.put("httpPort", "0"); |
| 106 | + args.put("httpsPort", "0"); |
107 | 107 | args.put("httpsRedirectHttp", "true"); |
108 | 108 | winstone = new Launcher(args); |
109 | 109 | List<ServerConnector> serverConnectors = |
110 | 110 | Arrays.asList( winstone.server.getConnectors() ) |
111 | 111 | .stream().map(connector -> (ServerConnector)connector ).collect(Collectors.toList()); |
112 | | - int httpPort = serverConnectors.stream() |
113 | | - .filter(serverConnector -> !serverConnector.getDefaultProtocol().startsWith("SSL")) |
114 | | - .findFirst().get().getLocalPort(); |
| 112 | + |
115 | 113 | int httpsPort = serverConnectors.stream() |
116 | 114 | .filter(serverConnector -> serverConnector.getDefaultProtocol().startsWith("SSL")) |
117 | 115 | .findFirst().get().getLocalPort(); |
| 116 | + ServerConnector scNonSsl = serverConnectors.stream() |
| 117 | + .filter(serverConnector -> !serverConnector.getDefaultProtocol().startsWith("SSL")) |
| 118 | + .findFirst().get(); |
| 119 | + int httpPort = scNonSsl.getLocalPort(); |
| 120 | + |
| 121 | + scNonSsl.getConnectionFactory(HttpConnectionFactory.class).getHttpConfiguration().setSecurePort(httpsPort); |
| 122 | + |
118 | 123 | requestRedirect(new TrustEveryoneManager(), httpPort, httpsPort); |
119 | 124 |
|
120 | 125 | // also verify that directly accessing the resource works. |
|
0 commit comments