首页 文章

jboss 5.0数据源配置在ear文件中 . 如何在同一台服务器上运行oracle 10g和11g?

提问于
浏览
2

目前我的设置是:

在我耳边 META-INF/jboss-app.xml

<jboss-app>
  <module>
    <service>datasource-ds.xml</service>
  </module>
</jboss-app>

datasource-ds.xml

<datasources>
  <local-tx-datasource>
    <jndi-name>jdbc/mydeployment</jndi-name>
    <connection-url>jdbc:oracle:thin:@eir:myport:mydbname</connection-url>
        <driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
    <user-name>myuser</user-name>
    <password>mypassword</password>
    <exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.OracleExceptionSorter</exception-sorter-class-name>
       <metadata>
         <type-mapping>Oracle9i</type-mapping>
      </metadata>
  </local-tx-datasource>
</datasources>

当ojdbc5.jar在我的servername / lib中时它可以工作 .

如何在我的.ear文件中配置我的oracle驱动程序信息,以便我可以有两个不同的ear部署,一个使用Oracle 10g,另一个使用oracle 11g?

编辑:我说错了这个问题 . 我的意思是如何在ear文件中使用ojbc * .jar部署ear,而不是在server / lib目录中 . 在我的设置中,部署了多个不同的应用程序,我希望它们都是自包含的 . 其中一个应用程序使用11克,其余的使用10克 . 现在使用10g的是ear文件,使用11g的是war文件,所以它可以工作 . 现在我要将ear文件转换为war文件(我不需要耳功能)以测试使用了多少Permgen空间 . 所以我想我的问题是:我的意思是如何在ear文件中使用ojbc * .jar而不是在server / lib目录中部署耳朵?

2 回答

  • 0

    在ojdbc.jar版本上,除非在最新版本中不存在您需要的驱动程序的特定功能,否则始终只使用最新版本,因为它们将始终向后兼容 . 在那种情况下,然后使用服务器的中央lib repo是最好的...但是,据说我完全理解使每个Web应用程序独立且更容易部署的要求 .

    在部署时,如果您使用的是IDE,则可以将jdbc jar定义为“库”,然后在“部署”中将其设置为使用代码部署库 . 在JDeveloper中,当您定义用户库时,您可以选择“默认部署它”,这将自动将其分配为WAR或EAR文件构建,这些构建来自使用此库的项目 . 如果您没有将用户库设置为“默认部署”,或者您的IDE没有此选项,则通常“部署”参数(或IDE的任何部分管理WAR和EAR文件构建)将包含选择要包含的库 .

    如果您没有使用IDE,那么您可以手动将这些jar文件推送到warfile结构中的 WEB-INF/lib .

  • 0

    只是复制你 datasource.xml i.g. datasource-ds10g.xmldatasource-ds11g.xml 正确的 connection-url . 并从您的.ear参考数据源 .

相关问题