ERXRouteLink and ERXRouteUrlUtils are doing the job quite well.
> Just saw that (and ERXRouteURL). Will take a look at those.
>
>> probably not exactly what you want, but there's ERXRouteUrlUtils ... it's
>> making a bunch of assumptions about the route syntax, though.
>>
>> On Apr 29, 2011, at 10:39 AM, Pascal Robert wrote:
>>
>>>
>>> Le 2011-04-29 à 09:35, Mike Schrag a écrit :
>>>
>>>> you would have to replace them yourself, but it's sort of unclear what you
>>>> would replace them WITH ... they're not valid urls without having an
>>>> actual value in those slots.
>>>
>>> Yes, I do know that for "show" pages, I will have to add the IDs myself.
>>> That's not only for the manifest, I'm also playing with the automatic HTML
>>> routing to make the WOWODC mini app (to view the schedule + the presenters)
>>> so I need to generate the URLs to go from the "index" page (list of
>>> presentations) to the session detail page. If we had a "restRouteUrl"
>>> method, I would just need to add the ID of the conference session object to
>>> the URL returned by "restRouteUrl".
>>>
>>>> On Apr 29, 2011, at 9:30 AM, Pascal Robert wrote:
>>>>
>>>>>
>>>>> Le 2011-04-28 à 20:23, Pascal Robert a écrit :
>>>>>
>>>>>> Yes, I know that method doesn't exist, but I'm looking for something
>>>>>> that would generate the URL (without the host) for the routes. The
>>>>>> reason? I want to add them to a HTML5 cache manifest so if I could
>>>>>> dynamically generate the list of URLs, that would be cool! I didn't see
>>>>>> anything obvious for this in ERXRoute or ERXRouteRequestHandler.
>>>>>>
>>>>>> So, how can I find those URLs a la directActionURLForActionNamed but for
>>>>>> REST routes (especially the ones using HTTP GET)?
>>>>>
>>>>> I was able to do part of it like this:
>>>>>
>>>>> public WOActionResults manifestAction() {
>>>>> WOResponse response = new WOResponse();
>>>>> StringBuffer content = new StringBuffer();
>>>>> content.append("CACHE MANIFEST\n");
>>>>> content.append("CACHE:\n");
>>>>> String baseUrl =
>>>>> this.context()._urlWithRequestHandlerKey(ERXRouteRequestHandler.Key,
>>>>> null, null, false);
>>>>> content.append(baseUrl + "/sessions.html" + "\n");
>>>>> response.setContent(content.toString());
>>>>> response.setHeader("text/cache-manifest", "Content-Type");
>>>>> return response;
>>>>> }
>>>>>
>>>>> That work, but I still have to add the last part of the URL. I tried with:
>>>>>
>>>>> for (ERXRoute route: Application.restRequestHandler().routes()) {
>>>>> if (Method.Get.equals(route.method())) {
>>>>> content.append(baseUrl + route.routePattern().toString + "\n");
>>>>> }
>>>>> }
>>>>>
>>>>> But I didn't find a way remove the regex constructs (I guess I would use
>>>>> string.replace to remove them).
>>>>>
>>>>>
>>>>> --
>>>>> Pascal Robert
>>>>> [email protected]
>>>>>
>>>>> WOWODC 2011 : July 1-2-3, Montreal. wowodc.com
>>>>>
>>>>> AIM/iChat : MacTICanada
>>>>> LinkedIn : http://www.linkedin.com/in/macti
>>>>> Twitter : pascal_robert
>>>>>
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> Do not post admin requests to the list. They will be ignored.
>>>>> Webobjects-dev mailing list ([email protected])
>>>>> Help/Unsubscribe/Update your Subscription:
>>>>> http://lists.apple.com/mailman/options/webobjects-dev/mschrag%40pobox.com
>>>>>
>>>>> This email sent to [email protected]
>>>>
>>>
>>
>
> _______________________________________________
> Do not post admin requests to the list. They will be ignored.
> Webobjects-dev mailing list ([email protected])
> Help/Unsubscribe/Update your Subscription:
> http://lists.apple.com/mailman/options/webobjects-dev/probert%40macti.ca
>
> This email sent to [email protected]
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list ([email protected])
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com
This email sent to [email protected]