Jérôme,

That is really cool. I was quite sure I was missing some point !

Are you not worried nevertheless to sync compatible changes between
org.restlet/ and org.restlet.gae/ in the long term ? For example when
ServerResource evolves or for bug fixes.

Best regards,
Rémi

On Thu, Apr 16, 2009 at 10:09, Jerome Louvel <[email protected]>wrote:

>  Hi Remi,
>
> As long as the extension only relies on GAE's white listed JRE classes, it
> will work without any modification (example: the FreeMarker extension). Your
> dream can come true already :-)
>
> In the recent version of "org.restlet.gae.jar", the packages are the same
> as in "org.restlet.jar" so it should be easy to leverage Restlet extensions
> that are compatible with GAE.
>
> As a result, it should be possible to deploy existing Restlet applications
> in GAE without any modification, as long as their are compatible with GAE's
> environment of course.
>
>  Best regards,
> Jerome Louvel
> --
> Restlet ~ Founder and Lead developer ~ http://www.restlet.org
> Noelios Technologies ~ Co-founder ~ http://www.noelios.com
>
>
>
>  ------------------------------
> *De :* [email protected] [mailto:[email protected]] *De la part de
> * Rémi Dewitte
> *Envoyé :* mercredi 15 avril 2009 23:02
> *À :* [email protected]
> *Objet :* Re: Re: Google AppEngine and Restlet
>
> Jérôme,
>
> As far as I understand, we can't reuse Restlet extensions made for
> org.restlet.* with org.restlet.gae.* classes, can we ?
> I have thought at a time that GAE would be a deployment option for our
> restlet applications. With the gae copy, we may not reuse an application as
> straitforward as I may have dreamed. I see Restlet extensible enough not to
> have to copy the full code base. Would that dream have been possible with
> 1.1 with the API and Engine separation ?
>
> Why should not we support this scenario ;) ?
>
> Thanks,
> Rémi
>
> On Wed, Apr 15, 2009 at 22:29, Jerome Louvel <[email protected]>wrote:
>
>> Hi Richy,
>>
>> Thanks for sharing your experience!
>>
>> When I did the adaptation of Restlet to GAE (resulting in the new
>> "org.restlet.gae.jar" available in recent snapshots), I took the source
>> code
>> and had to remove many classes that didn't compile due to the lack of
>> sockets and SSL support (mainly the internal connectors).
>>
>> I'm surprised that the "org.restlet.jar" works despite this and I'm not
>> sure
>> if we should support this usage scenario. In addition,
>> "org.restlet.gae.jar"
>> includes the ServerServlet, the JavaMail and the JDK's Net connectors. In
>> the future, it will leverage other GAE APIs.
>>
>> Regarding FreeMarker, the ContextTemplateLoader I just added to SVN trunk
>> will probably help simplifying its usage in GAE with Restlet. Let me know
>> if
>> you have a chance to test it.
>>
>> Best regards,
>> Jerome Louvel
>> --
>> Restlet ~ Founder and Lead developer ~ http://www.restlet.org
>> Noelios Technologies ~ Co-founder ~ http://www.noelios.com
>>
>>
>>
>> -----Message d'origine-----
>> De : [email protected] [mailto:[email protected]]
>> Envoyé : samedi 11 avril 2009 14:49
>> À : [email protected]
>> Objet : RE: Re: Google AppEngine and Restlet
>>
>> After a bit of experimentation I have managed to get a Restlet/Freemarker
>> stack running on GAE.
>>
>> The basic steps I took were :
>>
>> 1. Modify ServletConverter and ServletContextAdapter as detailed below.
>>
>> Basically this means replacing the calls to new ServletLogger with
>> Logger.getLogger e.g. in the ServletConverter constructor do something
>> like...
>>
>> super(new Context(Logger.getLogger(ServletConverter.class.getName())));
>>
>> 2. Add org.freemarker.jar, org.restlet.jar, org.restlet.ext.servlet.jar
>> and
>> org.restlet.ext.freemarker.jar to the WEB-INF/lib of your google app
>> project
>> and add to the build path.
>>
>> 3. Follow usual setup for getting Restlet working in a Servlet
>> environment.
>> Folow the HelloWorld tutorial in the getting started docs -  it should
>> work
>> fine locally (even without doing step 1. However, you'll need to replace
>> these calls in order to get it to run in the real GAE)
>>
>> 4.  Freemarker was a little more tricky, but not much.  Create a
>> freemarker
>> configuration that uses the class template loader and put this in the
>> Restlet Application context attributes.
>>
>> 5. Make sure your templates are somewhere on the class path.
>>
>> 6. Use the TemplateRepresentation along with your freemarker config from
>> the
>> context attributes
>>
>> 7. Make sure it works locally and upload to the app engine.
>>
>> Hopefully I'll get a chance to write this up properly over easter, but it
>> wasn't too bad and looks promising so far.
>>
>> Cheers,
>>
>> Richy
>> http://wiredupandfiredup.com
>>
>> ------------------------------------------------------
>>
>> http://restlet.tigris.org/ds/viewMessage.do?dsForumId=4447&dsMessageId=16485
>> 97
>>
>> ------------------------------------------------------
>>
>> http://restlet.tigris.org/ds/viewMessage.do?dsForumId=4447&dsMessageId=1732294
>>
>
>

------------------------------------------------------
http://restlet.tigris.org/ds/viewMessage.do?dsForumId=4447&dsMessageId=1743103

Reply via email to