测试 ejb 3.1 时出错 (netbeans-glassifish-junit4)
我正在尝试使用实体增删改查操作对 EJB 进行单元测试。我已经能够仅运行我的 Web 应用程序(并且所有工作)来测试它,但我想使用 JUnit 来完成它。
所以,我的环境是 Netbeans 7、Glassfish 3.1(JavaDB、EclipseLink)、JUnit4。
当我为 EJB 创建测试类时,代码模板使用以下代码行,当我运行代码时,该代码行会引发异常:
EJBContainer container = javax.ejb.embeddable.EJBContainer.createEJBContainer();
异常是:
java.lang.RuntimeException: Invalid resource : jdbc/mine__pm
Exception while preparing the app : Invalid resource : jdbc/mine__pm
我的 EJB 有一个注入的 EntityManager
,它指向我的持久性单元。该持久性单元引用 Netbeans 为 Glassfish 创建的名为 jdbc/mine
的 JNDI 数据源。它运行并且我可以在我的服务器上看到它。我也尝试使用 glassfish-resource.xml 来做同样的事情。
为什么不起作用?
I'm trying to unit testing a EJB with entity crud operations. I already was capable of testing it just running my web application (and all works), but I want to do it with JUnit.
So, my environment is Netbeans 7, Glassfish 3.1 (JavaDB, EclipseLink), JUnit4.
When I create a test class for my EJB, the code template uses the following line of code that throw an exception when I run the code:
EJBContainer container = javax.ejb.embeddable.EJBContainer.createEJBContainer();
the exception is:
java.lang.RuntimeException: Invalid resource : jdbc/mine__pm
Exception while preparing the app : Invalid resource : jdbc/mine__pm
My EJB has an injected EntityManager
that points to my persistence unit. This persistence unit is referencing a data source that I JNDI named jdbc/mine
created by Netbeans for my Glassfish. It runs and I can see it on my server. I tried using a glassfish-resource.xml
to do the same thing too.
Why doesn't it work?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论