You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tapestry.apache.org by Howard Lewis Ship <hl...@gmail.com> on 2010/09/01 19:00:08 UTC
Updated code for live service reloading
Yesterday I checked in a revised version of the live service reloading code.
The new code is a bit smarter about extending the class-loader
umbrella to inner classes and base classes. This should make protected
method invocations work correctly (in most cases).
There may be room for additional analysis.
I'd appreciate it if people could try out the snapshot and see how
well it flies. I really don't want to make live service reloading
default to off.
--
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!
(971) 678-5210
http://howardlewisship.com
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
For additional commands, e-mail: dev-help@tapestry.apache.org
Re: Updated code for live service reloading
Posted by Howard Lewis Ship <hl...@gmail.com>.
It's a bit of a mess.
The umbrella extends to inner classes and base classes, even if the
base classes themselves are from a library.
I have proposed extending it further, to identify classes in which
non-public (protected or package private) members are accessed. This
too is do-able, but, yes, it can change the semantics of static
variables.
... which is why we use an IoC container, right?
Let's continue to see if what I've put together is good enough. The
perfect is the enemy of the good.
On Fri, Sep 3, 2010 at 10:26 AM, Igor Drobiazko
<ig...@gmail.com> wrote:
> Life class reloading doesn't affect classes packed into jars. Thus no
> problems with libraries.
>
> On Fri, Sep 3, 2010 at 5:49 PM, Oliver Geisser <ol...@gmail.com>wrote:
>
>> Hi,
>>
>> maybe I misunderstand something but I do not believe that this is
>> "harmless".
>>
>> This will corrupt all singleton pattern implementations which are based on
>> a
>> static
>> getInstance() method and a static field.
>>
>> Or wouldn't it?
>>
>> You may argue that the singleton pattern is "evil" but nevertheless there
>> are a lot
>> of libraries out there implementing it.
>>
>>
>> Greetings
>> Olli
>>
>>
>> 2010/9/3 Howard Lewis Ship <hl...@gmail.com>
>>
>> > On Thu, Sep 2, 2010 at 3:10 PM, Igor Drobiazko <igor.drobiazko@gmail.com
>> >
>> > wrote:
>> > > How that? You would need to load that class together with the service
>> > from
>> > > same classloader. What if a ServiceMessages is accessed by several
>> > services?
>> >
>> > Each service will end up with its own copy of the class (including its
>> > static variables). That may not be desirable, or it may be an unwanted
>> > leaky abstraction, but harmless.
>> >
>> > >
>> > >
>> > > On Fri, Sep 3, 2010 at 12:01 AM, Howard Lewis Ship <hl...@gmail.com>
>> > wrote:
>> > >
>> > >> I can actually fix that, by bringing ServiceMessages "under the
>> > umbrella".
>> > >>
>> > >> On Thu, Sep 2, 2010 at 2:55 PM, Igor Drobiazko <
>> > igor.drobiazko@gmail.com>
>> > >> wrote:
>> > >> > If you have a class like the following one inside the services
>> package
>> > >> and
>> > >> > access the foo() method inside a service, you'll experience
>> > >> > IllegalAccessException. You can fix the problem by changing the
>> > >> visibility
>> > >> > of the foo() method to public.
>> > >> >
>> > >> > public class ServiceMessages {
>> > >> > static String foo(){
>> > >> > return "foo";
>> > >> > }
>> > >> > }
>> > >> >
>> > >> > On Thu, Sep 2, 2010 at 11:24 PM, Howard Lewis Ship <
>> hlship@gmail.com>
>> > >> wrote:
>> > >> >
>> > >> >> Tell me more about static utility methods ... it may be possible to
>> > >> >> make those work as well.
>> > >> >>
>> > >> >> On Thu, Sep 2, 2010 at 12:30 PM, Igor Drobiazko
>> > >> >> <ig...@gmail.com> wrote:
>> > >> >> > I tested my apps today with the recent snapshots. It looks good.
>> No
>> > >> >> problems
>> > >> >> > with protected or package private methods in super classes. There
>> > are
>> > >> >> still
>> > >> >> > some problems with static utility methods but it is ok. I think
>> we
>> > are
>> > >> >> ready
>> > >> >> > for a beta release now.
>> > >> >> >
>> > >> >> > On Wed, Sep 1, 2010 at 11:00 PM, Igor Drobiazko <
>> > >> >> igor.drobiazko@gmail.com>wrote:
>> > >> >> >
>> > >> >> >> That's great. I'll try it out and report the results.
>> > >> >> >>
>> > >> >> >>
>> > >> >> >> On Wed, Sep 1, 2010 at 7:00 PM, Howard Lewis Ship <
>> > hlship@gmail.com
>> > >> >> >wrote:
>> > >> >> >>
>> > >> >> >>> Yesterday I checked in a revised version of the live service
>> > >> reloading
>> > >> >> >>> code.
>> > >> >> >>>
>> > >> >> >>> The new code is a bit smarter about extending the class-loader
>> > >> >> >>> umbrella to inner classes and base classes. This should make
>> > >> protected
>> > >> >> >>> method invocations work correctly (in most cases).
>> > >> >> >>>
>> > >> >> >>> There may be room for additional analysis.
>> > >> >> >>>
>> > >> >> >>> I'd appreciate it if people could try out the snapshot and see
>> > how
>> > >> >> >>> well it flies. I really don't want to make live service
>> > reloading
>> > >> >> >>> default to off.
>> > >> >> >>>
>> > >> >> >>> --
>> > >> >> >>> 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!
>> > >> >> >>>
>> > >> >> >>> (971) 678-5210
>> > >> >> >>> http://howardlewisship.com
>> > >> >> >>>
>> > >> >> >>>
>> > >> ---------------------------------------------------------------------
>> > >> >> >>> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
>> > >> >> >>> For additional commands, e-mail: dev-help@tapestry.apache.org
>> > >> >> >>>
>> > >> >> >>>
>> > >> >> >>
>> > >> >> >>
>> > >> >> >> --
>> > >> >> >> Best regards,
>> > >> >> >>
>> > >> >> >> Igor Drobiazko
>> > >> >> >> http://tapestry5.de
>> > >> >> >>
>> > >> >> >
>> > >> >> >
>> > >> >> >
>> > >> >> > --
>> > >> >> > Best regards,
>> > >> >> >
>> > >> >> > Igor Drobiazko
>> > >> >> > http://tapestry5.de
>> > >> >> >
>> > >> >>
>> > >> >>
>> > >> >>
>> > >> >> --
>> > >> >> 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!
>> > >> >>
>> > >> >> (971) 678-5210
>> > >> >> http://howardlewisship.com
>> > >> >>
>> > >> >>
>> ---------------------------------------------------------------------
>> > >> >> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
>> > >> >> For additional commands, e-mail: dev-help@tapestry.apache.org
>> > >> >>
>> > >> >>
>> > >> >
>> > >> >
>> > >> > --
>> > >> > Best regards,
>> > >> >
>> > >> > Igor Drobiazko
>> > >> > http://tapestry5.de
>> > >> >
>> > >>
>> > >>
>> > >>
>> > >> --
>> > >> 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!
>> > >>
>> > >> (971) 678-5210
>> > >> http://howardlewisship.com
>> > >>
>> > >> ---------------------------------------------------------------------
>> > >> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
>> > >> For additional commands, e-mail: dev-help@tapestry.apache.org
>> > >>
>> > >>
>> > >
>> > >
>> > > --
>> > > Best regards,
>> > >
>> > > Igor Drobiazko
>> > > http://tapestry5.de
>> > >
>> >
>> >
>> >
>> > --
>> > 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!
>> >
>> > (971) 678-5210
>> > http://howardlewisship.com
>> >
>> > ---------------------------------------------------------------------
>> > To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
>> > For additional commands, e-mail: dev-help@tapestry.apache.org
>> >
>> >
>>
>>
>> --
>> og
>>
>
>
>
> --
> Best regards,
>
> Igor Drobiazko
> http://tapestry5.de
>
--
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!
(971) 678-5210
http://howardlewisship.com
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
For additional commands, e-mail: dev-help@tapestry.apache.org
Re: Updated code for live service reloading
Posted by Igor Drobiazko <ig...@gmail.com>.
Life class reloading doesn't affect classes packed into jars. Thus no
problems with libraries.
On Fri, Sep 3, 2010 at 5:49 PM, Oliver Geisser <ol...@gmail.com>wrote:
> Hi,
>
> maybe I misunderstand something but I do not believe that this is
> "harmless".
>
> This will corrupt all singleton pattern implementations which are based on
> a
> static
> getInstance() method and a static field.
>
> Or wouldn't it?
>
> You may argue that the singleton pattern is "evil" but nevertheless there
> are a lot
> of libraries out there implementing it.
>
>
> Greetings
> Olli
>
>
> 2010/9/3 Howard Lewis Ship <hl...@gmail.com>
>
> > On Thu, Sep 2, 2010 at 3:10 PM, Igor Drobiazko <igor.drobiazko@gmail.com
> >
> > wrote:
> > > How that? You would need to load that class together with the service
> > from
> > > same classloader. What if a ServiceMessages is accessed by several
> > services?
> >
> > Each service will end up with its own copy of the class (including its
> > static variables). That may not be desirable, or it may be an unwanted
> > leaky abstraction, but harmless.
> >
> > >
> > >
> > > On Fri, Sep 3, 2010 at 12:01 AM, Howard Lewis Ship <hl...@gmail.com>
> > wrote:
> > >
> > >> I can actually fix that, by bringing ServiceMessages "under the
> > umbrella".
> > >>
> > >> On Thu, Sep 2, 2010 at 2:55 PM, Igor Drobiazko <
> > igor.drobiazko@gmail.com>
> > >> wrote:
> > >> > If you have a class like the following one inside the services
> package
> > >> and
> > >> > access the foo() method inside a service, you'll experience
> > >> > IllegalAccessException. You can fix the problem by changing the
> > >> visibility
> > >> > of the foo() method to public.
> > >> >
> > >> > public class ServiceMessages {
> > >> > static String foo(){
> > >> > return "foo";
> > >> > }
> > >> > }
> > >> >
> > >> > On Thu, Sep 2, 2010 at 11:24 PM, Howard Lewis Ship <
> hlship@gmail.com>
> > >> wrote:
> > >> >
> > >> >> Tell me more about static utility methods ... it may be possible to
> > >> >> make those work as well.
> > >> >>
> > >> >> On Thu, Sep 2, 2010 at 12:30 PM, Igor Drobiazko
> > >> >> <ig...@gmail.com> wrote:
> > >> >> > I tested my apps today with the recent snapshots. It looks good.
> No
> > >> >> problems
> > >> >> > with protected or package private methods in super classes. There
> > are
> > >> >> still
> > >> >> > some problems with static utility methods but it is ok. I think
> we
> > are
> > >> >> ready
> > >> >> > for a beta release now.
> > >> >> >
> > >> >> > On Wed, Sep 1, 2010 at 11:00 PM, Igor Drobiazko <
> > >> >> igor.drobiazko@gmail.com>wrote:
> > >> >> >
> > >> >> >> That's great. I'll try it out and report the results.
> > >> >> >>
> > >> >> >>
> > >> >> >> On Wed, Sep 1, 2010 at 7:00 PM, Howard Lewis Ship <
> > hlship@gmail.com
> > >> >> >wrote:
> > >> >> >>
> > >> >> >>> Yesterday I checked in a revised version of the live service
> > >> reloading
> > >> >> >>> code.
> > >> >> >>>
> > >> >> >>> The new code is a bit smarter about extending the class-loader
> > >> >> >>> umbrella to inner classes and base classes. This should make
> > >> protected
> > >> >> >>> method invocations work correctly (in most cases).
> > >> >> >>>
> > >> >> >>> There may be room for additional analysis.
> > >> >> >>>
> > >> >> >>> I'd appreciate it if people could try out the snapshot and see
> > how
> > >> >> >>> well it flies. I really don't want to make live service
> > reloading
> > >> >> >>> default to off.
> > >> >> >>>
> > >> >> >>> --
> > >> >> >>> 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!
> > >> >> >>>
> > >> >> >>> (971) 678-5210
> > >> >> >>> http://howardlewisship.com
> > >> >> >>>
> > >> >> >>>
> > >> ---------------------------------------------------------------------
> > >> >> >>> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
> > >> >> >>> For additional commands, e-mail: dev-help@tapestry.apache.org
> > >> >> >>>
> > >> >> >>>
> > >> >> >>
> > >> >> >>
> > >> >> >> --
> > >> >> >> Best regards,
> > >> >> >>
> > >> >> >> Igor Drobiazko
> > >> >> >> http://tapestry5.de
> > >> >> >>
> > >> >> >
> > >> >> >
> > >> >> >
> > >> >> > --
> > >> >> > Best regards,
> > >> >> >
> > >> >> > Igor Drobiazko
> > >> >> > http://tapestry5.de
> > >> >> >
> > >> >>
> > >> >>
> > >> >>
> > >> >> --
> > >> >> 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!
> > >> >>
> > >> >> (971) 678-5210
> > >> >> http://howardlewisship.com
> > >> >>
> > >> >>
> ---------------------------------------------------------------------
> > >> >> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
> > >> >> For additional commands, e-mail: dev-help@tapestry.apache.org
> > >> >>
> > >> >>
> > >> >
> > >> >
> > >> > --
> > >> > Best regards,
> > >> >
> > >> > Igor Drobiazko
> > >> > http://tapestry5.de
> > >> >
> > >>
> > >>
> > >>
> > >> --
> > >> 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!
> > >>
> > >> (971) 678-5210
> > >> http://howardlewisship.com
> > >>
> > >> ---------------------------------------------------------------------
> > >> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
> > >> For additional commands, e-mail: dev-help@tapestry.apache.org
> > >>
> > >>
> > >
> > >
> > > --
> > > Best regards,
> > >
> > > Igor Drobiazko
> > > http://tapestry5.de
> > >
> >
> >
> >
> > --
> > 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!
> >
> > (971) 678-5210
> > http://howardlewisship.com
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
> > For additional commands, e-mail: dev-help@tapestry.apache.org
> >
> >
>
>
> --
> og
>
--
Best regards,
Igor Drobiazko
http://tapestry5.de
Re: Updated code for live service reloading
Posted by Oliver Geisser <ol...@gmail.com>.
Hi,
maybe I misunderstand something but I do not believe that this is
"harmless".
This will corrupt all singleton pattern implementations which are based on a
static
getInstance() method and a static field.
Or wouldn't it?
You may argue that the singleton pattern is "evil" but nevertheless there
are a lot
of libraries out there implementing it.
Greetings
Olli
2010/9/3 Howard Lewis Ship <hl...@gmail.com>
> On Thu, Sep 2, 2010 at 3:10 PM, Igor Drobiazko <ig...@gmail.com>
> wrote:
> > How that? You would need to load that class together with the service
> from
> > same classloader. What if a ServiceMessages is accessed by several
> services?
>
> Each service will end up with its own copy of the class (including its
> static variables). That may not be desirable, or it may be an unwanted
> leaky abstraction, but harmless.
>
> >
> >
> > On Fri, Sep 3, 2010 at 12:01 AM, Howard Lewis Ship <hl...@gmail.com>
> wrote:
> >
> >> I can actually fix that, by bringing ServiceMessages "under the
> umbrella".
> >>
> >> On Thu, Sep 2, 2010 at 2:55 PM, Igor Drobiazko <
> igor.drobiazko@gmail.com>
> >> wrote:
> >> > If you have a class like the following one inside the services package
> >> and
> >> > access the foo() method inside a service, you'll experience
> >> > IllegalAccessException. You can fix the problem by changing the
> >> visibility
> >> > of the foo() method to public.
> >> >
> >> > public class ServiceMessages {
> >> > static String foo(){
> >> > return "foo";
> >> > }
> >> > }
> >> >
> >> > On Thu, Sep 2, 2010 at 11:24 PM, Howard Lewis Ship <hl...@gmail.com>
> >> wrote:
> >> >
> >> >> Tell me more about static utility methods ... it may be possible to
> >> >> make those work as well.
> >> >>
> >> >> On Thu, Sep 2, 2010 at 12:30 PM, Igor Drobiazko
> >> >> <ig...@gmail.com> wrote:
> >> >> > I tested my apps today with the recent snapshots. It looks good. No
> >> >> problems
> >> >> > with protected or package private methods in super classes. There
> are
> >> >> still
> >> >> > some problems with static utility methods but it is ok. I think we
> are
> >> >> ready
> >> >> > for a beta release now.
> >> >> >
> >> >> > On Wed, Sep 1, 2010 at 11:00 PM, Igor Drobiazko <
> >> >> igor.drobiazko@gmail.com>wrote:
> >> >> >
> >> >> >> That's great. I'll try it out and report the results.
> >> >> >>
> >> >> >>
> >> >> >> On Wed, Sep 1, 2010 at 7:00 PM, Howard Lewis Ship <
> hlship@gmail.com
> >> >> >wrote:
> >> >> >>
> >> >> >>> Yesterday I checked in a revised version of the live service
> >> reloading
> >> >> >>> code.
> >> >> >>>
> >> >> >>> The new code is a bit smarter about extending the class-loader
> >> >> >>> umbrella to inner classes and base classes. This should make
> >> protected
> >> >> >>> method invocations work correctly (in most cases).
> >> >> >>>
> >> >> >>> There may be room for additional analysis.
> >> >> >>>
> >> >> >>> I'd appreciate it if people could try out the snapshot and see
> how
> >> >> >>> well it flies. I really don't want to make live service
> reloading
> >> >> >>> default to off.
> >> >> >>>
> >> >> >>> --
> >> >> >>> 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!
> >> >> >>>
> >> >> >>> (971) 678-5210
> >> >> >>> http://howardlewisship.com
> >> >> >>>
> >> >> >>>
> >> ---------------------------------------------------------------------
> >> >> >>> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
> >> >> >>> For additional commands, e-mail: dev-help@tapestry.apache.org
> >> >> >>>
> >> >> >>>
> >> >> >>
> >> >> >>
> >> >> >> --
> >> >> >> Best regards,
> >> >> >>
> >> >> >> Igor Drobiazko
> >> >> >> http://tapestry5.de
> >> >> >>
> >> >> >
> >> >> >
> >> >> >
> >> >> > --
> >> >> > Best regards,
> >> >> >
> >> >> > Igor Drobiazko
> >> >> > http://tapestry5.de
> >> >> >
> >> >>
> >> >>
> >> >>
> >> >> --
> >> >> 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!
> >> >>
> >> >> (971) 678-5210
> >> >> http://howardlewisship.com
> >> >>
> >> >> ---------------------------------------------------------------------
> >> >> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
> >> >> For additional commands, e-mail: dev-help@tapestry.apache.org
> >> >>
> >> >>
> >> >
> >> >
> >> > --
> >> > Best regards,
> >> >
> >> > Igor Drobiazko
> >> > http://tapestry5.de
> >> >
> >>
> >>
> >>
> >> --
> >> 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!
> >>
> >> (971) 678-5210
> >> http://howardlewisship.com
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
> >> For additional commands, e-mail: dev-help@tapestry.apache.org
> >>
> >>
> >
> >
> > --
> > Best regards,
> >
> > Igor Drobiazko
> > http://tapestry5.de
> >
>
>
>
> --
> 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!
>
> (971) 678-5210
> http://howardlewisship.com
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
> For additional commands, e-mail: dev-help@tapestry.apache.org
>
>
--
og
Re: Updated code for live service reloading
Posted by Howard Lewis Ship <hl...@gmail.com>.
On Thu, Sep 2, 2010 at 3:10 PM, Igor Drobiazko <ig...@gmail.com> wrote:
> How that? You would need to load that class together with the service from
> same classloader. What if a ServiceMessages is accessed by several services?
Each service will end up with its own copy of the class (including its
static variables). That may not be desirable, or it may be an unwanted
leaky abstraction, but harmless.
>
>
> On Fri, Sep 3, 2010 at 12:01 AM, Howard Lewis Ship <hl...@gmail.com> wrote:
>
>> I can actually fix that, by bringing ServiceMessages "under the umbrella".
>>
>> On Thu, Sep 2, 2010 at 2:55 PM, Igor Drobiazko <ig...@gmail.com>
>> wrote:
>> > If you have a class like the following one inside the services package
>> and
>> > access the foo() method inside a service, you'll experience
>> > IllegalAccessException. You can fix the problem by changing the
>> visibility
>> > of the foo() method to public.
>> >
>> > public class ServiceMessages {
>> > static String foo(){
>> > return "foo";
>> > }
>> > }
>> >
>> > On Thu, Sep 2, 2010 at 11:24 PM, Howard Lewis Ship <hl...@gmail.com>
>> wrote:
>> >
>> >> Tell me more about static utility methods ... it may be possible to
>> >> make those work as well.
>> >>
>> >> On Thu, Sep 2, 2010 at 12:30 PM, Igor Drobiazko
>> >> <ig...@gmail.com> wrote:
>> >> > I tested my apps today with the recent snapshots. It looks good. No
>> >> problems
>> >> > with protected or package private methods in super classes. There are
>> >> still
>> >> > some problems with static utility methods but it is ok. I think we are
>> >> ready
>> >> > for a beta release now.
>> >> >
>> >> > On Wed, Sep 1, 2010 at 11:00 PM, Igor Drobiazko <
>> >> igor.drobiazko@gmail.com>wrote:
>> >> >
>> >> >> That's great. I'll try it out and report the results.
>> >> >>
>> >> >>
>> >> >> On Wed, Sep 1, 2010 at 7:00 PM, Howard Lewis Ship <hlship@gmail.com
>> >> >wrote:
>> >> >>
>> >> >>> Yesterday I checked in a revised version of the live service
>> reloading
>> >> >>> code.
>> >> >>>
>> >> >>> The new code is a bit smarter about extending the class-loader
>> >> >>> umbrella to inner classes and base classes. This should make
>> protected
>> >> >>> method invocations work correctly (in most cases).
>> >> >>>
>> >> >>> There may be room for additional analysis.
>> >> >>>
>> >> >>> I'd appreciate it if people could try out the snapshot and see how
>> >> >>> well it flies. I really don't want to make live service reloading
>> >> >>> default to off.
>> >> >>>
>> >> >>> --
>> >> >>> 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!
>> >> >>>
>> >> >>> (971) 678-5210
>> >> >>> http://howardlewisship.com
>> >> >>>
>> >> >>>
>> ---------------------------------------------------------------------
>> >> >>> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
>> >> >>> For additional commands, e-mail: dev-help@tapestry.apache.org
>> >> >>>
>> >> >>>
>> >> >>
>> >> >>
>> >> >> --
>> >> >> Best regards,
>> >> >>
>> >> >> Igor Drobiazko
>> >> >> http://tapestry5.de
>> >> >>
>> >> >
>> >> >
>> >> >
>> >> > --
>> >> > Best regards,
>> >> >
>> >> > Igor Drobiazko
>> >> > http://tapestry5.de
>> >> >
>> >>
>> >>
>> >>
>> >> --
>> >> 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!
>> >>
>> >> (971) 678-5210
>> >> http://howardlewisship.com
>> >>
>> >> ---------------------------------------------------------------------
>> >> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
>> >> For additional commands, e-mail: dev-help@tapestry.apache.org
>> >>
>> >>
>> >
>> >
>> > --
>> > Best regards,
>> >
>> > Igor Drobiazko
>> > http://tapestry5.de
>> >
>>
>>
>>
>> --
>> 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!
>>
>> (971) 678-5210
>> http://howardlewisship.com
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
>> For additional commands, e-mail: dev-help@tapestry.apache.org
>>
>>
>
>
> --
> Best regards,
>
> Igor Drobiazko
> http://tapestry5.de
>
--
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!
(971) 678-5210
http://howardlewisship.com
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
For additional commands, e-mail: dev-help@tapestry.apache.org
Re: Updated code for live service reloading
Posted by Igor Drobiazko <ig...@gmail.com>.
How that? You would need to load that class together with the service from
same classloader. What if a ServiceMessages is accessed by several services?
On Fri, Sep 3, 2010 at 12:01 AM, Howard Lewis Ship <hl...@gmail.com> wrote:
> I can actually fix that, by bringing ServiceMessages "under the umbrella".
>
> On Thu, Sep 2, 2010 at 2:55 PM, Igor Drobiazko <ig...@gmail.com>
> wrote:
> > If you have a class like the following one inside the services package
> and
> > access the foo() method inside a service, you'll experience
> > IllegalAccessException. You can fix the problem by changing the
> visibility
> > of the foo() method to public.
> >
> > public class ServiceMessages {
> > static String foo(){
> > return "foo";
> > }
> > }
> >
> > On Thu, Sep 2, 2010 at 11:24 PM, Howard Lewis Ship <hl...@gmail.com>
> wrote:
> >
> >> Tell me more about static utility methods ... it may be possible to
> >> make those work as well.
> >>
> >> On Thu, Sep 2, 2010 at 12:30 PM, Igor Drobiazko
> >> <ig...@gmail.com> wrote:
> >> > I tested my apps today with the recent snapshots. It looks good. No
> >> problems
> >> > with protected or package private methods in super classes. There are
> >> still
> >> > some problems with static utility methods but it is ok. I think we are
> >> ready
> >> > for a beta release now.
> >> >
> >> > On Wed, Sep 1, 2010 at 11:00 PM, Igor Drobiazko <
> >> igor.drobiazko@gmail.com>wrote:
> >> >
> >> >> That's great. I'll try it out and report the results.
> >> >>
> >> >>
> >> >> On Wed, Sep 1, 2010 at 7:00 PM, Howard Lewis Ship <hlship@gmail.com
> >> >wrote:
> >> >>
> >> >>> Yesterday I checked in a revised version of the live service
> reloading
> >> >>> code.
> >> >>>
> >> >>> The new code is a bit smarter about extending the class-loader
> >> >>> umbrella to inner classes and base classes. This should make
> protected
> >> >>> method invocations work correctly (in most cases).
> >> >>>
> >> >>> There may be room for additional analysis.
> >> >>>
> >> >>> I'd appreciate it if people could try out the snapshot and see how
> >> >>> well it flies. I really don't want to make live service reloading
> >> >>> default to off.
> >> >>>
> >> >>> --
> >> >>> 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!
> >> >>>
> >> >>> (971) 678-5210
> >> >>> http://howardlewisship.com
> >> >>>
> >> >>>
> ---------------------------------------------------------------------
> >> >>> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
> >> >>> For additional commands, e-mail: dev-help@tapestry.apache.org
> >> >>>
> >> >>>
> >> >>
> >> >>
> >> >> --
> >> >> Best regards,
> >> >>
> >> >> Igor Drobiazko
> >> >> http://tapestry5.de
> >> >>
> >> >
> >> >
> >> >
> >> > --
> >> > Best regards,
> >> >
> >> > Igor Drobiazko
> >> > http://tapestry5.de
> >> >
> >>
> >>
> >>
> >> --
> >> 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!
> >>
> >> (971) 678-5210
> >> http://howardlewisship.com
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
> >> For additional commands, e-mail: dev-help@tapestry.apache.org
> >>
> >>
> >
> >
> > --
> > Best regards,
> >
> > Igor Drobiazko
> > http://tapestry5.de
> >
>
>
>
> --
> 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!
>
> (971) 678-5210
> http://howardlewisship.com
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
> For additional commands, e-mail: dev-help@tapestry.apache.org
>
>
--
Best regards,
Igor Drobiazko
http://tapestry5.de
Re: Updated code for live service reloading
Posted by Howard Lewis Ship <hl...@gmail.com>.
I can actually fix that, by bringing ServiceMessages "under the umbrella".
On Thu, Sep 2, 2010 at 2:55 PM, Igor Drobiazko <ig...@gmail.com> wrote:
> If you have a class like the following one inside the services package and
> access the foo() method inside a service, you'll experience
> IllegalAccessException. You can fix the problem by changing the visibility
> of the foo() method to public.
>
> public class ServiceMessages {
> static String foo(){
> return "foo";
> }
> }
>
> On Thu, Sep 2, 2010 at 11:24 PM, Howard Lewis Ship <hl...@gmail.com> wrote:
>
>> Tell me more about static utility methods ... it may be possible to
>> make those work as well.
>>
>> On Thu, Sep 2, 2010 at 12:30 PM, Igor Drobiazko
>> <ig...@gmail.com> wrote:
>> > I tested my apps today with the recent snapshots. It looks good. No
>> problems
>> > with protected or package private methods in super classes. There are
>> still
>> > some problems with static utility methods but it is ok. I think we are
>> ready
>> > for a beta release now.
>> >
>> > On Wed, Sep 1, 2010 at 11:00 PM, Igor Drobiazko <
>> igor.drobiazko@gmail.com>wrote:
>> >
>> >> That's great. I'll try it out and report the results.
>> >>
>> >>
>> >> On Wed, Sep 1, 2010 at 7:00 PM, Howard Lewis Ship <hlship@gmail.com
>> >wrote:
>> >>
>> >>> Yesterday I checked in a revised version of the live service reloading
>> >>> code.
>> >>>
>> >>> The new code is a bit smarter about extending the class-loader
>> >>> umbrella to inner classes and base classes. This should make protected
>> >>> method invocations work correctly (in most cases).
>> >>>
>> >>> There may be room for additional analysis.
>> >>>
>> >>> I'd appreciate it if people could try out the snapshot and see how
>> >>> well it flies. I really don't want to make live service reloading
>> >>> default to off.
>> >>>
>> >>> --
>> >>> 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!
>> >>>
>> >>> (971) 678-5210
>> >>> http://howardlewisship.com
>> >>>
>> >>> ---------------------------------------------------------------------
>> >>> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
>> >>> For additional commands, e-mail: dev-help@tapestry.apache.org
>> >>>
>> >>>
>> >>
>> >>
>> >> --
>> >> Best regards,
>> >>
>> >> Igor Drobiazko
>> >> http://tapestry5.de
>> >>
>> >
>> >
>> >
>> > --
>> > Best regards,
>> >
>> > Igor Drobiazko
>> > http://tapestry5.de
>> >
>>
>>
>>
>> --
>> 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!
>>
>> (971) 678-5210
>> http://howardlewisship.com
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
>> For additional commands, e-mail: dev-help@tapestry.apache.org
>>
>>
>
>
> --
> Best regards,
>
> Igor Drobiazko
> http://tapestry5.de
>
--
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!
(971) 678-5210
http://howardlewisship.com
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
For additional commands, e-mail: dev-help@tapestry.apache.org
Re: Updated code for live service reloading
Posted by Igor Drobiazko <ig...@gmail.com>.
If you have a class like the following one inside the services package and
access the foo() method inside a service, you'll experience
IllegalAccessException. You can fix the problem by changing the visibility
of the foo() method to public.
public class ServiceMessages {
static String foo(){
return "foo";
}
}
On Thu, Sep 2, 2010 at 11:24 PM, Howard Lewis Ship <hl...@gmail.com> wrote:
> Tell me more about static utility methods ... it may be possible to
> make those work as well.
>
> On Thu, Sep 2, 2010 at 12:30 PM, Igor Drobiazko
> <ig...@gmail.com> wrote:
> > I tested my apps today with the recent snapshots. It looks good. No
> problems
> > with protected or package private methods in super classes. There are
> still
> > some problems with static utility methods but it is ok. I think we are
> ready
> > for a beta release now.
> >
> > On Wed, Sep 1, 2010 at 11:00 PM, Igor Drobiazko <
> igor.drobiazko@gmail.com>wrote:
> >
> >> That's great. I'll try it out and report the results.
> >>
> >>
> >> On Wed, Sep 1, 2010 at 7:00 PM, Howard Lewis Ship <hlship@gmail.com
> >wrote:
> >>
> >>> Yesterday I checked in a revised version of the live service reloading
> >>> code.
> >>>
> >>> The new code is a bit smarter about extending the class-loader
> >>> umbrella to inner classes and base classes. This should make protected
> >>> method invocations work correctly (in most cases).
> >>>
> >>> There may be room for additional analysis.
> >>>
> >>> I'd appreciate it if people could try out the snapshot and see how
> >>> well it flies. I really don't want to make live service reloading
> >>> default to off.
> >>>
> >>> --
> >>> 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!
> >>>
> >>> (971) 678-5210
> >>> http://howardlewisship.com
> >>>
> >>> ---------------------------------------------------------------------
> >>> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
> >>> For additional commands, e-mail: dev-help@tapestry.apache.org
> >>>
> >>>
> >>
> >>
> >> --
> >> Best regards,
> >>
> >> Igor Drobiazko
> >> http://tapestry5.de
> >>
> >
> >
> >
> > --
> > Best regards,
> >
> > Igor Drobiazko
> > http://tapestry5.de
> >
>
>
>
> --
> 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!
>
> (971) 678-5210
> http://howardlewisship.com
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
> For additional commands, e-mail: dev-help@tapestry.apache.org
>
>
--
Best regards,
Igor Drobiazko
http://tapestry5.de
Re: Updated code for live service reloading
Posted by Howard Lewis Ship <hl...@gmail.com>.
Tell me more about static utility methods ... it may be possible to
make those work as well.
On Thu, Sep 2, 2010 at 12:30 PM, Igor Drobiazko
<ig...@gmail.com> wrote:
> I tested my apps today with the recent snapshots. It looks good. No problems
> with protected or package private methods in super classes. There are still
> some problems with static utility methods but it is ok. I think we are ready
> for a beta release now.
>
> On Wed, Sep 1, 2010 at 11:00 PM, Igor Drobiazko <ig...@gmail.com>wrote:
>
>> That's great. I'll try it out and report the results.
>>
>>
>> On Wed, Sep 1, 2010 at 7:00 PM, Howard Lewis Ship <hl...@gmail.com>wrote:
>>
>>> Yesterday I checked in a revised version of the live service reloading
>>> code.
>>>
>>> The new code is a bit smarter about extending the class-loader
>>> umbrella to inner classes and base classes. This should make protected
>>> method invocations work correctly (in most cases).
>>>
>>> There may be room for additional analysis.
>>>
>>> I'd appreciate it if people could try out the snapshot and see how
>>> well it flies. I really don't want to make live service reloading
>>> default to off.
>>>
>>> --
>>> 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!
>>>
>>> (971) 678-5210
>>> http://howardlewisship.com
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
>>> For additional commands, e-mail: dev-help@tapestry.apache.org
>>>
>>>
>>
>>
>> --
>> Best regards,
>>
>> Igor Drobiazko
>> http://tapestry5.de
>>
>
>
>
> --
> Best regards,
>
> Igor Drobiazko
> http://tapestry5.de
>
--
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!
(971) 678-5210
http://howardlewisship.com
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
For additional commands, e-mail: dev-help@tapestry.apache.org
Re: Updated code for live service reloading
Posted by Igor Drobiazko <ig...@gmail.com>.
I tested my apps today with the recent snapshots. It looks good. No problems
with protected or package private methods in super classes. There are still
some problems with static utility methods but it is ok. I think we are ready
for a beta release now.
On Wed, Sep 1, 2010 at 11:00 PM, Igor Drobiazko <ig...@gmail.com>wrote:
> That's great. I'll try it out and report the results.
>
>
> On Wed, Sep 1, 2010 at 7:00 PM, Howard Lewis Ship <hl...@gmail.com>wrote:
>
>> Yesterday I checked in a revised version of the live service reloading
>> code.
>>
>> The new code is a bit smarter about extending the class-loader
>> umbrella to inner classes and base classes. This should make protected
>> method invocations work correctly (in most cases).
>>
>> There may be room for additional analysis.
>>
>> I'd appreciate it if people could try out the snapshot and see how
>> well it flies. I really don't want to make live service reloading
>> default to off.
>>
>> --
>> 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!
>>
>> (971) 678-5210
>> http://howardlewisship.com
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
>> For additional commands, e-mail: dev-help@tapestry.apache.org
>>
>>
>
>
> --
> Best regards,
>
> Igor Drobiazko
> http://tapestry5.de
>
--
Best regards,
Igor Drobiazko
http://tapestry5.de
Re: Updated code for live service reloading
Posted by Igor Drobiazko <ig...@gmail.com>.
That's great. I'll try it out and report the results.
On Wed, Sep 1, 2010 at 7:00 PM, Howard Lewis Ship <hl...@gmail.com> wrote:
> Yesterday I checked in a revised version of the live service reloading
> code.
>
> The new code is a bit smarter about extending the class-loader
> umbrella to inner classes and base classes. This should make protected
> method invocations work correctly (in most cases).
>
> There may be room for additional analysis.
>
> I'd appreciate it if people could try out the snapshot and see how
> well it flies. I really don't want to make live service reloading
> default to off.
>
> --
> 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!
>
> (971) 678-5210
> http://howardlewisship.com
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
> For additional commands, e-mail: dev-help@tapestry.apache.org
>
>
--
Best regards,
Igor Drobiazko
http://tapestry5.de
Re: Updated code for live service reloading
Posted by Christophe Cordenier <ch...@gmail.com>.
I have update wooki yesterday, it looks good !
But i continue to try it out
2010/9/1 Howard Lewis Ship <hl...@gmail.com>
> Yesterday I checked in a revised version of the live service reloading
> code.
>
> The new code is a bit smarter about extending the class-loader
> umbrella to inner classes and base classes. This should make protected
> method invocations work correctly (in most cases).
>
> There may be room for additional analysis.
>
> I'd appreciate it if people could try out the snapshot and see how
> well it flies. I really don't want to make live service reloading
> default to off.
>
> --
> 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!
>
> (971) 678-5210
> http://howardlewisship.com
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
> For additional commands, e-mail: dev-help@tapestry.apache.org
>
>
--
Regards,
Christophe Cordenier.
Committer on Apache Tapestry 5
Co-creator of wooki @wookicentral.com