在Jboss中,部署的DataSource JNDI name,在Server端是可以用的
但是在Client端就不能用,而且根本查不到。
并且在Client和Server两个地方,
使用Context查到的JNDI name 是不同的。
有一些只能在Server端用
而一些可以在Client端用。
下面是我查的结果:
Client:
D:\JBuilderX\jdk1.4\bin\javaw -classpath
HAILConnectionFactory: javax.naming.LinkRef
jmx: org.jnp.interfaces.NamingContext
HTTPXAConnectionFactory: org.jboss.mq.SpyXAConnectionFactory
ConnectionFactory: org.jboss.mq.SpyConnectionFactory
UserTransactionSessionFactory: $Proxy12
HTTPConnectionFactory: org.jboss.mq.SpyConnectionFactory
XAConnectionFactory: org.jboss.mq.SpyXAConnectionFactory
invokers: org.jnp.interfaces.NamingContext
UserTransaction: org.jboss.tm.usertx.client.ClientUserTransaction
HAILXAConnectionFactory: javax.naming.LinkRef
UILXAConnectionFactory: javax.naming.LinkRef
UIL2XAConnectionFactory: javax.naming.LinkRef
queue: org.jnp.interfaces.NamingContext
topic: org.jnp.interfaces.NamingContext
console: org.jnp.interfaces.NamingContext
UIL2ConnectionFactory: javax.naming.LinkRef
UILConnectionFactory: javax.naming.LinkRef
UUIDKeyGeneratorFactory: org.jboss.ejb.plugins.keygenerator.uuid.UUIDKeyGeneratorFactory
在这里根本没有我要用的jive DataSource的出现
Server:
15:05:02,958 INFO [STDOUT] Message type:===HHH i==0
15:05:02,958 INFO [STDOUT] XAConnectionFactory: org.jboss.mq.SpyXAConnectionFac
tory
15:05:02,978 INFO [STDOUT] DefaultDS: org.jboss.resource.adapter.jdbc.WrapperDa
taSource
15:05:02,978 INFO [STDOUT] SecurityProxyFactory: org.jboss.security.SubjectSecu
rityProxyFactory
15:05:02,978 INFO [STDOUT] DefaultJMSProvider: org.jboss.jms.jndi.JNDIProviderA
dapter
15:05:02,978 INFO [STDOUT] comp: javax.naming.Context
15:05:02,978 INFO [STDOUT] ConnectionFactory: org.jboss.mq.SpyConnectionFactory
15:05:02,978 INFO [STDOUT] JmsXA: org.jboss.resource.adapter.jms.JmsConnectionF
actoryImpl
15:05:02,989 INFO [STDOUT] jaas: javax.naming.Context
15:05:02,989 INFO [STDOUT] timedCacheFactory: javax.naming.Context
15:05:02,989 INFO [STDOUT] jive: org.jboss.resource.adapter.jdbc.WrapperDataSou
rce
15:05:02,989 INFO [STDOUT] TransactionPropagationContextExporter: org.jboss.tm.
TransactionPropagationContextFactory
15:05:02,989 INFO [STDOUT] Mail: javax.mail.Session
15:05:02,989 INFO [STDOUT] StdJMSPool: org.jboss.jms.asf.StdServerSessionPoolFa
ctory
15:05:02,989 INFO [STDOUT] TransactionPropagationContextImporter: org.jboss.tm.
TransactionPropagationContextImporter
15:05:02,989 INFO [STDOUT] TransactionManager: org.jboss.tm.TxManager
//后面这些是我使用 jive这个DataSource查询的信息
15:05:02,999 INFO [STDOUT] username===admin
15:05:02,999 INFO [STDOUT] password===ddcd5141cf41c9a200ba42da00421dd5
15:05:02,999 INFO [STDOUT] username===SportsBaby
15:05:02,999 INFO [STDOUT] password===ddcd5141cf41c9a200ba42da00421dd5
15:05:02,999 INFO [STDOUT] username===AAA
15:05:02,999 INFO [STDOUT] password===e1faffb3e614e6c2fba74296962386b7
15:05:03,009 WARN [TxConnectionManager] Prepare called on a local tx. Use of lo
cal transactions on a jta transaction with more than one branch may result in in
consistent data in some cases of failure.
由上可得出结论:
在Jboss中,使用自定义的DataSoure 不要在Client端调用,
那会查不到的。
可以在Server端使用(发布到Server上的程序).