I want the HTTP redirect to work on the WebSphere Application Server Liberty Profile (WLP). For instance: -
When the user enters: http://localhost:8080/helloworld browser should automatically switch (redirect) to https://localhost:9443/helloworld
To achieve this, I followed this up, section 6.2, p. 136.
The following is an example of server.xml and web.xml: -
server.xml
<server description="new server"> <featureManager> <feature>jsp-2.2</feature> <feature>wab-1.0</feature> <feature>jaxrs-1.1</feature> <feature>blueprint-1.0</feature> <feature>localConnector-1.0</feature> <feature>ssl-1.0</feature> <feature>appSecurity-2.0</feature> </featureManager> <httpEndpoint host="localhost" httpPort="8081" httpsPort="9442" id="defaultHttpEndpoint"> </httpEndpoint> <applicationMonitor updateTrigger="mbean"/> <keyStore id="defaultKeyStore" password="{xor}Lz4sLCgwLTtu"/> <application id="Hello.app" location="Hello.app.eba" name="Hello.app" type="eba"/>
web.xml
<?xml version="1.0" encoding="UTF-8"?> <web-app id="WebApp_ID" version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"> <display-name>Hello</display-name> <security-constraint> <display-name>HTTPS Redirect Security Constraint</display-name> <web-resource-collection> <web-resource-name>Sample Web Service service</web-resource-name> <url-pattern>/Hello</url-pattern> <http-method>GET</http-method> </web-resource-collection> <user-data-constraint> <transport-guarantee>CONFIDENTIAL</transport-guarantee> </user-data-constraint> </security-constraint> </web-app>
The <servlet> and <servlet-mapping> tags have been <servlet> for short.
Below are the versions that I use: - Java 7, WLP 8.5.5, Eclipse Juno, Google Chrome.
Any help, advice on why the HTTPS redirect does not work would be greatly appreciated.
source share