Deployment problem on GlassfishV2 with Seam 2.1b1
rickhoro2 Sep 5, 2008 9:34 PMI am unable to run my application with Seam 2.0.3 because of JIRA 3274. Since this is reported as fixed in Seam 2.1b1, I tried upgrading. Unfortunately, I have run into another blocking problem -- inability to deploy.
I'm using NetBeans 6.1, Glassfish V2ur2, Hibernate 3.3.0 (and associated Hibernate Annotations, EntityManager, Validator, and Search).
It's failing with a javax.ejb.EJBException: nested exception is: javax.ejb.CreateException: Could not create stateless EJB (full stack trace below).
The EJBs in question are UtilityBean and DataFileLoaderBean, which references UtilityLocal. The DataFileLoaderBean is called only by the javax.ejb.TimerService.
Below, I include the EJB references in my web.xml file, and portions of DataFileLoaderBean and UtilityBean.
DataFileLoaderBean
@javax.ejb.Stateless public class DataFileLoaderBean implements com.unclejoes.ejb.DataFileLoaderRemote, com.unclejoes.ejb.DataFileLoaderLocal { private static class TimerInfo implements Serializable { @Resource TimerService _timerService; @EJB private UtilityLocal utilityFacade; @EJB private FullTextIndexerLocal _fullTextIndexer; ... }
UtilityBean
@Stateful @Scope(ScopeType.SESSION) @Name("utilityBean") public class UtilityBean implements UtilityLocal { @Create public void init() { } ... @Remove @Destroy public void destroy() {} }
web.xml
<ejb-local-ref> <ejb-ref-name>UncleJoes-ejb/ShoppingCartBean/local</ejb-ref-name> <ejb-ref-type>Session</ejb-ref-type> <local>com.unclejoes.ejb.ShoppingCartLocal</local> <ejb-link>ShoppingCartBean</ejb-link> </ejb-local-ref> <ejb-local-ref> <ejb-ref-name>UncleJoes-ejb/ProductSearchBean/local</ejb-ref-name> <ejb-ref-type>Session</ejb-ref-type> <local>com.unclejoes.ejb.ProductSearchLocal</local> <ejb-link>ProductSearchBean</ejb-link> </ejb-local-ref> <ejb-local-ref> <ejb-ref-name>UncleJoes-ejb/CatalogItemFacade/local</ejb-ref-name> <ejb-ref-type>Session</ejb-ref-type> <local>com.unclejoes.facade.CatalogItemFacadeLocal</local> <ejb-link>CatalogItemFacade</ejb-link> </ejb-local-ref> <ejb-local-ref> <ejb-ref-name>UncleJoes-ejb/DepartmentFacade/local</ejb-ref-name> <ejb-ref-type>Session</ejb-ref-type> <local>com.unclejoes.facade.DepartmentFacadeLocal</local> <ejb-link>DepartmentItemFacade</ejb-link> </ejb-local-ref> <ejb-local-ref> <ejb-ref-name>UncleJoes-ejb/ProductClassFacade/local</ejb-ref-name> <ejb-ref-type>Session</ejb-ref-type> <local>com.unclejoes.facade.ProductClassFacadeLocal</local> <ejb-link>ProductClassItemFacade</ejb-link> </ejb-local-ref> <ejb-local-ref> <ejb-ref-name>UncleJoes-ejb/ProductSubclassFacade/local</ejb-ref-name> <ejb-ref-type>Session</ejb-ref-type> <local>com.unclejoes.facade.ProductSubclassFacadeLocal</local> <ejb-link>ProductSubclassItemFacade</ejb-link> </ejb-local-ref> <ejb-local-ref> <ejb-ref-name>UncleJoes-ejb/GlobalAdminBean/local</ejb-ref-name> <ejb-ref-type>Session</ejb-ref-type> <local>com.unclejoes.ejb.admin.GlobalAdminLocal</local> <ejb-link>GlobalAdminBean</ejb-link> </ejb-local-ref> <ejb-local-ref> <ejb-ref-name>UncleJoes-ejb/SubclassPricingBean/local</ejb-ref-name> <ejb-ref-type>Session</ejb-ref-type> <local>com.unclejoes.ejb.admin.SubclassPricingLocal</local> <ejb-link>SubclassPricingBean</ejb-link> </ejb-local-ref> <ejb-local-ref> <ejb-ref-name>UncleJoes-ejb/ProductOverrideBean/local</ejb-ref-name> <ejb-ref-type>Session</ejb-ref-type> <local>com.unclejoes.ejb.admin.ProductOverrideLocal</local> <ejb-link>ProductOverrideBean</ejb-link> </ejb-local-ref> <ejb-local-ref> <ejb-ref-name>UncleJoes-ejb/ViewOrdersBean/local</ejb-ref-name> <ejb-ref-type>Session</ejb-ref-type> <local>com.unclejoes.ejb.admin.ViewOrdersLocal</local> <ejb-link>ViewOrdersBean</ejb-link> </ejb-local-ref> <ejb-local-ref> <ejb-ref-name>UncleJoes-ejb/UtilityBean/local</ejb-ref-name> <ejb-ref-type>Session</ejb-ref-type> <local>com.unclejoes.ejb.UtilityLocal</local> <ejb-link>UtilityBean</ejb-link> </ejb-local-ref> <ejb-local-ref> <ejb-ref-name>UncleJoes-ejb/AuthenticatorBean/local</ejb-ref-name> <ejb-ref-type>Session</ejb-ref-type> <local>com.unclejoes.ejb.AuthenticatorLocal</local> <ejb-link>AuthenticatorBean</ejb-link> </ejb-local-ref> <ejb-local-ref> <ejb-ref-name>UncleJoes-ejb/ErrorProcessorBean/local</ejb-ref-name> <local>com.unclejoes.ejb.ErrorProcessorLocal</local> <ejb-link>ErrorProcessorBean</ejb-link> </ejb-local-ref>
Glassfish Log
Log was too long, so I put it here!