Hi,
I have following setup in my project
remote java client running RMI over HTTP tunneling calls to weblogic server sitting behind apache proxy server.
Client --> Apache HTTP Proxy Server (running weblogic proxy) --> multiple Weblogic 9.2 servers.
The client is supposed to lookup EJBs deployed on multiple weblogic servers using single entry point which is an HTTP apache server.
Client looks up initial context using PROVIDER_URL as
http://APACHE_IP:PORT/ABC where ABC tells apache server to forward the call to weblogic server A. If client EJB lookup URL has XYZ (
http://APACHE_IP:PORT/XYZ) then apache needs to route the call to weblogic server B.
Apache server has settings to lookup the end of the URL and forward the call to appropriate weblogic server.
This setup is not working because whenever a request is made from the client, regardless of the provider URL given, all calls from the client gets converted by weblogic.jar (running on the clients classpath) to something like
/bea_wls_internal/HTTPClntLogin/a.tun?wl-login=http+dummy+WLREQS+8.1.5+dummy+%0A&rand=3524334727933247191&AS=255&HL=19 HTTP/1.1
I never get my unique sting ABC or XYZ when the call reaches apache server (access log shows something like below instead of actual URL from the client.
127.0.0.1 - - [13/Jan/2011:19:28:20 -0600] "GET /bea_wls_internal/HTTPClntLogin/a.tun?wl-login=http+dummy+WLREQS+8.1.5+dummy+%0A&rand=3524334727933247191&AS=255&HL=19 HTTP/1.1" 200 342)
Is there any way I can get my real URL at the server and then logically forward the call to the appropriate backend weblogic server? Has any one faced this issue before?