Hot Deploying My Wicket Application in Eclipse with Jetty

I had just created my first wicket project [update link] and I wanted to make sure I could run jetty in eclipse and hot deploy my war file exploded.

To do this I just needed to use the m2eclipse eclipse extensions to integrate with WTP:

Here’s what I did:

Install the m2eclipse WTP extensions:

  • I already had wtp installed in eclipse so no biggie there.
  • Go to eclipse -> Help -> Install new software…
    • Enter the m2eclipse extensions url in the Work with text field
    • When the list of plugins updates from the url select the following:
      • Maven Integration for WTP
      • Project configurators for commonly used maven plugins

    • Click NEXT and finish installing the m2eclipse – WTP integration plugins.

Update the m2eclipse configuration of any existing maven eclipse projects you want wtp in:

  • Right click on your project -> m2 MAVEN -> Update Project Configuration:

  • This will bring in the two new plugins you just installed
  • I’m no expert but if you look closely you’ll see some new files in your eclipse Navigator -> Project -> .settings folder:
    • The file org.eclipse.wst.common.component looks like it compiles your classes into srcmainwebappWEB-INF
      • Basically this creates an exploded ear that eclipse will hot deploy to…Yippee my goal

Get jetty running in eclipse:

The wicket maven archetype automatically setups jetty for you when the project is created so you’re almost there. All you need to do is:

  • Open the Start.java jetty class in ProjectName -> src -> test -> java -> my package -> ProjectName -> Start.java
  • I updated the context path to include my project name
  • Create a java application launch target:
    • With the Start.java file highlighted goto: Run -> Run Configurations -> Java Applications -> Create New

    • Launch.
  • Test it:
    • Go to http://localhost:8080/MyFirstWicketProjectand you should still see this:
      Wicket Quickstart Archetype Homepage
      
      If you see this message wicket is properly configured and running
    • Open the file HomePage.htmland change something noticeable.  Save and then refresh the page…I did this:
      Wicket Quickstart Archetype Homepage
      BLAH
      If you see this message wicket is properly configured and running

Hot deploy should now work.

It's only fair to share...
Share on Facebook
Facebook
Google+
Google+
Tweet about this on Twitter
Twitter
Share on LinkedIn
Linkedin

Leave a Reply