jboss连接池无法正常处理错误

jboss连接池无法正常处理错误,jboss,datasource,jboss5.x,Jboss,Datasource,Jboss5.x,我正在使用配置了多个数据源的jboss 5.0.1 似乎在启动时,如果其中一个配置不正确,jboss会抛出异常并拒绝启动 我想知道是否有可能将jboss配置为能够适应此类问题 您可以在保存连接参数/映射的xml文件中配置连接。在我的例子中,我使用microsoft sql server作为数据源,因此我必须使用server/deploy目录中的mssql-ds.xml文件来指定: <?xml version="1.0" encoding="UTF-8"?> <datasourc

我正在使用配置了多个数据源的jboss 5.0.1

似乎在启动时,如果其中一个配置不正确,jboss会抛出异常并拒绝启动


我想知道是否有可能将jboss配置为能够适应此类问题

您可以在保存连接参数/映射的xml文件中配置连接。在我的例子中,我使用microsoft sql server作为数据源,因此我必须使用server/deploy目录中的mssql-ds.xml文件来指定:

<?xml version="1.0" encoding="UTF-8"?>
<datasources>
   <local-tx-datasource>
      <jndi-name>myTestServer</jndi-name>
      <connection-url>jdbc:sqlserver://xxx.xxx.xxx.xxx:1433;databaseName=MyDB</connection-url>
      <driver-class>com.microsoft.sqlserver.jdbc.SQLServerDriver</driver-class>
      <user-name>test</user-name>
      <password>abc123</password>
      <min-pool-size>10</min-pool-size>
      <max-pool-size>25</max-pool-size>

      <!-- sql to call when connection is created -->
      <new-connection-sql>select getdate()</new-connection-sql>
      <!-- -->

      <!-- sql to call on an existing pooled connection when it is obtained from pool
      This will be run before a managed connection is removed from the pool
      for use by a client -->
      <check-valid-connection-sql>select getdate()</check-valid-connection-sql>

   </local-tx-datasource>
 </datasources>
这有助于控制池中的连接,应该可以阻止不可靠的死锁。我不完全确定这是否会测试相关连接上的当前事务级别,因此如果您想绝对确定,可以尝试:如果@TRANCOUNT>0出现错误'%s',18,1,'Open Transactions Discoverys',这将为您提供一个显式的SQLException来处理


但是,如果您在启动时遇到错误,那么查看这些错误是非常有用的。

Hi Rich,谢谢您的帮助。我们已经进行了连接检查。问题中的错误来自不正确的用户名/密码。我们希望确保jboss继续启动,并且正确配置的其他连接也正确设置。