Do you really get class loaders?

Tech. Long Talk
Tuesday, 1 June 2010, 16:30-17:20, Arena 5

Jevgeni Kabanov
ZeroTurnaround

Abstract
Class loaders are at the core of the Java language. Java EE containers, OSGi, NetBeans modules, Tapestry 5, Grails and many others use class loaders heavily. Yet when something goes wrong, would you know how to solve it?

In this session we'll take a tour of the Java class loading mechanism, both from JVM and developer point of view. We'll see how different delegation systems are built, how synchronization works, what is the difference between finding classes and resources, what wrong assumptions has been made and are now supported.

Next we will look at typical problems that you get with class loading and how to solve them. ClassNoDefError, IncompatibleClassChangeError, LinkageError and many others are symptoms of specific things going wrong that you can usually find and fix. For each problem we'll go through a hands on demo with a corresponding solution. We'll also take a look at how and why classloaders leak and how can you remedy that.

Finally we'll take a look at the complicated class loading mechanisms like the ones used in OSGi and Tapestry 5. We'll look in detail at the benefits they have and problems they might cause.

Tuesday, 1 June 2010
Wednesday, 2 June 2010
Thursday, 3 June 2010
Tech. Long Talk
Tuesday, 1 June 2010, 16:30-17:20, Arena 5

Jevgeni Kabanov
ZeroTurnaround

Abstract
Class loaders are at the core of the Java language. Java EE containers, OSGi, NetBeans modules, Tapestry 5, Grails and many others use class loaders heavily. Yet when something goes wrong, would you know how to solve it?

In this session we'll take a tour of the Java class loading mechanism, both from JVM and developer point of view. We'll see how different delegation systems are built, how synchronization works, what is the difference between finding classes and resources, what wrong assumptions has been made and are now supported.

Next we will look at typical problems that you get with class loading and how to solve them. ClassNoDefError, IncompatibleClassChangeError, LinkageError and many others are symptoms of specific things going wrong that you can usually find and fix. For each problem we'll go through a hands on demo with a corresponding solution. We'll also take a look at how and why classloaders leak and how can you remedy that.

Finally we'll take a look at the complicated class loading mechanisms like the ones used in OSGi and Tapestry 5. We'll look in detail at the benefits they have and problems they might cause.

Tuesday, 1 June 2010
Wednesday, 2 June 2010
Thursday, 3 June 2010

Networking Groups

Follow Jazoon

        
Follow Jazoon

        

Jazoon in a Nutshell

Jazoon Rookie

Platinum Sponsors

Gold Sponsor

Silver Sponsors







Supporter

 
Home