On Sat, 20 Sep 2003, Jing Zhou wrote: > Date: Sat, 20 Sep 2003 19:17:24 -0500 > From: Jing Zhou <[EMAIL PROTECTED]> > To: Craig R. McClanahan <[EMAIL PROTECTED]>, > Struts Users Mailing List <[EMAIL PROTECTED]> > Subject: Re: Servlet Path & Path Info on Weblogic 8.1 vs. Struts > > See my comments near the end. > > Jing > ----- Original Message ----- > From: "Craig R. McClanahan" <[EMAIL PROTECTED]> > To: "Struts Users Mailing List" <[EMAIL PROTECTED]>; "Jing > Zhou" <[EMAIL PROTECTED]> > Sent: Saturday, September 20, 2003 1:16 PM > Subject: Re: Servlet Path & Path Info on Weblogic 8.1 vs. Struts > > > > On Sat, 20 Sep 2003, Jing Zhou wrote: > > > > > Date: Sat, 20 Sep 2003 13:01:08 -0500 > > > From: Jing Zhou <[EMAIL PROTECTED]> > > > Reply-To: Struts Users Mailing List <[EMAIL PROTECTED]>, > > > Jing Zhou <[EMAIL PROTECTED]> > > > To: Struts Users Mailing List <[EMAIL PROTECTED]> > > > Subject: Servlet Path & Path Info on Weblogic 8.1 vs. Struts > > > > > > Hi, > > > > > > Recently we tested Carrier on Weblogic 8.1 and found that > > > Weblogic interprets servlet path and path info differently > > > from what Struts expects. > > > > > > Here are our settings for an application module. The context > > > path is /guide, the module prefix is /training.org, and one of > > > action paths is /math1.do (representing a testing web form). > > > Of course, the extension mapping is used (*.do). > > > > > > The request URI is /guide/training.org/math1.do, as > > > agreed by both Struts and Weblogic. But, in Struts, > > > the servlet path is /training.org/math1.do and > > > path info is null. While in Weblogic, the servlet path is > > > /training.org and path info is /math1.do. > > > > > > Having a different interpretation than Struts, Weblogic 8.1 > > > completely messes up the mechanism in Struts that > > > identifies application modules. We always find the default > > > module because after stripping off the prefix /training.org > > > in its servlet path, empty string is the left. > > > > > > The behaviors of Weblogic are consistent for all such > > > request URIs in our testing. Does anyone make a > > > multi-module web application working on Weblogic 8.1 > > > based on extension mapping? It is hard to believe this is > > > a bug in Weblogic 8.1, is this a legal interpretation > > > from the perspective of Java Servlet Specification? > > > > > > > Looks like an incorrect interpretation to me. In Section 4.4 there are > > descriptions of what the path elements are supposed to be, and in > > particular an example where the context path is "/catalog" and there is a > > "*.jsp" mapping: > > > > Request URI: /catalog/help/feedback.jsp > > > > Context Path: /catalog > > Servlet Path: /help/feedback.jsp > > Path Info: (null) > > > > As you can see, this is exactly analogous to the case you describe. > > > > Just out of curiousity, does it still fail if you change your module path > > ("/training.org") to something that does not include a period in it? The > > WebLogic servlet container might be getting confused by what looks like an > > extension there. > > I did a quick test for this. If there is no period in the module prefix, > Weblogic > would return /training/math1.do for the servlet path and null for path info. > This is expected. > > But we need periods in the prefixes for modularization purposes. If there > are > no *double standards* to interpret the servlet path and path info, and if we > are sure it is a bug, we have to find a way to work around this Weblogic > specific bug/behavior.
There are no double standards -- the behavior is either spec compliant or it is not. This appears to be a bug in WebLogic that should be reported to them. Craig --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]