Home | Contact Us | FAQ | Search & Site Map | Link to Us
Sign In | Join | Other 45 Sites in Network
HomeAnnouncementsWhite Papers
Discussion GroupsFirst AidDatabasesJavaBeansGUIJava 3DVirtual MachineCORBASecurityToolsGeneral
Java DirectoryOpen Source ProjectsSample Book ChaptersUser GroupsWeb Resources
Related Topics
Databases.NETMore Topics ...

Announcements

Tip: Looking for answers? Try searching our database.

JavaRebel Brings Class Reloading to Java

Jevgeni Kabanov   17 Oct 2007 22:04 GMTPage rating:


JavaRebel reloads changes to Java classes on-the-fly without redeploy
or restart including new methods and fields. It is a generic solution
that works for standalone Java applications as well as application
servers.

Ever since HotSwap support has been introduced in Java 1.4 people have
been craving for more. As witnessed by a bug (http://bugs.sun.com/
bugdatabase/view_bug.do?bug_id=4910812) in the Sun database and
numerous other discussions changing method bodies was just not enough.
Dynamic languages like Ruby were quick enough to capitalize on this
lacking touting Java EE development as slow and cumbersome.

As time passed by people have tried to work around the limitation by
reloading classes along with their classloader. However since this
requires also to reconstruct the object state it will only work in a
controlled and limited environment - e.g. that of a web framework like
RIFE, Tapestry 5 and so on.

Just as many others we were  working on a workaround. However instead
of limiting ourselves to the facilities provided by the Java platform
we devised a whole new approach. Using bytecode modification and a
little bit of magic JavaRebel extends the JVM with ability to reload
almost arbitrary changes to classes on-the-fly. This includes adding
and removing both methods and fields and the only forbidden changes
are to 'extends' and 'implements' clauses. Since all the existing
object instances are preserved the application and server can continue
running and code changes are immediately visible in the application.

Watch the demonstration screencast (~5 mins,
http://www.zeroturnaround.com/docs/javarebel-jpetstore-screencast),
read the feature list (http://www.zeroturnaround.com/javarebel/
features/) or just download JavaRebel from
http://www.zeroturnaround.com/download/
and give it a try. Disclaimer: JavaRebel is commercial software with a
free trial for 14 days and developer seat cost at 99$.

ZeroTurnaround is a spinoff of Webmedia, Ltd. that focuses on Java
developer productivity tools. Currently we are developing JavaRebel, a
generic Java class reloader, and JSP Weaver, an instant JSP
interpreter.


Rate this page
Poor Excellent    

Comments

No comments at this time. Why not be the first?

Free Magazines

Get these publications absolutely FREE for up to 12 months. There are no hidden fees and no obligation. Simply choose a title, complete the application form and submit it. Read more ...

Oracle MagazineNetwork ComputingComputer WorldBio-IT WorldeWeekInformation WeekInfosecurity
 
Sign In
Join
My Latest Posts
My Monitored Threads
My Blog
My Photo Gallery
My Profile
My Homepage

Post new comment
Rate this page



©2008 Advenet LLC   Privacy Policy - Terms of Use
This website includes both content owned or controlled by Advenet as well as content owned or controlled by third parties.