Whoops, thanks for the catch.
 
In any case, I retract the advice :)  It turns out that the Service Encoder 
system in Tap4.0 is fully capable of handling this situation.  I've written one 
that maps URLs of type "/Context/Root/Value1/Value2/Value3" to something like 
"/Context/app?service=MyService&page=ReceiverPage&param1=Value1&param2=Value2&param3=Value3"
 where Root, MyService, ReceiverPage, and the list of param names is 
configurable in the instantiation of the custom encoder, and Root is 
essentially an identifier that determines which encoder to use (rather than 
using file extension).  I then use ReceiverPage as a dispatcher to handler 
pages for the different levels.
 
If anyone would like, I'd be happy to share the code, although it'll require a 
minor bit of cleanup to remove some app specific stuff.
 
jeff

________________________________

From: Erik Hatcher [mailto:[EMAIL PROTECTED]
Sent: Wed 8/3/2005 8:41 PM
To: Tapestry users
Subject: Re: Tapestry for a "virtual" web site



Just be sure to prefix all sp parameters with "S"... 
&sp=Scategory&sp=Ssubcategory... so that the data squeezer is happy.

     Erik

On Aug 3, 2005, at 4:27 PM, Jeff Lubetkin wrote:

> Looks like https://urlrewrite.dev.java.net/ might be the right tool
> here.  You can use it to map incoming urls like
> /catalog/category/subcategory/productname to something like
> /app?
> service=external&page=Catalog&sp=category&sp=subcategory&sp=product
> name
>
> jeff
>
> -----Original Message-----
> From: Patrick Casey [mailto:[EMAIL PROTECTED]
> Sent: Wednesday, August 03, 2005 3:28 PM
> To: 'Tapestry users'
> Subject: RE: Tapestry for a "virtual" web site
>
>
>     Never mind, I see what he's trying to do and you're right; he's
> not
> worries about parameter encoding, he's looking at the locator side of
> the
> URL.
>
>     --- Pat
>
>
>> -----Original Message-----
>> From: Patrick Casey [mailto:[EMAIL PROTECTED]
>> Sent: Wednesday, August 03, 2005 3:19 PM
>> To: 'Tapestry users'
>> Subject: RE: Tapestry for a "virtual" web site
>>
>>
>>     How would it not work? You just write a handler like:
>>
>> public void activateExternalPage(Object[] parameters, IRequestCycle
>>
> cycle)
>
>> {
>>     String catalog = (String) parameters[0];
>>     String category = (String) parameters[1];
>>     String subcategory = (String) parameters[2];
>>     String productname = (String) parameters[3];
>>     ... do some stuff?
>> }
>>
>>     Or am I missing some aspect of the problem?
>>
>>     --- Pat
>>
>>
>>> -----Original Message-----
>>> From: Jamie Orchard-Hays [mailto:[EMAIL PROTECTED]
>>> Sent: Wednesday, August 03, 2005 3:14 PM
>>> To: Tapestry users
>>> Subject: Re: Tapestry for a "virtual" web site
>>>
>>> IExternal? Do you mean IExternalPage? That doesn't do what your
>>> suggesting, Pat.
>>>
>>> What I'd do us use FURLs* and then for the virtual directories, use
>>>
> a
>
>>> URL rewrite of some sort. I don't know how flexible and powerful the
>>> options are for FURLs in 4.0--maybe that would get you all the way
>>> there.
>>>
>>> Jamie
>>>
>>> On Aug 3, 2005, at 5:53 PM, Patrick Casey wrote:
>>>
>>>
>>>>
>>>>     Have you looked at IExternal? It should let your pages respond
>>>>
> to
>
>>>> arbitrarily structured URLs.
>>>>
>>>>     --- Pat
>>>>
>>>>
>>>>
>>>>> -----Original Message-----
>>>>> From: Christophe [mailto:[EMAIL PROTECTED]
>>>>> Sent: Wednesday, August 03, 2005 2:48 PM
>>>>> To: Tapestry users
>>>>> Subject: Tapestry for a "virtual" web site
>>>>>
>>>>> Hi,
>>>>>
>>>>> I'm looking at using Tapestry for a web site that has particular
>>>>> requirements for how the URLs are structured.  It's a product
>>>>> catalog,
>>>>> and the requirement is that the URLs are of the form:
>>>>>
>>>>>     /catalog/category/subcategory/productname
>>>>>
>>>>> (possibly more than one subcategory)  For example:
>>>>>
>>>>>     /catalog/cookware/pots/some_big_pot
>>>>>
>>>>> Intermediate URLs are also available:
>>>>>
>>>>>     /catalog/cookware/pots/
>>>>>
>>>>> These URLs don't correspond to actual directories and files.
>>>>> Instead,
>>>>> they're generated on the fly from page templates querying the
>>>>> database.
>>>>>
>>>>> Is this possible with Tapestry?  Even a general pointer would be
>>>>>
> most
>
>>>>> helpful.  Thanks!
>>>>>
>>>>>
>>>>>
>>>>>
> ---------------------------------------------------------------------
>
>>>>> To unsubscribe, e-mail:
>>>>>
> [EMAIL PROTECTED]
>
>>>>> For additional commands, e-mail: tapestry-user-
>>>>> [EMAIL PROTECTED]
>>>>>
>>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
> ---------------------------------------------------------------------
>
>>>> To unsubscribe, e-mail:
>>>>
> [EMAIL PROTECTED]
>
>>>> For additional commands, e-mail:
>>>>
> [EMAIL PROTECTED]
>
>>>>
>>>>
>>>>
>>>
>>>
>>>
>>>
> ---------------------------------------------------------------------
>
>>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>>> For additional commands, e-mail:
>>>
> [EMAIL PROTECTED]
>
>>
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>> For additional commands, e-mail: tapestry-user-
>> [EMAIL PROTECTED]
>>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to