You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tapestry.apache.org by Alfonso Quiroga <al...@gmail.com> on 2009/09/07 07:06:50 UTC

auto java reloading depends on package?

Hi!
I have java classes in root.components... root.pages and root.base as
usual. That works perfectly...
but I was needing a new class to store in session, just a java bean
(WizardBean) and I dropped it in "root.wizard", and auto-reloading
does NOT work in that package. I tried to put in root.base.wizard, but
there was an exception. Where can I put it for reloading works? thanks
in advance!

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
For additional commands, e-mail: users-help@tapestry.apache.org


Re: auto java reloading depends on package?

Posted by "Juan E. Maya" <ma...@gmail.com>.
If u r using tomcat u can use the sysdeo plugin, it's not as good as
JavaRebel but u don't have to use those "tricks"

On Tue, Sep 8, 2009 at 7:00 PM, Alfonso Quiroga<al...@gmail.com> wrote:
> Sebastian: yes I can see the problem of reloading other objets, that's
> why I use javarebel by now in this special cases. Answering your
> question, I'm developing an open source system, so I don't expect
> payment for it, and the tip was for using the trial period a longer
> time, I didn't say "don't buy it", that wasn't my idea, thanks
>
> On Tue, Sep 8, 2009 at 5:07 AM, Sebastian
> Hennebrueder<us...@laliluna.de> wrote:
>> Hello Alfonso,
>>
>> it is not only the session, it is any kind of library which has parsed the
>> bean for example or any kind of bean having a relation ship to the bean. It
>> might be simpler to provide your own reloading mechanism for a complete
>> module of the application.
>>
>> I am surprised that you publish tips on destroying other people work and
>> income. Don't you expect payment for your work as well?
>>
>>
>> --
>> Best Regards / Viele Grüße
>>
>> Sebastian Hennebrueder
>> -----
>> Software Developer and Trainer for Hibernate / Java Persistence
>> http://www.laliluna.de
>>
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
>> For additional commands, e-mail: users-help@tapestry.apache.org
>>
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
> For additional commands, e-mail: users-help@tapestry.apache.org
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
For additional commands, e-mail: users-help@tapestry.apache.org


Re: auto java reloading depends on package?

Posted by Alfonso Quiroga <al...@gmail.com>.
Sebastian: yes I can see the problem of reloading other objets, that's
why I use javarebel by now in this special cases. Answering your
question, I'm developing an open source system, so I don't expect
payment for it, and the tip was for using the trial period a longer
time, I didn't say "don't buy it", that wasn't my idea, thanks

On Tue, Sep 8, 2009 at 5:07 AM, Sebastian
Hennebrueder<us...@laliluna.de> wrote:
> Hello Alfonso,
>
> it is not only the session, it is any kind of library which has parsed the
> bean for example or any kind of bean having a relation ship to the bean. It
> might be simpler to provide your own reloading mechanism for a complete
> module of the application.
>
> I am surprised that you publish tips on destroying other people work and
> income. Don't you expect payment for your work as well?
>
>
> --
> Best Regards / Viele Grüße
>
> Sebastian Hennebrueder
> -----
> Software Developer and Trainer for Hibernate / Java Persistence
> http://www.laliluna.de
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
> For additional commands, e-mail: users-help@tapestry.apache.org
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
For additional commands, e-mail: users-help@tapestry.apache.org


Re: auto java reloading depends on package?

Posted by Sebastian Hennebrueder <us...@laliluna.de>.
Hello Alfonso,

it is not only the session, it is any kind of library which has parsed 
the bean for example or any kind of bean having a relation ship to the 
bean. It might be simpler to provide your own reloading mechanism for a 
complete module of the application.

I am surprised that you publish tips on destroying other people work and 
income. Don't you expect payment for your work as well?


-- 
Best Regards / Viele Grüße

Sebastian Hennebrueder
-----
Software Developer and Trainer for Hibernate / Java Persistence
http://www.laliluna.de



---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
For additional commands, e-mail: users-help@tapestry.apache.org


Re: auto java reloading depends on package?

Posted by Alfonso Quiroga <al...@gmail.com>.
Howard, first: thanks for the detailed answer. I only was thinking
about web-tier-beans with no-dependecy, simple POJOs, but I think is
tricky too, because you can have in the session the first version of
"FooBean", and when you change it, the session will have a old
implementation.
   So by now, for this specific case (I use wizard beans in web
project) I'm using javarebel 2 and works OK, cons: it gives you a
little overhead to your application, so I suggest to use it only when
neccesary. The trial version gives you 30 day, because it doesn't have
a license (javarebel.lic)... the tip is.. it creates a license with
random name in %TEMP% (in my case.. C:\Documents and
Settings\Administrador\Configuración local\Temp). The file name is
random (6ZeEzVhue14Kw.tmp for me) and it's always 1kb. Just keep this
folder clean and use it. I hope this is usefull for someone. Thanks
again


On Mon, Sep 7, 2009 at 1:42 PM, Howard Lewis Ship<hl...@gmail.com> wrote:
> Doing auto-reloading right is very tricky.  You have to have control over
> the lifecycle of objects, and the class loaders for those objects. For
> Tapestry components this is possible and is, in effect, a side-effect of the
> transforming technology that allows components to operate.  To allow the
> same kind of reloading beyond components is more involved, and would turn
> Tapestry into an application server, rather than a framework.
> Simply reloading a class may not be enough.  For example, what if the class
> being reloaded is a module class, thus changing the configuration of the IoC
> container (including the configuration passed to some services)?
>
> Changing even a service implementation can have a rippling effect: the new
> implementation may have new dependencies. Values obtained from the old
> service may have been passed to other services; with external XML
> configuration it might be possible to track this, but with Tapestry's
> Java-centric approach, it is virtually impossible to know what data has
> moved about the system.
>
> On Mon, Sep 7, 2009 at 9:03 AM, Alfonso Quiroga <al...@gmail.com>wrote:
>
>> Thanks for the fast answer. I think is very common in a
>> web-application to have own web-tier objects, my example are Wizard
>> Beans that I store in sessions. It would be great in the future to
>> auto-reload this beans, by now I will try javarebel and I'll tell you
>> my experience. Thanks again
>>
>> On Mon, Sep 7, 2009 at 12:53 PM, Howard Lewis Ship<hl...@gmail.com>
>> wrote:
>> > Only components, inside the designated packages, can be auto-reloaded.
>> >
>> > On Sun, Sep 6, 2009 at 10:06 PM, Alfonso Quiroga <alfonsosebaq@gmail.com
>> >wrote:
>> >
>> >> Hi!
>> >> I have java classes in root.components... root.pages and root.base as
>> >> usual. That works perfectly...
>> >> but I was needing a new class to store in session, just a java bean
>> >> (WizardBean) and I dropped it in "root.wizard", and auto-reloading
>> >> does NOT work in that package. I tried to put in root.base.wizard, but
>> >> there was an exception. Where can I put it for reloading works? thanks
>> >> in advance!
>> >>
>> >> ---------------------------------------------------------------------
>> >> To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
>> >> For additional commands, e-mail: users-help@tapestry.apache.org
>> >>
>> >>
>> >
>> >
>> > --
>> > Howard M. Lewis Ship
>> >
>> > Creator of Apache Tapestry
>> >
>> > The source for Tapestry training, mentoring and support. Contact me to
>> learn
>> > how I can get you up and productive in Tapestry fast!
>> >
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
>> For additional commands, e-mail: users-help@tapestry.apache.org
>>
>>
>
>
> --
> Howard M. Lewis Ship
>
> Creator of Apache Tapestry
>
> The source for Tapestry training, mentoring and support. Contact me to learn
> how I can get you up and productive in Tapestry fast!
>

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
For additional commands, e-mail: users-help@tapestry.apache.org


Re: auto java reloading depends on package?

Posted by Howard Lewis Ship <hl...@gmail.com>.
Doing auto-reloading right is very tricky.  You have to have control over
the lifecycle of objects, and the class loaders for those objects. For
Tapestry components this is possible and is, in effect, a side-effect of the
transforming technology that allows components to operate.  To allow the
same kind of reloading beyond components is more involved, and would turn
Tapestry into an application server, rather than a framework.
Simply reloading a class may not be enough.  For example, what if the class
being reloaded is a module class, thus changing the configuration of the IoC
container (including the configuration passed to some services)?

Changing even a service implementation can have a rippling effect: the new
implementation may have new dependencies. Values obtained from the old
service may have been passed to other services; with external XML
configuration it might be possible to track this, but with Tapestry's
Java-centric approach, it is virtually impossible to know what data has
moved about the system.

On Mon, Sep 7, 2009 at 9:03 AM, Alfonso Quiroga <al...@gmail.com>wrote:

> Thanks for the fast answer. I think is very common in a
> web-application to have own web-tier objects, my example are Wizard
> Beans that I store in sessions. It would be great in the future to
> auto-reload this beans, by now I will try javarebel and I'll tell you
> my experience. Thanks again
>
> On Mon, Sep 7, 2009 at 12:53 PM, Howard Lewis Ship<hl...@gmail.com>
> wrote:
> > Only components, inside the designated packages, can be auto-reloaded.
> >
> > On Sun, Sep 6, 2009 at 10:06 PM, Alfonso Quiroga <alfonsosebaq@gmail.com
> >wrote:
> >
> >> Hi!
> >> I have java classes in root.components... root.pages and root.base as
> >> usual. That works perfectly...
> >> but I was needing a new class to store in session, just a java bean
> >> (WizardBean) and I dropped it in "root.wizard", and auto-reloading
> >> does NOT work in that package. I tried to put in root.base.wizard, but
> >> there was an exception. Where can I put it for reloading works? thanks
> >> in advance!
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
> >> For additional commands, e-mail: users-help@tapestry.apache.org
> >>
> >>
> >
> >
> > --
> > Howard M. Lewis Ship
> >
> > Creator of Apache Tapestry
> >
> > The source for Tapestry training, mentoring and support. Contact me to
> learn
> > how I can get you up and productive in Tapestry fast!
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
> For additional commands, e-mail: users-help@tapestry.apache.org
>
>


-- 
Howard M. Lewis Ship

Creator of Apache Tapestry

The source for Tapestry training, mentoring and support. Contact me to learn
how I can get you up and productive in Tapestry fast!

Re: auto java reloading depends on package?

Posted by Alfonso Quiroga <al...@gmail.com>.
Thanks for the fast answer. I think is very common in a
web-application to have own web-tier objects, my example are Wizard
Beans that I store in sessions. It would be great in the future to
auto-reload this beans, by now I will try javarebel and I'll tell you
my experience. Thanks again

On Mon, Sep 7, 2009 at 12:53 PM, Howard Lewis Ship<hl...@gmail.com> wrote:
> Only components, inside the designated packages, can be auto-reloaded.
>
> On Sun, Sep 6, 2009 at 10:06 PM, Alfonso Quiroga <al...@gmail.com>wrote:
>
>> Hi!
>> I have java classes in root.components... root.pages and root.base as
>> usual. That works perfectly...
>> but I was needing a new class to store in session, just a java bean
>> (WizardBean) and I dropped it in "root.wizard", and auto-reloading
>> does NOT work in that package. I tried to put in root.base.wizard, but
>> there was an exception. Where can I put it for reloading works? thanks
>> in advance!
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
>> For additional commands, e-mail: users-help@tapestry.apache.org
>>
>>
>
>
> --
> Howard M. Lewis Ship
>
> Creator of Apache Tapestry
>
> The source for Tapestry training, mentoring and support. Contact me to learn
> how I can get you up and productive in Tapestry fast!
>

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
For additional commands, e-mail: users-help@tapestry.apache.org


Re: auto java reloading depends on package?

Posted by Howard Lewis Ship <hl...@gmail.com>.
Only components, inside the designated packages, can be auto-reloaded.

On Sun, Sep 6, 2009 at 10:06 PM, Alfonso Quiroga <al...@gmail.com>wrote:

> Hi!
> I have java classes in root.components... root.pages and root.base as
> usual. That works perfectly...
> but I was needing a new class to store in session, just a java bean
> (WizardBean) and I dropped it in "root.wizard", and auto-reloading
> does NOT work in that package. I tried to put in root.base.wizard, but
> there was an exception. Where can I put it for reloading works? thanks
> in advance!
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
> For additional commands, e-mail: users-help@tapestry.apache.org
>
>


-- 
Howard M. Lewis Ship

Creator of Apache Tapestry

The source for Tapestry training, mentoring and support. Contact me to learn
how I can get you up and productive in Tapestry fast!