There are certainly some limitations with LCR imposed by the different
servlet container implementations; the ability to scan the classpath
for class files within packages, and to resolve a loaded class to a
URL is going far beyond whats in the servlet spec.

Jetty is sensible; the class files are easy to find, the class loaders
make sense, the URLs are standard jar: URLs.

Tomcat works differently, with an unhappy tendency to copy resources
to a secondary location once, use its own format URLs for those
resources, and not copy changes to the real file over the the
secondary location.

On Thu, Nov 20, 2008 at 8:33 AM, Peter Stavrinides
<[EMAIL PROTECTED]> wrote:
> The truth is LCR wont work correctly with vanilla Tomcat (as mentioned by 
> others the maven plugin for Tomcat may work, but personally I had to fiddle 
> with it to get it working... it was sketchy in tandem with non Tapestry 
> filters and anything else out of the ordinary), whereas jetty just works.
>
> Web tools platform Tomcat (no maven plugin) picks up changes and does a 
> partial restart, which is far from ideal because:
> a) The session is lost
> b) Its pretty slow! In a sizable application with other j2ee modules attached 
> this is very noticeable, whereas the jetty implementation works instantly
>
> Some of our developers use Tomcat because we have a requirement to work with 
> multiple modules from source (not jars)... yes, there is probably a way to do 
> this better with maven and the jetty plugin, but I spent hours trying and 
> failed to configure it. Recently I found: 
> http://maven.apache.org/maven-1.x/using/multiproject.html, but haven't had a 
> chance to look more closely into this. It would be fantastic if there was 
> more detail on how to configure/tweak enterprise tapestry projects for maven. 
> I am not sure about Netbeans, but in eclipse, LCR can fail if your build path 
> is not set correctly, and the exact configuration may differ between maven 
> plugin versions and eclipse versions.
>
> cheers
> Peter
>
>
> ----- Original Message -----
> From: "Hugo Palma" <[EMAIL PROTECTED]>
> To: "Tapestry users" <users@tapestry.apache.org>, "Alex Kotchnev" <[EMAIL 
> PROTECTED]>
> Sent: Thursday, 20 November, 2008 5:05:51 PM GMT +02:00 Athens, Beirut, 
> Bucharest, Istanbul
> Subject: Re: Live class reloading problems
>
> I would say that this problems with LCR should be dealt with case by case.
> I'm sure that "LCR only works on Jetty" is false because i have it working
> in tomcat with no additional configuration. It just worked.
>
> That's not to say there aren't any problems or limitations with the LCR
> implementation, i'm sure there are. But i think the way to go would be for
> everyone to whom LCR doesn't work as expected and documented to create an
> issue describing the exact environment they're executing on and the
> community will take it from there.
>
> On Thu, Nov 20, 2008 at 2:15 PM, Alex Kotchnev <[EMAIL PROTECTED]> wrote:
>
>> This is awkward.. if live class reloading (LCR) doesn't work on Tomcat, and
>> Glassfish, because JBoss uses Tomcat under the covers, I'd guess that it
>> doesn't work on JBoss either. Although I haven't used webLogic or Websphere,
>> I can't make an intelligent guess on whether it works there or not.. But it
>> seems very misleading to state in the docs that T5 has LCR, if it doesn't
>> work with probably 50%+ of the java app servers/servlet containers (I guess
>> that Tomcat, Jboss, and glassfish cover probably 75%+ of java web app
>> developers). If Tomcat had a miniscule market share, then one could be
>> justified in saying 'T5 works, Tomcat is broken', however w/ things being as
>> I described the majority of deployed T5 apps don't support LCR.
>>
>> Now, if Jetty is the only setup that works reliably (that is LCR w/o having
>> to redeploy), wouldn't it serve everyone best to clearly state that in the
>> docs? That is, the docs should explicitly describe that this is a special
>> setup for development purposes that works only w/ Jetty (or at least clearly
>> state that it doesn't work w Tomcat, Glassfish, Jboss, etc)? I understand
>> that it is abit unfair to T5 as it was intentionally designed to support
>> LCR; however the docs are most useful when they describe things accurately .
>>
>> What does everyone think? Should I file a jira issue for this?
>>
>> cheers,
>>
>> Alex Kotchnev
>>
>> - original message -
>> Subject:        Re: Live class reloading problems
>> From:   "Thiago H. de Paula Figueiredo" <[EMAIL PROTECTED]>
>> Date:           11/20/2008 10:50
>>
>> Em Thu, 20 Nov 2008 01:27:18 -0300, akochnev <[EMAIL PROTECTED]>
>> escreveu:
>>
>> > I'm running into some trouble w/ the live class reloading feature (the
>> > template reloading works fine), tested both on Tomcat 6 ,  Glassfish 3
>> > Prelude, and Glassfish V2 (all three servers support exploded war
>> > deployment).
>>
>> As far as I know, Tapestry's live class reloading never really worked in
>> Tomcat (because of it, not because of Tapestry), but I haven't tested it
>> for a while. I don't know about Glassfish.
>>
>> --
>> Thiago H. de Paula Figueiredo
>> Independent Java consultant, developer, and instructor
>> http://www.arsmachina.com.br/thiago
>>
>> ---------------------------------------------------------------------
>> 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]
>
>



-- 
Howard M. Lewis Ship

Creator Apache Tapestry and Apache HiveMind

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

Reply via email to