`

关于jboss 5.0 上配置数据源要注意的一个问题

 
阅读更多
同weblogic不同,在jboss中配置数据源并没有可视化的控制台.一般.大家都是到%JBOSS_HOME%\docs\examples\jca目录下,找到自己所要配置的数据源的模板文件,然后修改jndi-name,connection-url,driver-class,user-name,password,等等,然后把修改后的配置文件丢到要使用的domain下的deploy目录下就可以了,但是这时住往会有个问题.
你会发现,你在客户端查找不到你刚刚配置的数据源.

结果是一大堆异常:
  • Exception in thread "main" javax.naming.NameNotFoundException: MySqlDS not bound   
  •     at org.jnp.server.NamingServer.getBinding(NamingServer.java:542)   
  •     at org.jnp.server.NamingServer.getBinding(NamingServer.java:550)   
  •     at org.jnp.server.NamingServer.getObject(NamingServer.java:556)   
  •     at org.jnp.server.NamingServer.lookup(NamingServer.java:296)   
  •     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)   

  • JNDI查找不到"MySqlDS"这个名称..
    为什么呢?
    我们去JBOSS的控制台去查看JNDI树结构.

    Other components with java:comp namespace
    java: Namespace
      +- ClusteredXAConnectionFactory (class: org.jboss.jms.client.JBossConnectionFactory)
      +- jaas (class: javax.naming.Context)
      |   +- messaging (class: org.jboss.security.plugins.SecurityDomainContext)
      +- TransactionPropagationContextImporter (class: com.arjuna.ats.internal.jbossatx.jta.PropagationContextManager)
      +- MySqlDS (class: org.jboss.resource.adapter.jdbc.WrapperDataSource)

    很明显"MySqlDS"做为key被绑定在JNDI上了.那么为什么还会出错呢...

    : )我浪费了很长时间在找这个错误的过程中,中间甚至一度以为,JBOSS不支持在服务器外获取数据源.后来一个家伙好像在写EJB3.0的时候也遇到这个问题,并且找来了下面这个项文文档..让我惊为天人啊...

    <use-java-context> - A boolean indicating if the jndi-name should be prefixed with java: which causes the DataSource to only be accessible from within the jboss server vm. The default is true.

    Configuring a DataSource for remote usage
    As of jboss-4.0.0 there is support for accessing a DataSource from a remote client. The one change that is necessary for the client to be able to lookup the DataSource from JNDI is to specify use-java-context=false as shown here:

    <datasources>  <local-tx-datasource>    <jndi-name>GenericDS</jndi-name>    <use-java-context>false</use-java-context>    <connection-url>...</connection-url>...
    This results in the DataSource being bound under the JNDI name "GenericDS" instead of the default of "java:/GenericDS" which restricts the lookup to the same VM as the jboss server.

    身为高级知识分子,我相信大家即使读不懂上面的英文,金山词霸总是会使用的.
    它说的大概意思就是.
    当你指定<use-java-context>的值为false时,你就可以在jboss运行的VM外的VM上查找到这个DataSource.
    这个属性默认.为true   :( 
    即,默认情况下你是不可以在JBOSS的VM外来查找这个数据源. 

    其实吧,这个问题看起来很普通,解决起来也很简单只是加了一行代码,但是.JBOSS服务器的提供厂商是否有想过,一个example配置文件中,具然少了这种重要的配置信息.
    至少你把它配上,然后注掉也好啊.

    分享到:
    评论

    相关推荐

      Myeclipse7.0+JBoss5.0测试EJB3.0环境搭建过程源代码

      - **配置持久性**:对于实体Bean,需要配置数据源和实体管理工厂。在`persistence.xml`文件中定义数据库连接和实体映射。 - **部署和测试**:在MyEclipse中,右键点击服务器实例,选择“Add and Remove”,将EJB...

      JBoss_Enterprise_Application_Platform-5.0-Getting_Started_Guide-zh-CN

      JBoss Enterprise Application Platform (EAP) 5.0 是一个强大的、基于 Java 的应用服务器平台,它支持企业级应用开发与部署。该平台提供了丰富的功能集,包括但不限于 Web 服务支持、事务管理、集群和负载均衡能力...

      JBOSS 安装

      以下是一个使用Oracle数据库的数据源配置示例: ```xml &lt;jndi-name&gt;J2YD &lt;connection-url&gt;jdbc:oracle:thin:@172.20.32.51:1521:YD &lt;driver-class&gt;oracle.jdbc.driver.OracleDriver &lt;user-name&gt;zsyd ...

      Drools Jboss Rules 5.0 Developer's Guide

      《Drools JBoss Rules 5.0 Developer's Guide》是一本深入讲解Drools规则引擎技术的书籍。本书由Michal Bali编写,旨在帮助读者掌握Drools平台的各种特性,并通过实际案例来引导读者快速上手开发基于规则的业务逻辑...

      EOS5.0 EOSV5.0 上海 普元 EOS5.0应用指南

      - **查看源码**:要查看PetStore示例的源代码,首先需要使用EOS Studio创建一个名为`petstore`的项目,并在该项目中创建一个名为`PgPetStore`的EOS构件包。构件包应包含除“工作流构件”之外的所有构件类型。然后,...

      Apache安装及JBOSS部署说明文档.rar

      2.2.7配置数据源在APP应用加载前有效(各相关服务加载完毕) 16 2.2.8日志配置,配置log4j.xml 18 2.2.9配置contentType及charset,TOMCAT5.0下JSP统一配置 19 2.3 JVM最小、最大内存的设定 21 2.4 OS字符集问题 ...

      jboss与mysql的连接

      【知识点详解】 本文主要介绍如何配置JBoss应用服务器...通过以上步骤,开发者可以成功地在JBoss-5.1.0上配置和测试与MySQL-5.0的连接,实现应用与数据库的交互。这在开发和部署基于Java EE的Web应用时是至关重要的。

      Drools JBoss Rules 5 Developers Guide

      - **可扩展性**:易于集成新的数据源和技术组件。 综上所述,《Drools JBoss Rules 5 开发者指南》是一本内容丰富且极具实用价值的参考书,它不仅为初学者提供了入门指导,也为有经验的开发人员提供了深入的技术...

      在Eclipse中使用JBoss数据库连接池技术

      在上述代码中,`InitialContext`用于初始化上下文,然后通过`lookup`方法根据JNDI名称获取数据源。接着,使用数据源的`getConnection`方法获取数据库连接,创建`Statement`对象执行SQL查询,并处理结果集。 最后,...

      JBOSS5.0.0.GA1安装部署手册.rar

      本手册将详细讲解如何安装和部署JBoss 5.0.0.GA1版本,这一版本是JBoss的一个重要里程碑,引入了许多新特性和性能优化。 **一、系统需求** 在开始安装前,你需要确保你的系统满足以下基本要求: 1. **操作系统**: ...

      jboss ejb3.0开发介绍

      - 配置 JNDI 数据源(例如 `java:/MSSQLDS`),确保与数据连接池配置中的 JNDI 名称一致。 2. **生成实体 Bean** - 使用 MyEclipse 自动生成实体 Bean 类,这通常涉及到根据数据库表结构自动生成对应的 Java 类...

      Jboss_jndi.zip

      总结,JBoss与MySQL的JNDI整合涉及JBoss的配置文件修改、MySQL驱动的管理以及Java代码中对JNDI数据源的使用。理解并熟练掌握这些步骤,能够帮助开发者高效地在JBoss环境中部署和管理使用MySQL数据库的应用程序。

      jbpm配置心得体会(结合各种数据库)

      - **简化更新方法**: 探索一种更简单的方式来更新 JBoss 的 jBPM 服务器配置。 #### 四、实战体验 通过以上步骤,我们可以成功地配置 jBPM 工作流引擎,并将其部署到 JBoss 上。接下来,可以通过启动 jBPM 自带的...

      Apache安装及jboss部署说明文档

      ### Apache安装及JBoss部署说明文档关键知识点 #### 一、Apache 2.0 及连接器 JK1.2 的...以上是关于 Apache 安装、配置和 JBoss 3.2.3/3.2.6 的部署及配置的关键知识点,希望能够帮助到使用这些技术和工具的读者们。

      jbpm-5.0.0-installer.zip_jbpm_jbpm 5.0_jbpm installer

      【jbpm-5.0.0-installer.zip_jbpm_jbpm 5.0_jbpm installer】这个压缩包是JBoss Business Process Management (jbpm) 的5.0版本安装程序,它提供了完整的jbpm源代码,让我们来深入探讨一下jbpm以及它的5.0版本。...

      JAVASERVLET+MYSQL+JBOSS开发起步[汇编].pdf

      3. **JBoss**:一个开源的应用服务器,这里推荐使用3.2.3或更高版本,可在JBoss官网下载。 4. **MySQL**:作为关系型数据库管理系统,版本4.0.13或更高,可以从MySQL官方网站下载。 5. **MySQL JDBC驱动**:用于...

      Pentaho_Advanced_Install_Guide_zh_CN_1.1.5.pdf

      - **Portal 特征和 Samples**: 文档提供了关于如何在 JBoss 4.0.3 上配置 Pentaho BI 平台的信息,包括门户特性和示例数据的设置方法。 - **TOMCAT 5.0 配置**: - **Portal 特征和实例**: 包含了在 Tomcat 5.0 上...

      EJB实验环境搭建.doc

      ### EJB实验环境搭建知识点详解 #### 一、实验环境准备与...- **数据库连接问题**:确认数据库服务正常运行,正确配置数据源和连接字符串。 通过以上步骤,可成功搭建EJB实验环境,为后续的开发与学习打下坚实基础。

      jbpm-jpdl-suite-3.2.3安装配置.doc

      务必确保JDBC直连方式配置正确,避免与数据源(Datasource)配置混淆。 jbpm-jpdl-suite-3.2.3的配置虽然相对复杂,但只要按照以上步骤进行,理解每个环节的作用,就能成功安装并运行。对于开发者来说,了解jbpm的...

    Global site tag (gtag.js) - Google Analytics