String jndi = "java:/" + dataSourceJNDI;
==> String jndi = dataSourceJNDI;试试. (不在一个jvm里,是不用"java:/"的)

解决方案 »

  1.   

    我记得 JBoss 是使用 "java:" + dataSourceJNDI 来访问 jndi 中的 DataSource 的, 你试试看, 不要加 "/" .
      

  2.   

    java:/OracleDs  OracleDs  java:OracleDS我都试过的,都不行!!错误为:
    javax.naming.NameNotFoundException: OracleDS not bound
    at org.jnp.server.NamingServer.getBinding(Unknown Source)
    at org.jnp.server.NamingServer.getBinding(Unknown Source)
    at org.jnp.server.NamingServer.getObject(Unknown Source)
    at org.jnp.server.NamingServer.lookup(Unknown Source)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)  请各位高人帮我仔细看看,到底什么地方有问题啊?!!急急急!!!
      

  3.   

    請用jsp測試,不要用application.用application是取不到的.
      

  4.   

    为什么用application取不到啊,请指点??!!!
      

  5.   

    Context context = new InitialContext();-->改为Context context = new InitialContext(props);
    你自己都定义了property了,没有放进去嘛。
    在application是绝对可以的。
      

  6.   

    呵呵,我曾经试过Context context = new InitialContext(props);也是不行的,也是找不到OracleDs。
        jsp中是没问题的!!
        为什么用application取不到啊,请指点??!!!
      

  7.   

    这是JBOSS设计的特点:DataSource只能在同一JVM中访问,也就是说只能通过jboss的服务端组件中访问!这是为了性能而做出的让步,你可以对比一下,WebLogic可以lookup DataSource,但性能低下!
      

  8.   

    大哥 我想不明白local-tx-datasource 和tx-datasource 的区别
      

  9.   

    我用的数据库上是SYBASE,也遇到了同样的问题,我是在一个JAVA文件中要访问数据库,不知道在application中如何调用
      

  10.   

    这个问题同样困绕了我好久,因为系统架够的设计,调用数据库操作不能够在JSP页面中来做,只能放到业务层中的某一层,但用loopup调用后,JBOSS给出
    16:52:17,130 ERROR [STDERR] javax.naming.NameNotFoundException: SybaseDS not bou
    nd
    的提示,请高手帮助解决一下,谢谢。
      

  11.   

    我昨天晚上又试了一下,在一个SESSON BEAN里面调用一个数据源没有问题,但是需要在server/conf/login-conf.xml中加入
    <application-policy name = "SybaseDbRealm">
           <authentication>
              <login-module code = "org.jboss.resource.security.ConfiguredIdentityLoginModule"
                 flag = "required">
                 <module-option name = "principal">sa</module-option>
                 <module-option name = "userName">sa</module-option>
                 <module-option name = "password">sybase</module-option>
                 <module-option name = "managedConnectionFactoryName">jboss.jca:service=LocalTxCM,name=SybaseDS</module-option>
              </login-module>
           </authentication>
        </application-policy>才行。