2011-05-31 96 views
1

我正在使用maven的web项目上工作。当我在net-beans 6.8上运行服务器时,构建是成功的,但是当部署到服务器时,我正在查找失败的异常。请查找服务器请登录以下网址http://pastie.org/1997218。让我知道我在这里错过了什么。该错误的堆栈跟踪为在Glassfish中JNDI查找失败

SEVERE: Exception while invoking class org.glassfish.persistence.jpa.JPADeployer prepare method 
java.lang.RuntimeException: javax.naming.NamingException: Lookup failed for 'jdbc/deliver' in SerialContext [Root exception is javax.naming.NameNotFoundException: deliver not found] 
     at org.glassfish.persistence.jpa.PersistenceUnitInfoImpl.<init> (PersistenceUnitInfoImpl.java:111) 
     at org.glassfish.persistence.jpa.PersistenceUnitLoader.loadPU(PersistenceUnitLoader.java:130) 
     at org.glassfish.persistence.jpa.PersistenceUnitLoader.<init>(PersistenceUnitLoader.java:96) 
     at org.glassfish.persistence.jpa.JPADeployer.prepare(JPADeployer.java:121) 
     at com.sun.enterprise.v3.server.ApplicationLifecycle.prepareModule(ApplicationLifecycle.java:644) 
     at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:296) 
     ... 

回答

2

由于看起来您的生产服务器缺少您的应用程序需要的数据库资源jdbc/deliver。您已经在NetBeans中为您的测试实例正确配置了它。查看NetBeans中的“服务”选项卡,并确保在服务器上设置了类似的数据库。