[jboss-user] [JBoss Microcontainer Development] New message: "Re: ClassLoadingAdmin"

Adrian Brock do-not-reply at jboss.com
Thu Mar 4 08:55:23 EST 2010


User development,

A new message was posted in the thread "ClassLoadingAdmin":

http://community.jboss.org/message/529924#529924

Author  : Adrian Brock
Profile : http://community.jboss.org/people/adrian@jboss.org

Message:
--------------------------------------------------------------
> mailto:thomas.diesler at jboss.com wrote:
> 
> The use case is:
>  
> From a gui select the application located at some repository to download/install into the framework.
> An application consists of potentially very many bundles.
> Try run the resolver using the application metadata.
> Only when the application can be resolved in the running framework, do the install.
>  
> The worst case, which must be avoided is a partial install that fails and leaves the framework in a state where random bits are installed/resolved that cannot easily been uninstalled. Essentially, the resolve step for a set of bundles must be atomic.
You can already do that.
 
deploy/change(deploymentNames);
try
{
   checkComplete(deploymentNames);
}
catch (IncompleteDeploymentException e)
{
   undeploy/change[back](deploymentNames);
}
 
One of the features I added (different to what happens in 4.2.x) is that if a subdeployment ends
up in the error state then so does the rest of the application (i.e. top level deployment, subdeployments and components).
 
NOTE: It is still an unimplemented feature in the profile service to be able to "dry run" an install.
i.e. you can validate the metadata can be parsed and is complete and check all the dependencies
without creating the actual runtime objects.
Of course there might still be runtime errors thrown from the objects themselves, which this wouldn't catch.

--------------------------------------------------------------

To reply to this message visit the message page: http://community.jboss.org/message/529924#529924




More information about the jboss-user mailing list