我的entry bean 连接数据库有问题,但,weblogic 的jndi却可以激活,救火呀-----在线等候...

时间:2021-09-11 20:26:02
try

        {

          Class.forName("weblogic.jdbc.mssqlserver4.Driver");

          Connection con = DriverManager.getConnection("jdbc:weblogic:mssqlserver4:northwind@localhost","sa","1");//此处根据你的SQLServer帐户而定。

          Statement st = con.createStatement();

          ResultSet res = st.executeQuery("select * from employees");

          String line = "";

          while (res.next())

            line = line + res.getString("title")+"\n";

          jTextArea1.setText(line);

          con.close();

        }

        catch (Exception ex)

        {

          jTextArea1.setText("error : "+ex.getMessage());

    }

这样是可以连接的,


可是,,用jndi就连不上,调试了好长时间,不知为什么呀,,
我在weblogic 里测试jndi是可以激活的,用的是jbuilder 8 与weblogic 704
谁知道怎么解决呀





        Hashtable ht = new Hashtable();

        ht.put(Context.INITIAL_CONTEXT_FACTORY,"weblogic.jndi.WLInitialContextFactory");

        ht.put(Context.PROVIDER_URL,"t3://localhost:7001");



        try

        {

          Context ctx = new InitialContext(ht);

          DataSource ds = (DataSource)ctx.lookup("TestDataSource");   //jndi 名称

          Connection con = ds.getConnection("system","11111111");//此处是WebLogic7   的域用户和密码

          Statement st = con.createStatement();

          ResultSet res = st.executeQuery("select * from employees");

          String line = "";

          while (res.next())

            line = line + res.getString("notes")+"\n";

          jTextArea1.setText(line);

          con.close();

        }

        catch (Exception ex)

        {

          jTextArea1.setText("error : "+ex.getMessage());

        }




8 个解决方案

#1


这是我的测试代码,在BMP 里的代码是这样的

    try {

          ctx = new InitialContext();

          javax.sql.DataSource ds = (javax.sql.DataSource) ctx.lookup(

              "TestDataSource");

          return ds.getConnection();

        }

        catch (Exception ex) {

          System.err.println("Could not locate datasource!  Reason:");

          ex.printStackTrace();

          throw ex;

        }





#2


gz

#3


怎么没人回答呀,:(

#4


分少了,有些人是会见死不就的

#5


不会吧, :(。。

以后要是比较熟了,一定来帮助初学的人,,

世态炎凉,  没想到在这里也是

#6


不知道是什么出错信息?
看到是localhost,建议简单点:
去掉
Hashtable ht = new Hashtable();

        ht.put(Context.INITIAL_CONTEXT_FACTORY,"weblogic.jndi.WLInitialContextFactory");

        ht.put(Context.PROVIDER_URL,"t3://localhost:7001");
修改:
ctx.lookup("TestDataSource");   为java:comp/env/jdbc/TestDataSource
Connection con = ds.getConnection("system","11111111");为ds.getConnection();

然后看看什么出错信息

#7


感谢 ajoke(可乐)  老兄,

  现在回贴的人太少了, 毕竟都是是javaer, 
  
  能见到回贴的人心里真的很高兴。。。。

  问题解决了,

原因是,   "t3://localhost:7001"); 这个URL,

  以后大家写URL的时候最好用本机IP,   我的问题可能就出在这里,

  感谢大家的回复。。。 给分。。。

#8


过段时间我会写些java学习的资料,

现在这方面的资料极少,对于入门的人来说, 

并不具备调试能力,几乎没有资料来写出错后应该如何处理, 

在这方面浪费了初学者大量的精力, 几乎占到90%以上,

学任何一门语言都不会如此费力, 为了java的发展, 也为了我们能共同提高,

建议大家都把学习心得、应用技巧、某一领域技术 发一下,然后整理出一个技巧集,

这样如果遇到问题总会第一时间在这里找到答案,这样也方便我们以后的工作,,

不知,这算不算开源, 大家发表一下看法。。。

#1


这是我的测试代码,在BMP 里的代码是这样的

    try {

          ctx = new InitialContext();

          javax.sql.DataSource ds = (javax.sql.DataSource) ctx.lookup(

              "TestDataSource");

          return ds.getConnection();

        }

        catch (Exception ex) {

          System.err.println("Could not locate datasource!  Reason:");

          ex.printStackTrace();

          throw ex;

        }





#2


gz

#3


怎么没人回答呀,:(

#4


分少了,有些人是会见死不就的

#5


不会吧, :(。。

以后要是比较熟了,一定来帮助初学的人,,

世态炎凉,  没想到在这里也是

#6


不知道是什么出错信息?
看到是localhost,建议简单点:
去掉
Hashtable ht = new Hashtable();

        ht.put(Context.INITIAL_CONTEXT_FACTORY,"weblogic.jndi.WLInitialContextFactory");

        ht.put(Context.PROVIDER_URL,"t3://localhost:7001");
修改:
ctx.lookup("TestDataSource");   为java:comp/env/jdbc/TestDataSource
Connection con = ds.getConnection("system","11111111");为ds.getConnection();

然后看看什么出错信息

#7


感谢 ajoke(可乐)  老兄,

  现在回贴的人太少了, 毕竟都是是javaer, 
  
  能见到回贴的人心里真的很高兴。。。。

  问题解决了,

原因是,   "t3://localhost:7001"); 这个URL,

  以后大家写URL的时候最好用本机IP,   我的问题可能就出在这里,

  感谢大家的回复。。。 给分。。。

#8


过段时间我会写些java学习的资料,

现在这方面的资料极少,对于入门的人来说, 

并不具备调试能力,几乎没有资料来写出错后应该如何处理, 

在这方面浪费了初学者大量的精力, 几乎占到90%以上,

学任何一门语言都不会如此费力, 为了java的发展, 也为了我们能共同提高,

建议大家都把学习心得、应用技巧、某一领域技术 发一下,然后整理出一个技巧集,

这样如果遇到问题总会第一时间在这里找到答案,这样也方便我们以后的工作,,

不知,这算不算开源, 大家发表一下看法。。。