[Wicket-user] Instructions for using WICKET-126

2007-03-10 Thread Matt Welch

Currently my development environment is downright ugly when it comes the
"edit -> test changes" cycle. I'm using:

Maven
Jetty plugin
Intellij Idea

As it currently stands, here's my cycle:

  1. Make a change (doesn't matter if it's to a template or page class)
  2. Wait for the entire application to redeploy - at least this happens
  automatically
  3. Go back to my browser and click refresh; get a "Page out of date
  error" or something like that; I forget as I'm not sitting in front of it
  right now.
  4. Click "Go to home page"
  5. I'm forced to log in again
  6. Finally, navigate through my application to get to back to place
  where I can see the change I made.

Wash.Rinse.Repeat. A thousand times a day. Clearly, I'm doing something
wrong.

I have the configuration:development parameter set in my web.xml so if I
disable automatic redeployment in Jetty, I can push my template changes out
and see them almost immediately, however I make far more changes to my
backing classes than I do to the templates themselves so I'd rather keep the
Jetty auto-redeploy on.

So first, is there something I should be doing differently to make this
cycle a little shorter. When I was using Tomcat and a different presentation
framework, sessions persisted across auto-redeployments so I could at least
avoid having to log back in and navigate back to where I was each time. It's
not much of an improvement but it's something. Can the same thing be done
with Jetty/Wicket? Tomcat/Wicket?

Second, I ran across the JIRA issue, WICKET-126:
https://issues.apache.org/jira/browse/WICKET-126

This seems to describe some changes in the 1.3 base that would enable much
easier hot-redeployment of classes. The discussion in the issue went back
and forth, but it's a little hard to tell what form this functionality took
int he end and how to use it. Are there any instructions outside that issue
on its use? Do I need to check out the 1.3 code from Subversion or is it
available from the wicketstuff.org maven respoitory (wha I'm currently using
for 1.3 SNAPSHOTS)?

I'm sure many of you have your development environments setup to avoid a
prolonged change review cycle. I'd love to hear any tips you have.
-
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV___
Wicket-user mailing list
Wicket-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wicket-user


Re: [Wicket-user] Instructions for using WICKET-126

2007-03-10 Thread Martijn Dashorst
Not using IDEA I can only comment on the Java stuff.

Wicket doesn't impose any special thing on the server and runtime
environment. Therefore hotswap should be functioning. My experience
with Eclipse is that running the application in debug mode allows
hotswap to occur, and typically doesn't require a redeploy. I think
this is available for IDEA as well (run your jetty using a debugger).

On eclipse my mantra for the day is:
 - start server in debug mode from within eclipse
 - modify template or Java code (only inside methods, no structural changes)
 - see change immediately

When a structural change was made, the hotswap will complain and you
have to restart the server.

>From what I remember of using IDEA is that you also can run the app
server in debug mode, and have it pick up changes in class files
without redeploy.

Read more here (possibly outdated but should give you ideas):

http://jetty.mortbay.org/jetty5/faq/faq_s_950-IDEs_t_IntelliJ.html

Martijn

On 3/10/07, Matt Welch <[EMAIL PROTECTED]> wrote:
> Currently my development environment is downright ugly when it comes the
> "edit -> test changes" cycle. I'm using:
>
>  Maven
>  Jetty plugin
>  Intellij Idea
>
>  As it currently stands, here's my cycle:
>
> Make a change (doesn't matter if it's to a template or page class)
> Wait for the entire application to redeploy - at least this happens
> automatically
> Go back to my browser and click refresh; get a "Page out of date error" or
> something like that; I forget as I'm not sitting in front of it right now.
> Click "Go to home page"
> I'm forced to log in again
> Finally, navigate through my application to get to back to place where I can
> see the change I made. Wash.Rinse.Repeat. A thousand times a day. Clearly,
> I'm doing something wrong.
>
>  I have the configuration:development parameter set in my web.xml so if I
> disable automatic redeployment in Jetty, I can push my template changes out
> and see them almost immediately, however I make far more changes to my
> backing classes than I do to the templates themselves so I'd rather keep the
> Jetty auto-redeploy on.
>
>  So first, is there something I should be doing differently to make this
> cycle a little shorter. When I was using Tomcat and a different presentation
> framework, sessions persisted across auto-redeployments so I could at least
> avoid having to log back in and navigate back to where I was each time. It's
> not much of an improvement but it's something. Can the same thing be done
> with Jetty/Wicket? Tomcat/Wicket?
>
>  Second, I ran across the JIRA issue, WICKET-126:
> https://issues.apache.org/jira/browse/WICKET-126
>
>  This seems to describe some changes in the 1.3 base that would enable much
> easier hot-redeployment of classes. The discussion in the issue went back
> and forth, but it's a little hard to tell what form this functionality took
> int he end and how to use it. Are there any instructions outside that issue
> on its use? Do I need to check out the 1.3 code from Subversion or is it
> available from the wicketstuff.org maven respoitory (wha I'm currently using
> for 1.3 SNAPSHOTS)?
>
>  I'm sure many of you have your development environments setup to avoid a
> prolonged change review cycle. I'd love to hear any tips you have.
>
>
>
> -
> Take Surveys. Earn Cash. Influence the Future of IT
> Join SourceForge.net's Techsay panel and you'll get the chance to share your
> opinions on IT & business topics through brief surveys-and earn cash
> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
> ___
> Wicket-user mailing list
> Wicket-user@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wicket-user
>
>


-- 
Learn Wicket at ApacheCon Europe: http://apachecon.com
Join the wicket community at irc.freenode.net: ##wicket
Wicket 1.2.5 will keep your server alive. Download Wicket now!
http://wicketframework.org

-
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
___
Wicket-user mailing list
Wicket-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wicket-user


Re: [Wicket-user] Instructions for using WICKET-126

2007-03-10 Thread Eelco Hillenius
>  Second, I ran across the JIRA issue, WICKET-126:
> https://issues.apache.org/jira/browse/WICKET-126
>
>  This seems to describe some changes in the 1.3 base that would enable much
> easier hot-redeployment of classes. The discussion in the issue went back
> and forth, but it's a little hard to tell what form this functionality took
> int he end and how to use it. Are there any instructions outside that issue
> on its use? Do I need to check out the 1.3 code from Subversion or is it
> available from the wicketstuff.org maven respoitory (wha I'm currently using
> for 1.3 SNAPSHOTS)?

It's all in there (1.3) so start using it today. YMMV though, but you
already read that from the comments.

So, play with it, so how it works out for you, and if you have issues,
please share them here.

Eelco

-
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
___
Wicket-user mailing list
Wicket-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wicket-user


Re: [Wicket-user] Instructions for using WICKET-126

2007-03-10 Thread Jean-Baptiste Quenot
* Matt Welch:

Hello Matt,

> Second, I ran across the JIRA issue, WICKET-126:
>
> This seems to  describe some changes in the 1.3  base that would
> enable much easier hot-redeployment of classes.

That's right, with this new feature you don't need to restart your
webapp in most cases.

> The discussion  in the  issue went  back and  forth, but  it's a
> little hard to tell what form this functionality took int he end
> and how to use it. Are there any instructions outside that issue
> on its use?

Yes, please have a look at the Javadoc of
wicket.protocol.http.ReloadingWicketFilter

> Do I  need to check  out the 1.3 code  from Subversion or  is it
> available  from the  wicketstuff.org maven  respoitory (wha  I'm
> currently using for 1.3 SNAPSHOTS)?

You can do both.

Your feedback on the reloading feature will be appreciated.

Thanks in advance,
-- 
 Jean-Baptiste Quenot
aka  John Banana   Qwerty
http://caraldi.com/jbq/

-
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
___
Wicket-user mailing list
Wicket-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wicket-user


Re: [Wicket-user] Instructions for using WICKET-126

2007-03-10 Thread Matt Welch

Thanks for all of the information and links. I'll be diving into this on
Monday and I'll reply here with my results.

On 3/10/07, Jean-Baptiste Quenot <[EMAIL PROTECTED]> wrote:


* Matt Welch:

Hello Matt,

> Second, I ran across the JIRA issue, WICKET-126:
>
> This seems to  describe some changes in the 1.3  base that would
> enable much easier hot-redeployment of classes.

That's right, with this new feature you don't need to restart your
webapp in most cases.

> The discussion  in the  issue went  back and  forth, but  it's a
> little hard to tell what form this functionality took int he end
> and how to use it. Are there any instructions outside that issue
> on its use?

Yes, please have a look at the Javadoc of
wicket.protocol.http.ReloadingWicketFilter

> Do I  need to check  out the 1.3 code  from Subversion or  is it
> available  from the  wicketstuff.org maven  respoitory (wha  I'm
> currently using for 1.3 SNAPSHOTS)?

You can do both.

Your feedback on the reloading feature will be appreciated.

Thanks in advance,
--
 Jean-Baptiste Quenot
aka  John Banana   Qwerty
http://caraldi.com/jbq/

-
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share
your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
___
Wicket-user mailing list
Wicket-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wicket-user

-
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV___
Wicket-user mailing list
Wicket-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wicket-user


Re: [Wicket-user] Instructions for using WICKET-126

2007-03-11 Thread Kent Tong
Jean-Baptiste Quenot  apache.org> writes:

> That's right, with this new feature you don't need to restart your
> webapp in most cases.

Will it invalidate the session?




-
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
___
Wicket-user mailing list
Wicket-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wicket-user


Re: [Wicket-user] Instructions for using WICKET-126

2007-03-12 Thread Jean-Baptiste Quenot
* Kent Tong:

> Jean-Baptiste Quenot  apache.org> writes:
>
> > That's right, with this new  feature you don't need to restart
> > your webapp in most cases.
>
> Will it invalidate the session?

No.  In most cases  you need to go back to  a bookmarkable page or
home page to avoid page expired errors.  And you don't necessarily
have to invalidate the session, otherwise you need to log in again
and again every time you modify a class.
-- 
 Jean-Baptiste Quenot
aka  John Banana   Qwerty
http://caraldi.com/jbq/

-
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
___
Wicket-user mailing list
Wicket-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wicket-user


Re: [Wicket-user] Instructions for using WICKET-126

2007-03-12 Thread Matt Welch


Your feedback on the reloading feature will be appreciated.

Thanks in advance,
--
 Jean-Baptiste Quenot
aka  John Banana   Qwerty
http://caraldi.com/jbq/



Hmmm, I may be missing a configuration step or perhaps my expectations were
off, but this doesn't appear to be working for me. I changed my web.xml to
use the ReloadingWicketFilter and then ran my app. Everything works as
normal. When I modify a template file, the change is picked up, however
modifying a java file and compiling it doesn't seem to do anything.

So I wonder if I'm missing something in my environment setup that might
allow this to work. Here's some more information if anyone has any ideas:

Maven 2.04
maven-jetty-plugin 6.1.1
Java 1.5.0_08
App server started with "mvn jetty:run"
Linux kernel 2.6.17

Jean-Baptiste, I saw in the JIRA issue comments that you tested this using
the Jetty from the maven-jetty-plugin. Do you know what version you were
using? Would that even make a difference?

Thanks!
Matt
-
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV___
Wicket-user mailing list
Wicket-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wicket-user


Re: [Wicket-user] Instructions for using WICKET-126

2007-03-12 Thread Jean-Baptiste Quenot
* Matt Welch:

> >Your feedback on the reloading feature will be appreciated.
>
> Hmmm,  I may  be  missing  a configuration  step  or perhaps  my
> expectations were off, but this doesn't appear to be working for
> me. I changed  my web.xml  to use the  ReloadingWicketFilter and
> then ran  my app. Everything  works as  normal. When I  modify a
> template file, the change is picked up, however modifying a java
> file and compiling it doesn't seem to do anything.
>
> So I  wonder if  I'm missing something  in my  environment setup
> that might allow  this to work. Here's some  more information if
> anyone has any ideas:

Yes, you  may be  missing something.  You  should have  written at
least 5 lines  of Java code to activate the  reloading of your own
classes.  Did you extend ReloadingWicketFilter to include your own
packages?  You need to specify your own class.

Maybe the Javadoc in ReloadingWicketFilter is not explicit enough,
in that case an updated description would be more than welcome.

Cheerio,
-- 
 Jean-Baptiste Quenot
aka  John Banana   Qwerty
http://caraldi.com/jbq/

-
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
___
Wicket-user mailing list
Wicket-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wicket-user


Re: [Wicket-user] Instructions for using WICKET-126

2007-03-12 Thread Matt Welch

On 3/12/07, Jean-Baptiste Quenot <[EMAIL PROTECTED]> wrote:


Yes, you  may be  missing something.  You  should have  written at
least 5 lines  of Java code to activate the  reloading of your own
classes.  Did you extend ReloadingWicketFilter to include your own
packages?  You need to specify your own class.

Maybe the Javadoc in ReloadingWicketFilter is not explicit enough,
in that case an updated description would be more than welcome.




Ok, yeah, I misunderstood that. I thought I could just use
ReloadingWicketFilter from my web.xml and it would work withs some defaults
but needing to specify some sane bounds for it to work within makes perfect
sense. It's still not working perfectly for me but I think I'm running into
issues similar to what you described for Spring (i.e. class cast exceptions
on a few things loaded before the filter classloader).

If I were to suggest a few changes to the javadocs, then it might be a good
idea to explicitly say that you need to extend the ReloadingWicketFilter for
your own application. I'm sure this is obvious to you and once I put some
thought into it, it makes perfect sense, but one doesn't need to extend the
normal WicketFilter in order to use it, so that's why I wasn't thinking
about it in the right way. Also, in your static block example where you show
include and exclude patterns, you might want to use packages like
com.yourapp.* instead of wicket packages.I can't speak for everyone but I
think most of us work in the mindset of the wicket classes being static (as
in not changing) during our application development so it isn't immediately
clear why you would need to exclude those. Again, once I thought about it
for a bit, I understood why you had it set up that way.

Then again, I might just be a little slow on the uptake.. :)

...

Well before I finished up this email, I figured out what packages to exclude
to eliminate the classcast exceptions and it's all working perfectly. This
is going to be a huge productivity boost!

Thanks for your help!
Matt
-
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV___
Wicket-user mailing list
Wicket-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wicket-user


Re: [Wicket-user] Instructions for using WICKET-126

2007-03-12 Thread Igor Vaynberg

if you need to extend it to configure it then it should be made abstract

-igor


On 3/12/07, Matt Welch <[EMAIL PROTECTED]> wrote:


On 3/12/07, Jean-Baptiste Quenot <[EMAIL PROTECTED]> wrote:
>
> Yes, you  may be  missing something.  You  should have  written at
> least 5 lines  of Java code to activate the  reloading of your own
> classes.  Did you extend ReloadingWicketFilter to include your own
> packages?  You need to specify your own class.
>
> Maybe the Javadoc in ReloadingWicketFilter is not explicit enough,
> in that case an updated description would be more than welcome.
>
>

Ok, yeah, I misunderstood that. I thought I could just use
ReloadingWicketFilter from my web.xml and it would work withs some
defaults but needing to specify some sane bounds for it to work within makes
perfect sense. It's still not working perfectly for me but I think I'm
running into issues similar to what you described for Spring ( i.e. class
cast exceptions on a few things loaded before the filter classloader).

If I were to suggest a few changes to the javadocs, then it might be a
good idea to explicitly say that you need to extend the
ReloadingWicketFilter for your own application. I'm sure this is obvious to
you and once I put some thought into it, it makes perfect sense, but one
doesn't need to extend the normal WicketFilter in order to use it, so that's
why I wasn't thinking about it in the right way. Also, in your static block
example where you show include and exclude patterns, you might want to use
packages like com.yourapp.* instead of wicket packages.I can't speak for
everyone but I think most of us work in the mindset of the wicket classes
being static (as in not changing) during our application development so it
isn't immediately clear why you would need to exclude those. Again, once I
thought about it for a bit, I understood why you had it set up that way.

Then again, I might just be a little slow on the uptake.. :)

...

Well before I finished up this email, I figured out what packages to
exclude to eliminate the classcast exceptions and it's all working
perfectly. This is going to be a huge productivity boost!

Thanks for your help!
Matt



-
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share
your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
___
Wicket-user mailing list
Wicket-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wicket-user


-
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV___
Wicket-user mailing list
Wicket-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wicket-user


Re: [Wicket-user] Instructions for using WICKET-126

2007-03-12 Thread Jean-Baptiste Quenot
OK, I  improved the  documentation accordingly.   I don't  know if
this is published anywhere in real time however.  Wicket team?  Do
you have a magic URL on wicketstuff.org for API documentation?
-- 
 Jean-Baptiste Quenot
aka  John Banana   Qwerty
http://caraldi.com/jbq/

-
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
___
Wicket-user mailing list
Wicket-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wicket-user


Re: [Wicket-user] Instructions for using WICKET-126

2007-03-12 Thread Igor Vaynberg

no we do not. someone needs to write a script to montor -javadoc.jar files
and extract them i suppose

-igor


On 3/12/07, Jean-Baptiste Quenot <[EMAIL PROTECTED]> wrote:


OK, I  improved the  documentation accordingly.   I don't  know if
this is published anywhere in real time however.  Wicket team?  Do
you have a magic URL on wicketstuff.org for API documentation?
--
 Jean-Baptiste Quenot
aka  John Banana   Qwerty
http://caraldi.com/jbq/

-
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share
your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
___
Wicket-user mailing list
Wicket-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wicket-user

-
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV___
Wicket-user mailing list
Wicket-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wicket-user