jcml conversion to ds.xml
chuckharris Oct 23, 2003 10:24 AMI am moving from jboss 2.3 to 3.2 and am having trouble with
Data source configuration. The current data source in jboss.jcml
Looks like:
com.merant.datadirect.jdbc.sqlserver.SQLServerDriver
,sun.jdbc.odbc.JdbcOdbcDriver,org.hsql.jdbcDriver
,org.enhydra.instantdb.jdbc.idbDriver
org.jboss.pool.jdbc.xa.wrapper.XADataSourceImpl
DevDb
jdbc:sqlserver://url:1433;SelectMethod=cursor
DatabaseName=devdb
idpass
idpass
0
10
false
1200000
120000
false
false
true
false
false
1800000
1.0
I got this to work but it seems painfully slow when multiple threads are
hitting the db at the same time:
<local-tx-datasource>
<jndi-name>DevDb</jndi-name>
<connection-url>jdbc:sqlserver://url:1433;SelectMethod=cursor;DatabaseName=devdb
</connection-url>
<driver-class>com.merant.datadirect.jdbc.sqlserver.SQLServerDriver</driver-class>
<user-name>idpass</user-name>
idpass
<min-pool-size>10</min-pool-size>
<max-pool-size>20</max-pool-size>
<blocking-timeout-millis>5000</blocking-timeout-millis>
<idle-timeout-minutes>15</idle-timeout-minutes>
</local-tx-datasource>
I tried using:
<xa-datasource>
<jndi-name>DevDb</jndi-name>
<xa-datasource-class>com.merant.datadirect.jdbc.sqlserver.SQLServerDriver</xa-datasource-class>
<xa-datasource-property name="ServerName">jdbc:sqlserver://url:1433</xa-datasource-property>
<xa-datasource-property name="DatabaseName">devdb</xa-datasource-property>
<xa-datasource-property name="SelectMethod">cursor</xa-datasource-property>
<xa-datasource-property name="User">idpass</xa-datasource-property>
<xa-datasource-property name="Password">idpass</xa-datasource-property>
<!-- not sure if these should be here
<user-name>idpass</user-name>
idpass -->
</xa-datasource>
But it throws the following exception. What is the correct conversion of the jcml configuration?
Are there other files that must be modified?
08:45:17,311 WARN [Thread-5] [org.jboss.resource.connectionmanager.JBossManagedConnectionPool]
Throwable while at tempting to get a new connection:
org.jboss.resource.JBossResourceException: Could not create connection; - nested throwable:
(java.lang.ClassCastException: com.merant.datadirect.jdbc.sqlserver.SQLServerDriver)
at org.jboss.resource.adapter.jdbc.xa.XAManagedConnectionFactory.createManagedConnection
(XAManagedConnectionFactory.java:145) at org.jboss.resource.connectionmanager.InternalManagedConnectionPool.createConnection
(InternalManagedConnectionPool.java:372) at org.jboss.resource.connectionmanager.InternalManagedConnectionPool.getConnection(InternalManagedC
onnectionPool.java:165) at org.jboss.resource.connectionmanager
.JBossManagedConnectionPool$OnePool.getConnection(JbossMana
gedConnectionPool.java:696) at org.jboss.resource.connectionmanager.BaseConnectionManager2.getManagedConnection(BaseConnection
Manager2.java:426) at org.jboss.resource.connectionmanager.TxConnectionManager.getManagedConnection(TxConnectionMana
ger.java:331) at org.jboss.resource.connectionmanager
.BaseConnectionManager2.allocateConnection(BaseConnectionManager2.java:509) at org.jboss.resource.connectionmanager
.BaseConnectionManager2
$ConnectionManagerProxy.allocateConn
ction(BaseConnectionManager2.java:839)
at org.jboss.resource.adapter.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:102)
at mt.DBAccessUtils.getConnection(DBAccessUtils.java)
at mt.DBAccessUtils.getConnection(DBAccessUtils.java)
at mt.UserDBAccess.getConnection(UserDBAccess.java)
at mt.UserDBAccess.getUserByUsername(UserDBAccess.java)
at mt.UserDBProxy.getUserByUsername(UserDBProxy.java)
at org.apache.jsp.afsp_login_post_jsp._jspService(afsp_login_post_jsp.java:88)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:137)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:210)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:256)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.ja
va:643)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.ja
va:643)
at org.jboss.web.tomcat.security.JBossSecurityMgrRealm.invoke(JBossSecurityMgrRealm.java:228)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.ja
va:641)
at org.apache.catalina.valves.CertificatesValve.invoke(CertificatesValve.java:246)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.ja
va:641)
at org.jboss.web.tomcat.tc4.statistics.ContainerStatsValve.invoke(ContainerStatsValve.java:76)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.ja
va:641)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2416)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.ja
va:643)
at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:171)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.ja
va:641)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.ja
va:641)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:65)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.ja
va:641)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:577)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.ja
va:641)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:601)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:3
92)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:565)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:619)
at java.lang.Thread.run(Thread.java:479)
+ nested throwable:
java.lang.ClassCastException: com.merant.datadirect.jdbc.sqlserver.SQLServerDriver
at org.jboss.resource.adapter.jdbc.xa.XAManagedConnectionFactory.getXADataSource(XAManagedConnect
ionFactory.java:240)
at org.jboss.resource.adapter.jdbc.xa.XAManagedConnectionFactory.createManagedConnection(XAManaged
ConnectionFactory.java:137)
at org.jboss.resource.connectionmanager.InternalManagedConnectionPool.createConnection(InternalManage
dConnectionPool.java:372)
at org.jboss.resource.connectionmanager.InternalManagedConnectionPool.getConnection(InternalManagedC
onnectionPool.java:165)
at org.jboss.resource.connectionmanager.JBossManagedConnectionPool$OnePool.getConnection(JbossMana
gedConnectionPool.java:696)
at org.jboss.resource.connectionmanager.BaseConnectionManager2.getManagedConnection(BaseConnection
Manager2.java:426)
at org.jboss.resource.connectionmanager.TxConnectionManager.getManagedConnection(TxConnectionMana
ger.java:331)
at org.jboss.resource.connectionmanager
.BaseConnectionManager2.allocateConnection(BaseConnectionManager2.j
ava:509)
at org.jboss.resource.connectionmanager
.BaseConnectionManager2$ConnectionManagerProxy.allocateConnection(BaseConnectionManager2.java:839)