I using Wicket 6.4.0 and am deploying to WebLogic server version 10.3.5.0 I have set up a simple HttpsMapper in my WebApplication like this:

@Override
public void init()
{
        ...

setRootRequestMapper(new HttpsMapper(getRootRequestMapper(), new HttpsConfig()));
}

I have a login page with the @RequireHttps annotation on it (set up with Wicket Auth Roles). Everything works great when I deploy it to Weblogic by itself. The problem comes in when the application sits behind Apache using the Weblogic Apache Plugin (http://docs.oracle.com/cd/E11035_01/wls100/plugins/apache.html). When it tries to do the switch to https, it appends the weblogic context root to the end of the path. So here's how it looks:

Weblogic Only (no problem):

Non-ssl - http://myserver.mycompany.com/documentation
after ssl switch - https://myserver.mycompany.com/documentation

Apache in front of weblogic

Non-ssl: http://documentation.mycompany.com
After ssl switch: https://documentation.mycompany.com/documentation <-- appends /documentation on the end

So then we get a 404.  Here's what the Apache config snippets look like:

<VirtualHost *:80>
ServerName documentation.mycompany.com <http://developer-nightly.networkfleet.com/>

   ErrorLog logs/documentation_error_log
   CustomLog logs/documentation_access_log common

WebLogicCluster myserver.mycompany.com <http://starsky.networkfleet.com/>
   SetHandler weblogic-handler
   PathPrepend /documentation

   TransferLog logs/documentation_request_log

   SetOutputFilter DEFLATE
</VirtualHost>

<VirtualHost *:443>
ServerName documentation.mycompany.com <http://developer-nightly.networkfleet.com/>

   ErrorLog logs/documentation_error_log
   CustomLog logs/documentation_access_log common

WebLogicCluster myserver.mycompany.com <http://starsky.networkfleet.com/>
   SetHandler weblogic-handler
   WLProxySSL ON
   SecureProxy ON
   PathPrepend /documentation

   TransferLog logs/documentation_ssl_request_log

   #   Per-Server Logging:
   #   The home of a custom SSL log file. Use this when you want a
   #   compact non-error SSL logfile on a virtual host basis.
   CustomLog logs/documentation_ssl_request_log \
         "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"

   Include conf.d/ssl.inc
   SetOutputFilter DEFLATE
</VirtualHost>

I looked into XForwardedRequestWrapperFactory, but I'm not sure that it fits this case? Any help would be appreciated.

Thanks,
Tim

Reply via email to