Cool idea :)

Though, for the implementaion, wouldn't you have been better to use the
wrapper pattern, rather than dynamic proxies :)

Cam

> -----Original Message-----
> From: [EMAIL PROTECTED] 
> [mailto:[EMAIL PROTECTED] On 
> Behalf Of Jérôme BERNARD
> Sent: Tuesday, 30 September 2003 1:30 AM
> To: [EMAIL PROTECTED]
> Subject: RE: [OS-webwork] Advanced URL mapping?
> 
> 
> I have created a new issue in JIRA
> (http://jira.opensymphony.com/secure/ViewIssue.jspa?key=WW-326
> ) and submitted a new servlet that extends ServletDispatcher 
> and provides such a functionality. I also provided a way to 
> shorten even more the URL by assuming that if the first 
> parameter name is not specified then it is supposed to be the 
> name of the action.
> 
> This allows to replace the following URL 
> http://myhost.com/article/article/123
> with this URL http://myhost.com/article/123.
> 
> Any code review welcomed! :-p
> 
> Jérôme.
> 
> Robert Douglass <[EMAIL PROTECTED]>:
> 
> > I think this is the relevant code, from 
> > org.apache.turbine.util.parser.DefaultParameterParser. As I 
> understand 
> > it, Turbine folks avoid URLs like foo/bar?id=1812 in favor of 
> > foo/bar/id/1812. I've never used this, and I can't remember 
> right off 
> > exactly how the servlet container knows which part is the 
> path info, 
> > but essentially, they assume that the path info follows the pattern 
> > name_1/value_1/...name_n/value_n. The advantage is supposed to be 
> > search-engine friendly URLs from completely dynamic 
> applications. This 
> > gets touted by the Turbine community as a great feature (and it may 
> > be). I'd love to have this available, but as you can see 
> below, it is 
> > easy enough to implement that anyone can do it as soon as they want 
> > it. I don't really need it at the moment, so I'll let 
> someone else do 
> > it.
> > 
> > -Robert
> > 
> > // Also cache any pathinfo variables that are passed around as
> >         // if they are query string data.
> >         try
> >         {
> >             StringTokenizer st =
> >                     new StringTokenizer(request.getPathInfo(), "/");
> >             boolean isNameTok = true;
> >             String pathPart = null;
> >             while (st.hasMoreTokens())
> >             {
> >                 if (isNameTok)
> >                 {
> >                     tmp = 
> java.net.URLDecoder.decode(st.nextToken());
> >                     isNameTok = false;
> >                 }
> >                 else
> >                 {
> >                     pathPart = 
> java.net.URLDecoder.decode(st.nextToken());
> >                     if (tmp.length() > 0)
> >                     {
> >                         add(convert(tmp), pathPart); //R.D. 
> this add 
> > the params to their internal param implementation, see below*
> >                     }
> >                     isNameTok = true;
> >                 }
> >             }
> >         }
> >         catch (Exception e)
> >         {
> >             // If anything goes wrong above, don't worry about it.
> >             // Chances are that the path info was wrong anyways and
> >             // things that depend on it being right will fail later
> >             // and should be caught later.
> >         }
> > 
> > 
> > * from super-class BaseValueParser
> > /**
> >      * Random access storage for parameter data.  The keys 
> must always be
> >      * Strings.  The values will be arrays of Strings.
> >      */
> >     private Map parameters = new HashMap();
> > 
> > -----Original Message-----
> > From: [EMAIL PROTECTED]
> > [mailto:[EMAIL PROTECTED] 
> Behalf Of 
> > Jerome BERNARD
> > Sent: Sunday, September 28, 2003 9:51 PM
> > To: [EMAIL PROTECTED]
> > Subject: Re: [OS-webwork] Advanced URL mapping?
> > 
> > 
> > Could you give some insights about the way Turbine handle URLs? Any 
> > pointers?
> > 
> > Jérôme.
> > 
> > 
> > 
> > -------------------------------------------------------
> > This sf.net email is sponsored by:ThinkGeek
> > Welcome to geek heaven.
> > http://thinkgeek.com/sf 
> > _______________________________________________
> > Opensymphony-webwork mailing list 
> > [EMAIL PROTECTED]
> > https://lists.sourceforge.net/lists/listinfo/opensymphony-webwork
> > 
> 
> 
> 
> 
> -------------------------------------------------------
> This sf.net email is sponsored by:ThinkGeek
> Welcome to geek heaven.
> http://thinkgeek.com/sf 
> _______________________________________________
> Opensymphony-webwork mailing list 
> [EMAIL PROTECTED]
> https://lists.sourceforge.net/lists/listinfo/opensymphony-webwork
> 




-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
_______________________________________________
Opensymphony-webwork mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/opensymphony-webwork

Reply via email to