[jboss-user] [EJB 3.0] - Embedded JBoss protocol unknown vfsfile. URLStreamHandlers

apill do-not-reply at jboss.com
Thu Feb 22 11:22:24 EST 2007


Bill, I checked out the Embedded JBoss code and built it from the source today.

I have set up JUnit tests to deploy and test my EJBs. When I run the tests in Eclipse they work, but when I build the project in Maven it fails.

I have done a lot of investigating and debugging in the embedded code, and understanding the URLStreamHandler framework for handling protocols. I haven't managed to fix the problem, so I wondered if you can shed any light on it? 

Looking at the embedded code you have a class HandlerFactoryHack. From the comment in the class it says that URL.setURLStreamHandlerFactory() can only be setup once, could maven perhaps be setting this up before JBoss boots? I have tried setting ...

System.setProperty("java.protocol.handler.pkgs","org.jboss.virtual.protocol");
      
but that doesn't make a difference - maybe maven overwrites this property or sets up the urls even before i get to set the property.

I understand if this is a maven configuration problem that you cannot necessarily help. 

Any clues as where to look would be very much appreciated.


  | DEBUG 22-02 15:30:41,220 (KernelFactory.java:assembleNewKernel:86)  -Starting JBoss Kernel construction...
  | DEBUG 22-02 15:30:43,218 (KernelFactory.java:assembleNewKernel:112)  -Completed JBoss Kernel construction.  Duration: 1889 milliseconds
  | DEBUG 22-02 15:30:43,678 (Bootstrap.java:deployBaseBootstrapUrl:149)  -*** URL Details in deployBaseBootstrapUrl(url) ***
  | DEBUG 22-02 15:30:43,679 (Bootstrap.java:deployBaseBootstrapUrl:150)  -url.getAuthority(): 
  | DEBUG 22-02 15:30:43,681 (Bootstrap.java:deployBaseBootstrapUrl:151)  -url.getDefaultPort(): -1
  | DEBUG 22-02 15:30:43,682 (Bootstrap.java:deployBaseBootstrapUrl:152)  -url.getFile(): /usr/local/data/workspaces/current/maximizer-ejb/target/test-classes/conf/bootstrap-beans.xml
  | DEBUG 22-02 15:30:43,683 (Bootstrap.java:deployBaseBootstrapUrl:153)  -url.getHost(): 
  | DEBUG 22-02 15:30:43,692 (Bootstrap.java:deployBaseBootstrapUrl:154)  -url.getPath(): /usr/local/data/workspaces/current/maximizer-ejb/target/test-classes/conf/bootstrap-beans.xml
  | DEBUG 22-02 15:30:43,693 (Bootstrap.java:deployBaseBootstrapUrl:155)  -url.getPort(): -1
  | DEBUG 22-02 15:30:43,695 (Bootstrap.java:deployBaseBootstrapUrl:156)  -url.getProtocol(): file
  | DEBUG 22-02 15:30:43,696 (Bootstrap.java:deployBaseBootstrapUrl:157)  -url.getQuery(): null
  | DEBUG 22-02 15:30:43,698 (Bootstrap.java:deployBaseBootstrapUrl:158)  -url.getRef(): null
  | DEBUG 22-02 15:30:43,699 (Bootstrap.java:deployBaseBootstrapUrl:159)  -url.getUserInfo(): null
  | DEBUG 22-02 15:30:44,135 (BeanXMLDeployer.java:deploy:92)  -Parsing file:/usr/local/data/workspaces/current/maximizer-ejb/target/test-classes/conf/bootstrap-beans.xml took 435 milliseconds
  | WARN  22-02 15:30:44,345 (UnifiedLoaderRepository3.java:addClassLoader:675)  -Tried to add non-URLClassLoader.  Ignored
  | DEBUG 22-02 15:30:44,356 (ServiceController.java:preRegister:592)  -Controller MBean online
  | DEBUG 22-02 15:30:44,746 (MainDeployerImpl.java:addDeployer:206)  -Added deployer: org.jboss.deployers.plugins.deployers.kernel.BeanDeployer at 5cce5cce
  | DEBUG 22-02 15:30:44,749 (MainDeployerImpl.java:addDeployer:206)  -Added deployer: org.jboss.deployers.plugins.deployers.kernel.BeanMetaDataDeployer at 66ca66ca
  | DEBUG 22-02 15:30:44,752 (MainDeployerImpl.java:addDeployer:206)  -Added deployer: org.jboss.system.deployers.ServiceDeploymentDeployer at 3a493a49
  | DEBUG 22-02 15:30:44,755 (MainDeployerImpl.java:addDeployer:206)  -Added deployer: org.jboss.embedded.ClassLoaderDeployer at b480b48
  | DEBUG 22-02 15:30:44,758 (MainDeployerImpl.java:addDeployer:206)  -Added deployer: org.jboss.system.deployers.SARDeployer at 66d366d3
  | DEBUG 22-02 15:30:44,763 (MainDeployerImpl.java:addDeployer:206)  -Added deployer: org.jboss.system.deployers.ServiceDeployer at 5810581
  | DEBUG 22-02 15:30:44,766 (MainDeployerImpl.java:addDeployer:206)  -Added deployer: org.jboss.deployers.plugins.deployers.kernel.KernelDeploymentDeployer at 11d011d0
  | DEBUG 22-02 15:30:45,087 (DeploymentGroup.java:getVirtualFile:189)  -*** URL Details in getVirtualFile(url) ***
  | DEBUG 22-02 15:30:45,091 (DeploymentGroup.java:getVirtualFile:190)  -url.getAuthority(): 
  | DEBUG 22-02 15:30:45,097 (DeploymentGroup.java:getVirtualFile:191)  -url.getDefaultPort(): -1
  | DEBUG 22-02 15:30:45,101 (DeploymentGroup.java:getVirtualFile:192)  -url.getFile(): /usr/local/data/workspaces/current/maximizer-ejb/target/test-classes/conf/jboss-service.xml
  | DEBUG 22-02 15:30:45,105 (DeploymentGroup.java:getVirtualFile:193)  -url.getHost(): 
  | DEBUG 22-02 15:30:45,109 (DeploymentGroup.java:getVirtualFile:194)  -url.getPath(): /usr/local/data/workspaces/current/maximizer-ejb/target/test-classes/conf/jboss-service.xml
  | DEBUG 22-02 15:30:45,114 (DeploymentGroup.java:getVirtualFile:195)  -url.getPort(): -1
  | DEBUG 22-02 15:30:45,118 (DeploymentGroup.java:getVirtualFile:196)  -url.getProtocol(): file
  | DEBUG 22-02 15:30:45,122 (DeploymentGroup.java:getVirtualFile:197)  -url.getQuery(): null
  | DEBUG 22-02 15:30:45,126 (DeploymentGroup.java:getVirtualFile:198)  -url.getRef(): null
  | DEBUG 22-02 15:30:45,130 (DeploymentGroup.java:getVirtualFile:199)  -url.getUserInfo(): null
  | ERROR 22-02 15:30:45,174 (DeploymentScanner.java:start:113)  -Failed to deploy
  | org.jboss.deployers.spi.DeploymentException: Unable to get VirtualFile for url: file:/usr/local/data/workspaces/current/maximizer-ejb/target/test-classes/conf/jboss-service.xml
  |         at org.jboss.embedded.DeploymentGroup.getVirtualFile(DeploymentGroup.java:205)
  |         at org.jboss.embedded.DeploymentGroup.add(DeploymentGroup.java:178)
  |         at org.jboss.embedded.DeploymentGroup.addResource(DeploymentGroup.java:344)
  |         at org.jboss.embedded.DeploymentScanner.start(DeploymentScanner.java:85)
  |         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  |         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:64)
  |         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
  |         at java.lang.reflect.Method.invoke(Method.java:615)
  |         at org.jboss.reflect.plugins.introspection.ReflectionUtils.invoke(ReflectionUtils.java:55)
  |         at org.jboss.reflect.plugins.introspection.ReflectMethodInfoImpl.invoke(ReflectMethodInfoImpl.java:108)
  |         at org.jboss.joinpoint.plugins.BasicMethodJoinPoint.dispatch(BasicMethodJoinPoint.java:66)
  |         at org.jboss.kernel.plugins.dependency.KernelControllerContextAction.dispatchJoinPoint(KernelControllerContextAction.java:103)
  |         at org.jboss.kernel.plugins.dependency.LifecycleAction.installActionInternal(LifecycleAction.java:145)
  |         at org.jboss.kernel.plugins.dependency.KernelControllerContextAction.installAction(KernelControllerContextAction.java:197)
  |         at org.jboss.kernel.plugins.dependency.KernelControllerContextAction.install(KernelControllerContextAction.java:136)
  |         at org.jboss.dependency.plugins.AbstractControllerContextActions.install(AbstractControllerContextActions.java:51)
  |         at org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:233)
  |         at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:709)
  |         at org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:430)
  |         at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:540)
  |         at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:474)
  |         at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:274)
  |         at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:177)
  |         at org.jboss.kernel.plugins.deployment.AbstractKernelDeployer.deployBean(AbstractKernelDeployer.java:302)
  |         at org.jboss.kernel.plugins.deployment.AbstractKernelDeployer.deployBeans(AbstractKernelDeployer.java:272)
  |         at org.jboss.kernel.plugins.deployment.AbstractKernelDeployer.deploy(AbstractKernelDeployer.java:119)
  |         at org.jboss.kernel.plugins.deployment.xml.BeanXMLDeployer.deploy(BeanXMLDeployer.java:96)
  |         at org.jboss.embedded.Bootstrap.deployBaseBootstrapUrl(Bootstrap.java:160)
  |         at org.jboss.embedded.Bootstrap.bootstrapURL(Bootstrap.java:172)
  |         at org.jboss.embedded.Bootstrap.bootstrap(Bootstrap.java:212)
  |         at org.jboss.embedded.Bootstrap.bootstrap(Bootstrap.java:225)
  |         at com.dolby.maximizer.ejb.test.AbstractEJBTestCase.startupEmbeddedJboss(AbstractEJBTestCase.java:63)
  |         at com.dolby.maximizer.ejb.test.TestSetupWrapper.setUp(TestSetupWrapper.java:29)
  |         at junit.extensions.TestSetup$1.protect(TestSetup.java:22)
  |         at junit.framework.TestResult.runProtected(TestResult.java:128)
  |         at junit.extensions.TestSetup.run(TestSetup.java:27)
  |         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  |         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:64)
  |         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
  |         at java.lang.reflect.Method.invoke(Method.java:615)
  |         at org.apache.maven.surefire.junit.JUnitTestSet.execute(JUnitTestSet.java:210)
  |         at org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.executeTestSet(AbstractDirectoryTestSuite.java:135)
  |         at org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(AbstractDirectoryTestSuite.java:122)
  |         at org.apache.maven.surefire.Surefire.run(Surefire.java:129)
  |         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  |         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:64)
  |         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
  |         at java.lang.reflect.Method.invoke(Method.java:615)
  |         at org.apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(SurefireBooter.java:225)
  |         at org.apache.maven.surefire.booter.SurefireBooter.main(SurefireBooter.java:747)
  | Caused by: 
  | java.net.MalformedURLException: unknown protocol: vfsfile
  |         at java.net.URL.<init>(URL.java:608)
  |         at java.net.URL.<init>(URL.java:498)
  |         at java.net.URL.<init>(URL.java:447)
  |         at org.jboss.virtual.plugins.context.file.FileHandler.<init>(FileHandler.java:75)
  |         at org.jboss.virtual.plugins.context.file.FileHandler.<init>(FileHandler.java:89)
  |         at org.jboss.virtual.plugins.context.file.FileSystemContext.createVirtualFileHandler(FileSystemContext.java:253)
  |         at org.jboss.virtual.plugins.context.file.FileSystemContext.createVirtualFileHandler(FileSystemContext.java:186)
  |         at org.jboss.virtual.plugins.context.file.FileSystemContext.<init>(FileSystemContext.java:150)
  |         at org.jboss.virtual.plugins.context.file.FileSystemContext.<init>(FileSystemContext.java:124)
  |         at org.jboss.virtual.plugins.context.file.FileSystemContext.<init>(FileSystemContext.java:113)
  |         at org.jboss.virtual.plugins.context.file.FileSystemContextFactory.getVFS(FileSystemContextFactory.java:54)
  |         at org.jboss.virtual.VFS.getVFS(VFS.java:130)
  |         at org.jboss.virtual.VFS.getRoot(VFS.java:144)
  |         at org.jboss.embedded.DeploymentGroup.getVirtualFile(DeploymentGroup.java:201)
  |         ... 49 more
  | 

View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4020673#4020673

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4020673



More information about the jboss-user mailing list