If you are interested, I found a way to avoid the problem, it doesn't solve it, but at least it allows me to continue to migrate my application from Tomcat to Weblogic.
The solution is to have a 'weblogic.xml' file in the same directory as the web.xml one, in this this file you can use the following parameter
 
  <session-param>
   <param-name>
     URLRewritingEnabled
   </param-name>
   <param-value>
      false
   </param-value>
  </session-param>
 
in the <session-descriptor> section
Here is the link for the documentation of this Xml file.
 
 
As I said, this solution does not really solve the problem but is a workaround.
 
I already post the problem in the Weblogic newsgroup, but no answer yet, as soon as I receive a real solution I will let you know.
 
Thierry
 
 

Thierry Cools
 
Senior Java Developer
S1 Brussels
Kleine Kloosterstraat, 23
1932 st. Stevens-Woluwe
Belgium
Tel : +32 2 200 43 82
Email : [EMAIL PROTECTED]
----- Original Message -----
From: Zhiyong Li
Sent: Thursday, January 11, 2001 7:11 PM
Subject: RE: Strange problem using Weblogic 6.0

I had the same problem. Is there a work around from either Struts or
WebLogic (any WebLogic people out there)?

Thx,
Zhiyong


-----Original Message-----
From: Craig R. McClanahan [mailto:[EMAIL PROTECTED]]
Sent: Thursday, January 11, 2001 1:03 PM
To: [EMAIL PROTECTED]
Subject: Re: Strange problem using Weblogic 6.0


Thierry Cools wrote:

>  Hi Craig, Thanks for your explanations, but the problem is different,
maybe I
> was not very clear in my first mail. The problem is that, as you can
see in
> the adress link, Weblogic add '/' characters in the jsessionid and the
servlet
> engine doesn't seems to be able to recognize that the session id is
not a part
> of the context path, so that the context path contains the real
context path +
> the session id, the result of this is that the application can not
access all
> following links because of this. I hope it was more clear this time.
Thanks
> for your help,Thierry
> Thierry Cools

This looks like a bug in the way WebLogic is doing URL rewriting.

The session id is required (by the servlet spec) to be passed as a
*path*
parameter, not a *query* parameter.  According to the RFC for URL syntax
(I
believe it's 2396, but don't have it available at the moment to check),
the
overall syntax goes like this:

    scheme://host:port/resource-path;path-parameters?query-parameters

in other words, if I start with a URL like this:

    http://myhost/myapp/logon.do?name=value

I should end up with a URL like this:

    http://myhost/myapp/logon.do;jsessionid=12345?name=value

(which is what Tomcat and every other container I've tested does).  It
looks to
me like Weblogic is sticking the session id before the "/logon.do" part,
which
basically screws up the resource-path part of your URL.

Craig


Reply via email to