if( data == null )
{
throw new IllegalArgumentException( "Missing controller: " + id );
}
ControllerDef controllerDef = new ControllerDef();
controllerDef.read( data );
final Class clazz = Class.forName( controllerDef.getClassName() );
controller = (Controller) clazz.newInstance();
}
catch( Exception e )
{
throw new RuntimeException( "Error loading controller: " + e );