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/archive%40mail-archive.com
This email sent to [email protected]