我的ejb-jar.xml在哪里?

时间:2013-11-14 19:54:38

标签: java netbeans ejb weblogic java-ee-5

我在NetBeans 7.4上创建了一个Java EE 5企业应用程序,包括使用Weblogic 10.3.0的WAR和EJB

我正在使用JPA,所以我需要使用我的persistence.xml的数据源

我的问题是我正在尝试在此之后创建JDBC数据源: http://docs.oracle.com/cd/E15051_01/wls/docs103/jdbc_admin/wwimages/jdbc_package_simple.gif

但Netbeans没有向EJB添加ejb-jar.xml,我需要资源参考。 Oracle的文档说它需要在META-INF文件夹中,但如果我将该文件添加到该文件夹​​然后编译它会自动删除。

那么,我的ejb-jar.xml在哪里?如果我自己创建它我可以做什么来包括它而不是在编译后删除?用WINRAR打开jar并手动添加(笑话)?有没有更简单的方法呢?

由于

2 个答案:

答案 0 :(得分:0)

强烈建议您改用新的Java EE 5 Annotations。对于此示例, thisIsMyDataSource 是名称,但您可以在服务器上使用任何名称已配置(例如,您可能有多个名称)。

@Resource
javax.sql.DataSource thisIsMyDataSource;
public Foo doSomethingNeedingADataSource() {
   Connection con = thisIsMyDataSource.getConnection();
   .........
}

Java EE 5通过删除旧版样板配置的要求简化了开发。 您可以(但可能不应该)使用Apache Derby编程之类的东西(可能通过DI)。 EJB中有separation of roles。 以下是使用WebSphere的示例。您可能想要阅读有关JDBC的更多信息。

答案 1 :(得分:0)

好吧,我删除了我的EJB(它没有必要)。我刚刚创建了我的JDBC应用程序模块,以便在我的WAR中使用它,而无需在链接中完成所有这些操作。 将我的datasource-jdbc.xml放在config文件夹(META-INF)中并在weblogic-application.xml中插入下一个代码就足够了:

<module>
  <name>
    MyDatabase
  </name>
  <type>
    JDBC
  </type>
  <path>
    META-INF/datasource-jdbc.xml
  </path>
</module>

然后我使用了JNDI&#34; MyDatabase&#34;在我的Persistence.xml中

要生成datasource-jdbc.xml,您可以转到服务器(测试版),制作数据源,然后转到服务器文件夹,并且有一个文件夹(在其中一个主文件夹中查找)名称为&#34; jdbc&#34;。在其中,您可以获取生成的xml。