users@glassfish.java.net

Glassfish V2 and exploded deployments

From: <glassfish_at_javadesktop.org>
Date: Fri, 20 Jul 2007 10:32:37 PDT

I am using glassfish V2 build 56. I am trying to use exploded deployment but without any success. My structure is:
ctg.main.ear - exploded
ctg-main-war.war - exploded
ctg-main-ejb.jar - exploded
lib
META-INF
jboss-seam.jar - archive

Exploded directories are created by myeclipse.

After deployment I am getting the next exceptions:

2007.07.20 19:17:43 com.sun.enterprise.server.PEMain main
INFO: Starting Sun Java System Application Server 9.1 (build b56-rc) ...
2007.07.20 19:17:43 com.sun.enterprise.server.PEMain$LoadMBeanServer doRun
INFO: MBeanServer started: com.sun.enterprise.interceptor.DynamicInterceptor
2007.07.20 19:17:43 com.sun.enterprise.server.ss.ASLazyKernel startASSocketServices
INFO: CORE5098: AS Socket Service Initialization has been completed.
2007.07.20 19:17:43 com.sun.enterprise.server.ApplicationServer printStartupInfo
INFO: CORE5076: Using [Java HotSpot(TM) Client VM, Version 1.6.0_02] from [Sun Microsystems Inc.]
2007.07.20 19:17:44 com.sun.enterprise.security.SecurityLifecycle <init>
INFO: SEC1002: Security Manager is OFF.
2007.07.20 19:17:44 com.sun.enterprise.server.logging.SystemOutandErrHandler$LoggingByteArrayOutputStream flush
INFO: C:\appservers\glassfish\domains\domain1/config/.__com_sun_appserv_pid
2007.07.20 19:17:45 com.sun.enterprise.admin.server.core.AdminService init
INFO: ADM0001:SunoneInterceptor is now enabled
2007.07.20 19:17:45 com.sun.enterprise.security.PolicyLoader loadPolicy
INFO: SEC1143: Loading policy provider com.sun.enterprise.security.provider.PolicyWrapper.
2007.07.20 19:17:45 com.sun.enterprise.web.VirtualServer configureSSOValve
INFO: WEB0114: SSO is disabled in virtual server [server]
2007.07.20 19:17:45 com.sun.enterprise.web.VirtualServer configureSSOValve
INFO: WEB0114: SSO is disabled in virtual server [__asadmin]
2007.07.20 19:17:46 com.sun.enterprise.admin.server.core.AdminService initializeAMXMBeans
INFO: ADM1079: Initialization of AMX MBeans started
2007.07.20 19:17:46 com.sun.enterprise.admin.jmx.remote.server.rmi.JmxConnectorServerDriver logJconsoleStartup
INFO: ADM1504: Here is the JMXServiceURL for the Standard JMXConnectorServer: [service:jmx:rmi:///jndi/rmi://q1:8686/jmxrmi]. This is where the remote administrative clients should connect using the standard JMX connectors
2007.07.20 19:17:46 com.sun.enterprise.admin.jmx.remote.server.rmi.JmxConnectorServerDriver logJconsoleStartup
INFO: ADM1506: Status of Standard JMX Connector: Active = [true]
2007.07.20 19:17:47 com.sun.jbi.framework.JBIFramework startup
INFO: JBIFW0010: JBI framework ready to accept requests.
2007.07.20 19:17:48 com.sun.ejb.base.sfsb.util.EJBServerConfigLookup needToAddSFSBVersionInterceptors
INFO: EJBSCLookup:: sc.getEjbContainerAvailabilityEnabledFromConfig() ==> false
2007.07.20 19:17:49 com.sun.jts.CosTransactions.DefaultTransactionService identify_ORB
INFO: JTS5014: Recoverable JTS instance, serverId = [3700]
2007.07.20 19:17:49 com.sun.enterprise.server.ondemand.SystemAppLoader loadSystemApps
INFO: About to load the system app: MEjbApp
2007.07.20 19:17:49 com.sun.enterprise.iiop.POARemoteReferenceFactory createReferenceFactory
INFO: POARemoteRefFactory checking if SFSBVersionPolicy need to be added
2007.07.20 19:17:49 com.sun.ejb.base.sfsb.util.EJBServerConfigLookup needToAddSFSBVersionInterceptors
INFO: EJBSCLookup:: sc.getEjbContainerAvailabilityEnabledFromConfig() ==> false
2007.07.20 19:17:49 com.sun.enterprise.iiop.POARemoteReferenceFactory createReferenceFactory
INFO: POARemoteRefFactory addSFSBVersionPolicy? false
2007.07.20 19:17:49 com.sun.enterprise.iiop.POARemoteReferenceFactory createReferenceFactory
INFO: POARemoteRefFactory checking if SFSBVersionPolicy need to be added
2007.07.20 19:17:49 com.sun.ejb.base.sfsb.util.EJBServerConfigLookup needToAddSFSBVersionInterceptors
INFO: EJBSCLookup:: sc.getEjbContainerAvailabilityEnabledFromConfig() ==> false
2007.07.20 19:17:49 com.sun.enterprise.iiop.POARemoteReferenceFactory createReferenceFactory
INFO: POARemoteRefFactory addSFSBVersionPolicy? false
2007.07.20 19:17:49 com.sun.enterprise.server.AbstractLoader loadEjbs
INFO: LDR5010: All ejb(s) of [MEjbApp] loaded successfully!
2007.07.20 19:17:49 com.sun.enterprise.server.ondemand.SystemAppLoader loadSystemApps
INFO: About to load the system app: __ejb_container_timer_app
2007.07.20 19:17:50 com.sun.ejb.containers.TimerBeanContainer doAfterApplicationDeploy
INFO: EJB5109:EJB Timer Service started successfully for datasource [jdbc/__TimerPool]
2007.07.20 19:17:50 com.sun.enterprise.server.AbstractLoader loadEjbs
INFO: LDR5010: All ejb(s) of [__ejb_container_timer_app] loaded successfully!
2007.07.20 19:17:50 com.sun.enterprise.server.AbstractLoader loadPersistenceUnits
WARNING: C:\appservers\glassfish\domains\domain1\autodeploy\ctg-main.ear\ctg-main-war_war\WEB-INF\classes does not exist!
java.lang.RuntimeException: C:\appservers\glassfish\domains\domain1\autodeploy\ctg-main.ear\ctg-main-war_war\WEB-INF\classes does not exist!
at com.sun.enterprise.server.PersistenceUnitInfoImpl.getAbsolutePuRootFile(PersistenceUnitInfoImpl.java:398)
at com.sun.enterprise.server.PersistenceUnitInfoImpl._getJarFiles(PersistenceUnitInfoImpl.java:344)
at com.sun.enterprise.server.PersistenceUnitInfoImpl.<init>(PersistenceUnitInfoImpl.java:112)
at com.sun.enterprise.server.PersistenceUnitLoaderImpl.load(PersistenceUnitLoaderImpl.java:121)
at com.sun.enterprise.server.PersistenceUnitLoaderImpl.load(PersistenceUnitLoaderImpl.java:84)
at com.sun.enterprise.server.AbstractLoader.loadPersistenceUnits(AbstractLoader.java:898)
at com.sun.enterprise.server.ApplicationLoader.doLoad(ApplicationLoader.java:184)
at com.sun.enterprise.server.TomcatApplicationLoader.doLoad(TomcatApplicationLoader.java:126)
at com.sun.enterprise.server.AbstractLoader.load(AbstractLoader.java:244)
at com.sun.enterprise.server.AbstractManager.load(AbstractManager.java:225)
at com.sun.enterprise.server.ApplicationLifecycle.onStartup(ApplicationLifecycle.java:217)
at com.sun.enterprise.server.ApplicationServer.onStartup(ApplicationServer.java:442)
at com.sun.enterprise.server.ondemand.OnDemandServer.onStartup(OnDemandServer.java:120)
at com.sun.enterprise.server.PEMain.run(PEMain.java:411)
at com.sun.enterprise.server.PEMain.main(PEMain.java:338)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.sun.enterprise.server.PELaunch.main(PELaunch.java:294)
2007.07.20 19:17:50 com.sun.enterprise.server.AbstractManager load
WARNING: CORE5021: Application NOT loaded: [ctg-main]
2007.07.20 19:17:50 com.sun.enterprise.web.PEWebContainer startInstance
INFO: WEB0302: Starting Sun-Java-System/Application-Server.
2007.07.20 19:17:50 com.sun.enterprise.web.connector.grizzly.GrizzlyHttpProtocol start
INFO: WEB0712: Starting Sun-Java-System/Application-Server HTTP/1.1 on 8080
2007.07.20 19:17:50 com.sun.enterprise.web.connector.grizzly.GrizzlyHttpProtocol start
INFO: WEB0712: Starting Sun-Java-System/Application-Server HTTP/1.1 on 8181
2007.07.20 19:17:50 com.sun.enterprise.web.connector.grizzly.GrizzlyHttpProtocol start
INFO: WEB0712: Starting Sun-Java-System/Application-Server HTTP/1.1 on 4848
2007.07.20 19:17:51 com.sun.enterprise.management.selfmanagement.SelfManagementService onReady
INFO: SMGT0007: Self Management Rules service is enabled
2007.07.20 19:17:51 com.sun.enterprise.server.PEMain main
INFO: Application server startup complete.
2007.07.20 19:17:51 com.sun.enterprise.deployment.autodeploy.AutoDeployer deploy
INFO: [AutoDeploy] Selecting file C:\appservers\glassfish\domains\domain1\autodeploy\ctg-main.ear for autodeployment.
2007.07.20 19:17:51 com.sun.enterprise.deployment.autodeploy.AutoDeployer undeployJavaEEArchive
INFO: Autoundeploying application :ctg-main
2007.07.20 19:17:51 com.sun.enterprise.deployment.phasing.PEDeploymentService$AuditInfo <init>
INFO: Undeployment by user Unknown of module ctg-main (type=Application) starting
2007.07.20 19:17:51 com.sun.enterprise.web.WebContainer unloadWebModule
SEVERE: [WebContainer] Undeployment failed for context /ctg-main.war
2007.07.20 19:17:51 com.sun.enterprise.server.ApplicationManager applicationUndeployed
INFO: CORE5022: All ejb(s) of [ctg-main] were unloaded successfully!
2007.07.20 19:17:51 com.sun.enterprise.deployment.phasing.PEDeploymentService$AuditInfo reportEnd
INFO: Undeployment by user Unknown of module ctg-main (type=Application) completed successfully, elapsed time 296 ms
2007.07.20 19:17:51 com.sun.enterprise.deployment.autodeploy.AutoDeployer invokeUndeploymentService
INFO: [AutoDeploy] Successfully autoundeployed : C:\appservers\glassfish\domains\domain1\autodeploy\ctg-main.ear.
2007.07.20 19:17:51 com.sun.enterprise.deployment.phasing.PEDeploymentService$AuditInfo <init>
INFO: Deployment by user Unknown of module ctg-main (type=Application) starting
2007.07.20 19:17:52 com.sun.enterprise.deployment.phasing.J2EECPhase runPhase
SEVERE: Exception occured in J2EEC Phasejava.lang.IllegalArgumentException: Invalid ejb jar [jboss-seam.jar]: it contains zero ejb.
Note:
1. A valid ejb jar requires at least one session, entity (1.x/2.x style), or message driven bean.
2. EJB3+ entity beans (@Entity) are POJOs and please package them as library jar.
3. If the jar file contains valid EJBs which are annotated with EJB component level annotations (@Stateless, @Stateful, @MessageDriven), please check server.log to see whether the annotations were processed properly.
com.sun.enterprise.deployment.backend.IASDeploymentException: Error loading deployment descriptors for module [ctg-main] -- Invalid ejb jar [jboss-seam.jar]: it contains zero ejb.
Note:
1. A valid ejb jar requires at least one session, entity (1.x/2.x style), or message driven bean.
2. EJB3+ entity beans (@Entity) are POJOs and please package them as library jar.
3. If the jar file contains valid EJBs which are annotated with EJB component level annotations (@Stateless, @Stateful, @MessageDriven), please check server.log to see whether the annotations were processed properly.
at com.sun.enterprise.deployment.backend.Deployer.loadDescriptors(Deployer.java:390)
at com.sun.enterprise.deployment.backend.AppDeployerBase.loadDescriptors(AppDeployerBase.java:358)
at com.sun.enterprise.deployment.backend.AppDeployer.deploy(AppDeployer.java:226)
at com.sun.enterprise.deployment.backend.AppDeployer.doRequestFinish(AppDeployer.java:148)
at com.sun.enterprise.deployment.phasing.J2EECPhase.runPhase(J2EECPhase.java:191)
at com.sun.enterprise.deployment.phasing.DeploymentPhase.executePhase(DeploymentPhase.java:108)
at com.sun.enterprise.deployment.phasing.PEDeploymentService.executePhases(PEDeploymentService.java:919)
at com.sun.enterprise.deployment.phasing.PEDeploymentService.deploy(PEDeploymentService.java:276)
at com.sun.enterprise.deployment.phasing.PEDeploymentService.deploy(PEDeploymentService.java:294)
at com.sun.enterprise.admin.mbeans.ApplicationsConfigMBean.deploy(ApplicationsConfigMBean.java:555)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.sun.enterprise.admin.MBeanHelper.invokeOperationInBean(MBeanHelper.java:375)
at com.sun.enterprise.admin.MBeanHelper.invokeOperationInBean(MBeanHelper.java:358)
at com.sun.enterprise.admin.config.BaseConfigMBean.invoke(BaseConfigMBean.java:464)
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:836)
at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:761)
at sun.reflect.GeneratedMethodAccessor13.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.sun.enterprise.admin.util.proxy.ProxyClass.invoke(ProxyClass.java:90)
at $Proxy1.invoke(Unknown Source)
at com.sun.enterprise.admin.server.core.jmx.SunoneInterceptor.invoke(SunoneInterceptor.java:304)
at com.sun.enterprise.interceptor.DynamicInterceptor.invoke(DynamicInterceptor.java:174)
at com.sun.enterprise.deployment.autodeploy.AutoDeployer.invokeDeploymentService(AutoDeployer.java:564)
at com.sun.enterprise.deployment.autodeploy.AutoDeployer.deployJavaEEArchive(AutoDeployer.java:545)
at com.sun.enterprise.deployment.autodeploy.AutoDeployer.deploy(AutoDeployer.java:492)
at com.sun.enterprise.deployment.autodeploy.AutoDeployer.deployAll(AutoDeployer.java:267)
at com.sun.enterprise.deployment.autodeploy.AutoDeployControllerImpl$AutoDeployTask.run(AutoDeployControllerImpl.java:374)
at java.util.TimerThread.mainLoop(Timer.java:512)
at java.util.TimerThread.run(Timer.java:462)
Caused by: java.lang.IllegalArgumentException: Invalid ejb jar [jboss-seam.jar]: it contains zero ejb.
Note:
1. A valid ejb jar requires at least one session, entity (1.x/2.x style), or message driven bean.
2. EJB3+ entity beans (@Entity) are POJOs and please package them as library jar.
3. If the jar file contains valid EJBs which are annotated with EJB component level annotations (@Stateless, @Stateful, @MessageDriven), please check server.log to see whether the annotations were processed properly.
at com.sun.enterprise.deployment.util.EjbBundleValidator.accept(EjbBundleValidator.java:95)
at com.sun.enterprise.deployment.util.ApplicationValidator.accept(ApplicationValidator.java:82)
at com.sun.enterprise.deployment.EjbBundleDescriptor.visit(EjbBundleDescriptor.java:729)
at com.sun.enterprise.deployment.Application.visit(Application.java:1754)
at com.sun.enterprise.deployment.archivist.ApplicationArchivist.validate(ApplicationArchivist.java:470)
at com.sun.enterprise.deployment.archivist.ApplicationArchivist.openArchive(ApplicationArchivist.java:790)
at com.sun.enterprise.deployment.archivist.ApplicationArchivist.openArchive(ApplicationArchivist.java:744)
at com.sun.enterprise.deployment.backend.Deployer.loadDescriptors(Deployer.java:349)
... 32 more
2007.07.20 19:17:52 com.sun.enterprise.deployment.phasing.PEDeploymentService$AuditInfo reportEnd
INFO: Deployment by user Unknown of module ctg-main (type=Application) failed, elapsed time 484 ms
2007.07.20 19:17:52 com.sun.enterprise.deployment.autodeploy.AutoDeployer parseResult
SEVERE: "DPL8011: autodeployment failure while deploying the application : Error loading deployment descriptors for module [ctg-main] -- Invalid ejb jar [jboss-seam.jar]: it contains zero ejb.
Note:
1. A valid ejb jar requires at least one session, entity (1.x/2.x style), or message driven bean.
2. EJB3+ entity beans (@Entity) are POJOs and please package them as library jar.
3. If the jar file contains valid EJBs which are annotated with EJB component level annotations (@Stateless, @Stateful, @MessageDriven), please check server.log to see whether the annotations were processed properly.
"
2007.07.20 19:17:52 com.sun.enterprise.deployment.autodeploy.AutoDeployer markFileAfterDeployment
INFO: [AutoDeploy] Autodeploy failed : C:\appservers\glassfish\domains\domain1\autodeploy\ctg-main.ear.

When I deploy ear as an archive everything works fine.

What should do I do?
[Message sent by forum member 'ivicac' (ivicac)]

http://forums.java.net/jive/thread.jspa?messageID=227470