[jboss-user] [Microcontainer] - Adding deployer to DeploymentUnit classpath
stan.silvert@jboss.com
do-not-reply at jboss.com
Sat Oct 18 16:16:46 EDT 2008
I need to add the classes bundled with the deployer to the classpath of a VFSDeploymentUnit.
This code doesn't work:
public void deploy(VFSDeploymentUnit unit, JBossWebMetaData metaData) throws DeploymentException {
| URL url = getClass().getClassLoader().getResource("/");
| VirtualFile vFile = VFS.getRoot(url);
| unit.addClassPath(vFile);
| }
getResource("/") returns a URL that looks like vfsmemory://abc1t-caplls-fmgocucl-1-fmgoe37j-d/
But this code does work:
public void deploy(VFSDeploymentUnit unit, JBossWebMetaData metaData) throws DeploymentException {
| BaseClassLoader classloader = (BaseClassLoader)getClass().getClassLoader();
| URL url = new URL(classloader.getName());
| VirtualFile vFile = VFS.getRoot(url);
| unit.addClassPath(vFile);
| }
BaseClassLoader.getName() happens to return vfsfile:/C:/projects/jboss5/trunk/build/output/jboss-5.0.0.GA/server/default/deployers/jsfunit.deployer/
I'd rather not rely on casting to BaseClassLoader and calling getName(). Is there a better way to do this?
Stan
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4183045#4183045
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4183045
More information about the jboss-user
mailing list