dev@glassfish.java.net

Re: Not able to deploy a ROR application in MAC but works on Solaris x86

From: Pramod Gopinath <Pramod.Gopinath_at_Sun.COM>
Date: Fri, 14 Dec 2007 14:59:38 -0800

Wanted to update this thread with the issue. After speaking to Jerome, I
rechecked my sample application and found that I had a WEB-iNF directory
under my ROR application. This application was also used to run against
GlassFish V2 using the JRuby update center module that I had pushed out.
Hence on the MAC when trying to do a directory deploymnet, the server
was correctly considering it to be a WAR file and hence the error.
Whereas on the Solaris machine the WEB-INF directory was not present.
After deleting the WEB-INF directory, the application was being
correctly deployed as a ROR application.

Thanks
Pramod

Pramod Gopinath wrote:
> I am trying to deploy a ROR application to GlassFish V3. The
> deployment works correctly on Solaris x86 but fails on MAC. I am using
> the code that has been checked out on the same day on both the
> machines. The major difference that I can think of is that - on Mac I
> am using JDK 1.5_07 & on Solaris am using JDK 1.6_03 (not sure if this
> matters, but thought I would throw this information out).
>
> Have inserted the complete run result of my MAC below :
>
> java -jar lib/glassfish-10.0-SNAPSHOT.jar
> Dec 13, 2007 9:57:58 PM com.sun.enterprise.v3.server.AppServerStartup run
> INFO: Init service :
> com.sun.enterprise.v3.services.impl.CmdLineParamProcessor_at_688954
> Dec 13, 2007 9:57:58 PM com.sun.enterprise.v3.server.AppServerStartup run
> INFO: Init service :
> com.sun.enterprise.v3.services.impl.LogManagerService_at_2d502d
> Dec 13, 2007 9:57:58 PM
> com.sun.enterprise.v3.services.impl.DeploymentService postConstruct
> INFO: Supported containers : web,jruby,phobos
> Dec 13, 2007 9:57:58 PM com.sun.enterprise.v3.server.AppServerStartup run
> INFO: Startup service : Deployment
> Dec 13, 2007 9:57:59 PM
> com.sun.enterprise.v3.services.impl.GrizzlyAdapter postConstruct
> INFO: Listening on port 8080
> Dec 13, 2007 9:57:59 PM com.sun.enterprise.v3.server.AppServerStartup run
> INFO: Startup service : Application Loader
> Dec 13, 2007 9:57:59 PM com.sun.enterprise.v3.server.AppServerStartup run
> INFO: Startup service : Grizzly on port 8080
> Dec 13, 2007 9:57:59 PM com.sun.enterprise.v3.server.AppServerStartup run
> INFO: Glassfish v3 started in 1245 ms
> Dec 13, 2007 10:00:25 PM com.sun.enterprise.v3.web.WebContainer
> postConstruct
> INFO: Using default-web.xml
> /Users/pramodgopinath/work_related/gf_v3_install/12132007/glassfish/config/../domains/domain1/config/default-web.xml
> com.sun.enterprise.glassfish.bootstrap.GFModuleDefinition_at_40979b
> Dec 13, 2007 10:00:26 PM com.sun.enterprise.v3.web.WebContainer
> postConstruct
> INFO: Created HTTP listener http-listener-1
> Dec 13, 2007 10:00:26 PM com.sun.enterprise.v3.web.WebContainer
> postConstruct
> INFO: Created HTTP listener http-listener-2
> Dec 13, 2007 10:00:26 PM com.sun.enterprise.v3.web.WebContainer
> postConstruct
> INFO: Created virtual server server
> Dec 13, 2007 10:00:26 PM com.sun.enterprise.v3.web.WebContainer
> postConstruct
> INFO: Created virtual server __asadmin
> Dec 13, 2007 10:00:29 PM org.apache.catalina.loader.WebappLoader start
> SEVERE: LifecycleException
> java.lang.IllegalAccessError: tried to access method
> org.apache.catalina.loader.WebappClassLoader.addJar(Ljava/lang/String;Ljava/util/jar/JarFile;Ljava/io/File;)V
> from class org.apache.catalina.loader.WebappLoader
> at
> org.apache.catalina.loader.WebappLoader.setRepositories(WebappLoader.java:1144)
> at
> org.apache.catalina.loader.WebappLoader.start(WebappLoader.java:741)
> at
> org.apache.catalina.core.StandardContext.start(StandardContext.java:5053)
> at
> org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:973)
> at
> org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:957)
> at
> org.apache.catalina.core.StandardHost.addChild(StandardHost.java:688)
> at
> com.sun.enterprise.v3.web.WebDeployer.load(WebDeployer.java:143)
> at com.sun.enterprise.v3.web.WebDeployer.load(WebDeployer.java:67)
> at
> com.sun.enterprise.v3.server.ApplicationLifecycle.load(ApplicationLifecycle.java:224)
> at
> com.sun.enterprise.v3.deployment.DeployCommand.execute(DeployCommand.java:198)
> at
> com.sun.enterprise.v3.admin.AdminAdapter.doCommand(AdminAdapter.java:246)
> at
> com.sun.enterprise.v3.admin.AdminAdapter.doCommand(AdminAdapter.java:162)
> at
> com.sun.enterprise.v3.admin.AdminAdapter.service(AdminAdapter.java:110)
> at
> com.sun.enterprise.v3.server.HK2Dispatcher.dispath(HK2Dispatcher.java:100)
> at
> com.sun.enterprise.v3.services.impl.GrizzlyAdapter.service(GrizzlyAdapter.java:251)
> at
> com.sun.grizzly.http.DefaultProcessorTask.invokeAdapter(DefaultProcessorTask.java:598)
> at
> com.sun.grizzly.http.DefaultProcessorTask.doProcess(DefaultProcessorTask.java:529)
> at
> com.sun.grizzly.http.DefaultProcessorTask.process(DefaultProcessorTask.java:773)
> at
> com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:130)
> at
> com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:90)
> at
> com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:68)
> at
> com.sun.grizzly.http.SelectorThread$1.execute(SelectorThread.java:628)
> at com.sun.grizzly.Context.call(Context.java:266)
> at
> com.sun.grizzly.util.WorkerThreadImpl.run(WorkerThreadImpl.java:179)
> Dec 13, 2007 10:00:29 PM org.apache.catalina.core.ContainerBase
> addChildInternal
> SEVERE: ContainerBase.addChild: start:
> LifecycleException: start: : java.lang.IllegalAccessError: tried to
> access method
> org.apache.catalina.loader.WebappClassLoader.addJar(Ljava/lang/String;Ljava/util/jar/JarFile;Ljava/io/File;)V
> from class org.apache.catalina.loader.WebappLoader
> at
> org.apache.catalina.loader.WebappLoader.start(WebappLoader.java:755)
> at
> org.apache.catalina.core.StandardContext.start(StandardContext.java:5053)
> at
> org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:973)
> at
> org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:957)
> at
> org.apache.catalina.core.StandardHost.addChild(StandardHost.java:688)
> at
> com.sun.enterprise.v3.web.WebDeployer.load(WebDeployer.java:143)
> at com.sun.enterprise.v3.web.WebDeployer.load(WebDeployer.java:67)
> at
> com.sun.enterprise.v3.server.ApplicationLifecycle.load(ApplicationLifecycle.java:224)
> at
> com.sun.enterprise.v3.deployment.DeployCommand.execute(DeployCommand.java:198)
> at
> com.sun.enterprise.v3.admin.AdminAdapter.doCommand(AdminAdapter.java:246)
> at
> com.sun.enterprise.v3.admin.AdminAdapter.doCommand(AdminAdapter.java:162)
> at
> com.sun.enterprise.v3.admin.AdminAdapter.service(AdminAdapter.java:110)
> at
> com.sun.enterprise.v3.server.HK2Dispatcher.dispath(HK2Dispatcher.java:100)
> at
> com.sun.enterprise.v3.services.impl.GrizzlyAdapter.service(GrizzlyAdapter.java:251)
> at
> com.sun.grizzly.http.DefaultProcessorTask.invokeAdapter(DefaultProcessorTask.java:598)
> at
> com.sun.grizzly.http.DefaultProcessorTask.doProcess(DefaultProcessorTask.java:529)
> at
> com.sun.grizzly.http.DefaultProcessorTask.process(DefaultProcessorTask.java:773)
> at
> com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:130)
> at
> com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:90)
> at
> com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:68)
> at
> com.sun.grizzly.http.SelectorThread$1.execute(SelectorThread.java:628)
> at com.sun.grizzly.Context.call(Context.java:266)
> at
> com.sun.grizzly.util.WorkerThreadImpl.run(WorkerThreadImpl.java:179)
> Dec 13, 2007 10:00:29 PM
> com.sun.enterprise.v3.server.ApplicationLifecycle failure
> SEVERE: Exception while invoking class
> com.sun.enterprise.v3.web.WebDeployer prepare method
> java.lang.IllegalStateException: ContainerBase.addChild: start:
> LifecycleException: start: : java.lang.IllegalAccessError: tried to
> access method
> org.apache.catalina.loader.WebappClassLoader.addJar(Ljava/lang/String;Ljava/util/jar/JarFile;Ljava/io/File;)V
> from class org.apache.catalina.loader.WebappLoader
> at
> org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:976)
> at
> org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:957)
> at
> org.apache.catalina.core.StandardHost.addChild(StandardHost.java:688)
> at
> com.sun.enterprise.v3.web.WebDeployer.load(WebDeployer.java:143)
> at com.sun.enterprise.v3.web.WebDeployer.load(WebDeployer.java:67)
> at
> com.sun.enterprise.v3.server.ApplicationLifecycle.load(ApplicationLifecycle.java:224)
> at
> com.sun.enterprise.v3.deployment.DeployCommand.execute(DeployCommand.java:198)
> at
> com.sun.enterprise.v3.admin.AdminAdapter.doCommand(AdminAdapter.java:246)
> at
> com.sun.enterprise.v3.admin.AdminAdapter.doCommand(AdminAdapter.java:162)
> at
> com.sun.enterprise.v3.admin.AdminAdapter.service(AdminAdapter.java:110)
> at
> com.sun.enterprise.v3.server.HK2Dispatcher.dispath(HK2Dispatcher.java:100)
> at
> com.sun.enterprise.v3.services.impl.GrizzlyAdapter.service(GrizzlyAdapter.java:251)
> at
> com.sun.grizzly.http.DefaultProcessorTask.invokeAdapter(DefaultProcessorTask.java:598)
> at
> com.sun.grizzly.http.DefaultProcessorTask.doProcess(DefaultProcessorTask.java:529)
> at
> com.sun.grizzly.http.DefaultProcessorTask.process(DefaultProcessorTask.java:773)
> at
> com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:130)
> at
> com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:90)
> at
> com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:68)
> at
> com.sun.grizzly.http.SelectorThread$1.execute(SelectorThread.java:628)
> at com.sun.grizzly.Context.call(Context.java:266)
>
>
> Why is there a difference in behavior between the 2 platforms. Any
> pointers to help isolate the issue would be a great help ?
>
>
> Thanks
> Pramod
>