dev@glassfish.java.net

Running V3 embedded in the IDE: current status...

From: Ludovic Champenois <Ludovic.Champenois_at_Sun.COM>
Date: Sat, 29 Mar 2008 11:34:22 -0700

Hi,
I am experimenting running a V3 runtime in the same JVM as the NetBeans IDE.
There are some issues regarding loging registration, security manager
registration and shutdown/restart if an embedded server not doing a
perfect cleanup we are working on.

There is also this warning raised as an exception with NetBeans when the
Nb VM tries to load a file from an archive which is not located in a
sub-package but at the root dir of a jar. Nb is picky but we good reasons...

It is possible to move the file skip-annotation-class-list in a fully
qualified sub-package name, so that in an extremely modular system like
NetBeans, Eclipse or GlassFish V3, we really have a way to know where a
resource is coming from?
For more details, read the url given by NetBeans as a documentation
about what doing this is a bad practice.



java.lang.IllegalStateException: You are trying to access file:
skip-annotation-class-list from the default package. Please see
http://www.netbeans.org/download/dev/javadoc/org-openide-modules/org/openide/modules/doc-files/classpath.html#default_package
    at
org.netbeans.ProxyClassLoader.printDefaultPackageWarning(ProxyClassLoader.java:524)
    at org.netbeans.ProxyClassLoader.getResource(ProxyClassLoader.java:297)
    at java.lang.ClassLoader.getResource(ClassLoader.java:1027)
    at java.lang.ClassLoader.getResource(ClassLoader.java:1027)
    at java.lang.ClassLoader.getResource(ClassLoader.java:1027)
    at java.lang.ClassLoader.getResource(ClassLoader.java:1027)
    at
com.sun.enterprise.module.impl.ModuleClassLoader.getResource(ModuleClassLoader.java:98)
    at java.lang.ClassLoader.getResourceAsStream(ClassLoader.java:1214)
    at
org.glassfish.apf.factory.Factory.initSkipAnnotationClassList(Factory.java:81)
    at
org.glassfish.apf.factory.Factory.isSkipAnnotationProcessing(Factory.java:110)
    at
org.glassfish.apf.impl.ComponentDefinition.constructClassList(ComponentDefinition.java:88)
    at
org.glassfish.apf.impl.ComponentDefinition.<init>(ComponentDefinition.java:68)
    at
org.glassfish.apf.impl.JavaEEScanner.getComponentInfo(JavaEEScanner.java:57)
    at
org.glassfish.apf.impl.AnnotationProcessorImpl.process(AnnotationProcessorImpl.java:172)
    at
org.glassfish.apf.impl.AnnotationProcessorImpl.process(AnnotationProcessorImpl.java:129)
    at
com.sun.enterprise.deployment.archivist.Archivist.processAnnotations(Archivist.java:469)
    at
com.sun.enterprise.deployment.archivist.Archivist.readAnnotations(Archivist.java:347)
    at
com.sun.enterprise.deployment.archivist.Archivist.readDeploymentDescriptors(Archivist.java:319)
    at
com.sun.enterprise.deployment.archivist.Archivist.open(Archivist.java:210)
    at
com.sun.enterprise.deployment.archivist.ApplicationFactory.openArchive(ApplicationFactory.java:138)
    at
org.glassfish.javaee.core.deployment.JavaEEDeployer.parseModuleMetaData(JavaEEDeployer.java:219)
    at
com.sun.enterprise.web.WebDeployer.parseModuleMetaData(WebDeployer.java:138)
    at
org.glassfish.javaee.core.deployment.JavaEEDeployer.loadMetaData(JavaEEDeployer.java:161)
    at
com.sun.enterprise.v3.server.ApplicationLifecycle.prepare(ApplicationLifecycle.java:532)
    at
com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:282)
    at
com.sun.enterprise.v3.services.impl.ApplicationLoaderService.processApplication(ApplicationLoaderService.java:240)
    at
com.sun.enterprise.v3.services.impl.ApplicationLoaderService.postConstruct(ApplicationLoaderService.java:119)
    at
com.sun.hk2.component.AbstractWombImpl.inject(AbstractWombImpl.java:114)
    at
com.sun.hk2.component.ConstructorWomb.initialize(ConstructorWomb.java:50)
    at com.sun.hk2.component.AbstractWombImpl.get(AbstractWombImpl.java:39)
    at
com.sun.hk2.component.SingletonInhabitant.get(SingletonInhabitant.java:22)
    at com.sun.hk2.component.LazyInhabitant.get(LazyInhabitant.java:71)
    at
com.sun.hk2.component.AbstractInhabitantImpl.get(AbstractInhabitantImpl.java:24)
    at
com.sun.enterprise.v3.server.AppServerStartup.run(AppServerStartup.java:113)