public static DataSource getDataSource()
    throws SQLException, NamingException{
        if(m_ds == null){
            Context ctx = null;
            try{
                Hashtable ht = new Hashtable();
                ht.put(Context.INITIAL_CONTEXT_FACTORY,
                        "weblogic.jndi.WLInitialContextFactory");
                ht.put(Context.PROVIDER_URL,"t3://localhost:80");
                ctx = new InitialContext(ht);
                m_ds = (DataSource)ctx.lookup("SS3000DB");
            }
            catch(Exception e){
                err = e.toString();
            }
            finally{
                try {ctx.close();}
                catch (Exception e) {
                  // a failure occurred
                }
            }        }        return m_ds;
    }

解决方案 »

  1.   

    其中SS3000DB就是你在控制台中设定的DataSource名。注意t3://localhost:80。要将冒号后面的端口好设置为在weblogic中设定的默认端口号。
      

  2.   

    这个简单一些:
    Context ctx=new InitialContext();
      DataSource ds=(DataSource)ctx.lookup("java:comp/env/SS3000DB");   
      Connection  conn=ds.getConnection();
     Statement   stm=conn.createStatement();
     ResultSet rs=stm.executeQuery(sql);  
    ..... ......... ..........
      

  3.   

    一楼你写的bean我该放在哪里?原来JBOSS里我是和JSP同级就可以了,WEBLOGIC是这样吗?还是必须放在哪个目录下?
      

  4.   

    我怎么感觉把EJB那套东西拿出来了
      

  5.   

    一般放到JSP目录下的WEB-INF/classes目录下
      

  6.   

    symbol  : class DataSource  
    这个类找不到?怎么办?
      

  7.   

    有出现新的错误:
    java.sql.SQLException: ORA-00600: 内部错误代码,参数: [ttcgcshnd-1], [0], [], [] 
    , [], [], [], []
      

  8.   

    STARTWEBLOGIC脚本里CLASSPATH中
    这样调整既可:
    将oracle的jdbc driver(classes12.zip)放到weblogic.jar前边,
    原理:
    使用jdbc时(不管在自己的应用里直接连,还是使用别人提供的连接池或是工具类),最好保证您使用的jdbc驱动的版本(最好就用你安装的数据库自带的,这样小版本也是一致的)和所连接的数据库的版本是一致的,否则有时会出一些莫名其妙的问题,白白浪费时间。 weblogic中由于对oracle数据库做了一些内置的支持,在代码中使用到了比如OracleConnection之类的oracle提供的类,所以在weblogic.jar中包含了一个oracle的老版本jdbc driver。如果用户需要使用oracle的oci或是thin driver而不是weblogic提供的jdriver for oracle,则需要修改weblogic启动脚本,将oracle的jdbc driver(classes12.zip)放到weblogic.jar前边。
      

  9.   

    另外只要 :
    <%@page import="java.sql.*,javax.naming.Context,javax.naming.InitialContext"%>
    <%@page import="javax.sql.DataSource"%>
    就可以了