各位大佬:这个家伙做了20多小时了!还在报错!我快疯掉了!你们帮我看看那里出问题了!救命啊!
Tomcat4.1,JDK1.42,JBuilderX
工程名:Java0704jb_Web.xml:(配置如下)
<?xml version="1.0" encoding="UTF-8"?>
<Context debug="0" docBase="C:\Ljf\Web" path="/Web" reloadable="true" workDir="C:\Ljf\Tomcat\work\Web"/>
<Resource name="jdbc/blog" auth="Container" type="javax.sql.DataSource"/> 
<ResourceParams name="jdbc/blog"> 
<parameter> 
<name>factory</name> 
<value>org.apache.commons.dbcp.BasicDataSourceFactory</value> 
</parameter> 
<parameter> 
<name>driverClassName</name> 
<value>com.microsoft.jdbc.sqlserver.SQLServerDriver</value> 
</parameter> 
<parameter> 
<name>url</name> <value>jdbc:microsoft:sqlserver://localhost:1433;databaseName=JavaSql_0704</value> 
</parameter> 
<parameter> 
<name>username</name> 
<value>sa</value> 
</parameter> 
<parameter> 
<name>password</name> 
<value>sa</value> 
</parameter> 
<parameter> 
<name>maxActive</name> 
<value>20</value> 
</parameter> 
<parameter> 
<name>maxIdle</name> 
<value>20</value> 
</parameter> 
<parameter> 
<name>maxWait</name> 
<value>-1</value> 
</parameter> 
</ResourceParams> 
</Context> 
Web.xml:(配置如下)
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
  <display-name>Web</display-name>
  <resource-ref>
    <description>SqlServer Datasource example</description>
    <res-ref-name>jdbc/blog</res-ref-name>
    <res-type>javax.sql.DataSource</res-type>
    <res-auth>Container</res-auth>
  </resource-ref>
</web-app>Index.jsp:(普通JSP页)
<%@ page contentType="text/html;charset=GBK"%> 
<%@ page import= "java.sql.* "%> 
<%@ page import= "javax.sql.* "%> 
<%@ page import= "javax.naming.* "%> 
<%
try{ 
String CLASSFORNAME = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
String SERVANDDB = "jdbc:microsoft.sqlserver://127.0.0.1:1433;DatabaseName=JavaSql_0704";
String USER = "sa";
String PWD = "sa";
Class.forName(CLASSFORNAME);
Connection con = DriverManager.getConnection(SERVANDDB,USER,PWD);
//out.println("1");
Statement stmt = con.createStatement();
//out.println("2");
ResultSet rs = stmt.executeQuery("select * from BOOK"); 
//out.println("3");
if(rs.next()){ 
out.println("BookID:" + rs.getString("BookID")); 

//out.println("4");
}catch(Exception ex){ 
ex.printStackTrace(); 
throw new SQLException("cannot get Connection pool."); 

//out.println("5");
%> 我只是想配置成功而已!搞了这么长时间!郁闷至死啊!请哪位大哥大姐帮帮我看看那里出问题了!人在,不找到答案不离开的!

解决方案 »

  1.   

    错误信息:
    严重: Parse Fatal Error at line 3 column -1: 文件末端含有非法字符,&#x3c;。org.xml.sax.SAXParseException: 文件末端含有非法字符,&#x3c;。 at org.apache.crimson.parser.Parser2.fatal(Parser2.java:3339) at org.apache.crimson.parser.Parser2.fatal(Parser2.java:3333) at org.apache.crimson.parser.Parser2.parseInternal(Parser2.java:640) at org.apache.crimson.parser.Parser2.parse(Parser2.java:333) at org.apache.crimson.parser.XMLReaderImpl.parse(XMLReaderImpl.java:448) at org.apache.commons.digester.Digester.parse(Digester.java:1567) at org.apache.catalina.core.StandardHostDeployer.install(StandardHostDeployer.java:385) at org.apache.catalina.core.StandardHost.install(StandardHost.java:803) at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:442) at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:399) at org.apache.catalina.startup.HostConfig.start(HostConfig.java:718) at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:358) at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:166) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1196) at org.apache.catalina.core.StandardHost.start(StandardHost.java:738) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1188) at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:347) at org.apache.catalina.core.StandardService.start(StandardService.java:497) at org.apache.catalina.core.StandardServer.start(StandardServer.java:2190) at org.apache.catalina.startup.Catalina.start(Catalina.java:512) at org.apache.catalina.startup.Catalina.execute(Catalina.java:400) at org.apache.catalina.startup.Catalina.process(Catalina.java:180) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:203)
      

  2.   

    StandardHost[localhost]: Error deploying application at context path null: org.xml.sax.SAXParseException: 文件末端含有非法字符,&#x3c;。org.xml.sax.SAXParseException: 文件末端含有非法字符,&#x3c;。 at org.apache.crimson.parser.Parser2.fatal(Parser2.java:3339) at org.apache.crimson.parser.Parser2.fatal(Parser2.java:3333) at org.apache.crimson.parser.Parser2.parseInternal(Parser2.java:640) at org.apache.crimson.parser.Parser2.parse(Parser2.java:333) at org.apache.crimson.parser.XMLReaderImpl.parse(XMLReaderImpl.java:448) at org.apache.commons.digester.Digester.parse(Digester.java:1567) at org.apache.catalina.core.StandardHostDeployer.install(StandardHostDeployer.java:385) at org.apache.catalina.core.StandardHost.install(StandardHost.java:803) at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:442) at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:399) at org.apache.catalina.startup.HostConfig.start(HostConfig.java:718) at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:358) at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:166) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1196) at org.apache.catalina.core.StandardHost.start(StandardHost.java:738) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1188) at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:347) at org.apache.catalina.core.StandardService.start(StandardService.java:497) at org.apache.catalina.core.StandardServer.start(StandardServer.java:2190) at org.apache.catalina.startup.Catalina.start(Catalina.java:512) at org.apache.catalina.startup.Catalina.execute(Catalina.java:400) at org.apache.catalina.startup.Catalina.process(Catalina.java:180) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:203)
      

  3.   

    HostConfig[localhost]: Error deploying configuration descriptor jb-Web.xmljava.io.IOException: org.xml.sax.SAXParseException: 文件末端含有非法字符,&#x3c;。java.io.IOException: org.xml.sax.SAXParseException: 文件末端含有非法字符,&#x3c;。 at org.apache.catalina.core.StandardHostDeployer.install(StandardHostDeployer.java:391) at org.apache.catalina.core.StandardHost.install(StandardHost.java:803) at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:442) at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:399) at org.apache.catalina.startup.HostConfig.start(HostConfig.java:718) at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:358) at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:166) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1196) at org.apache.catalina.core.StandardHost.start(StandardHost.java:738) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1188) at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:347) at org.apache.catalina.core.StandardService.start(StandardService.java:497) at org.apache.catalina.core.StandardServer.start(StandardServer.java:2190) at org.apache.catalina.startup.Catalina.start(Catalina.java:512) at org.apache.catalina.startup.Catalina.execute(Catalina.java:400) at org.apache.catalina.startup.Catalina.process(Catalina.java:180) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:203)2006-6-1 10:20:19 org.apache.coyote.http11.Http11Protocol start
      

  4.   

    1.在Index.jsp里,根本就没用到连接池,现在还是直连。2.以下这段代码应该放在, server.xml里。<?xml version="1.0" encoding="UTF-8"?>
    <Context debug="0" docBase="C:\Ljf\Web" path="/Web" reloadable="true" workDir="C:\Ljf\Tomcat\work\Web"/>
    <Resource name="jdbc/blog" auth="Container" type="javax.sql.DataSource"/> 
    <ResourceParams name="jdbc/blog"> 
    <parameter> 
    <name>factory</name> 
    <value>org.apache.commons.dbcp.BasicDataSourceFactory</value> 
    </parameter> 
    <parameter> 
    <name>driverClassName</name> 
    <value>com.microsoft.jdbc.sqlserver.SQLServerDriver</value> 
    </parameter> 
    <parameter> 
    <name>url</name> <value>jdbc:microsoft:sqlserver://localhost:1433;databaseName=JavaSql_0704</value> 
    </parameter> 
    <parameter> 
    <name>username</name> 
    <value>sa</value> 
    </parameter> 
    <parameter> 
    <name>password</name> 
    <value>sa</value> 
    </parameter> 
    <parameter> 
    <name>maxActive</name> 
    <value>20</value> 
    </parameter> 
    <parameter> 
    <name>maxIdle</name> 
    <value>20</value> 
    </parameter> 
    <parameter> 
    <name>maxWait</name> 
    <value>-1</value> 
    </parameter> 
    </ResourceParams> 
    </Context> 
      

  5.   

    这样的!也不行哦
    <%@ page contentType="text/html;charset=GBK"%> 
    <%@ page import= "java.sql.* "%> 
    <%@ page import= "javax.sql.* "%> 
    <%@ page import= "javax.naming.* "%> 
    <% 
    try{ 
    Context initCtx = new InitialContext(); 
    Context ctx = (Context) initCtx.lookup("java:comp/env"); 
    //获取连接池对象 
    Object obj = (Object) ctx.lookup("jdbc/blog"); 
    //类型转换 
    javax.sql.DataSource ds = (javax.sql.DataSource)obj; 
    Connection conn = ds.getConnection(); 
    Statement stmt = conn.createStatement(); 
    String strSql = "select * from BOOK"; 
    ResultSet rs = stmt.executeQuery(strSql); 
    if(rs.next()){ 
    out.println(rs.getString("BoodID")); 

    }catch(Exception ex){ 
    ex.printStackTrace(); 
    throw new SQLException("cannot get Connection pool."); 

    %>
      

  6.   

    1.必须配在server.xml里。把配在别的地方的都删掉。2。用这两行Context initCtx = new InitialContext(); 
    DataSource ds=(DataSource)ctx.lookup("java:comp/env/jdbc/blog");替换这下面的三行
    Context ctx = (Context) initCtx.lookup("java:comp/env"); 
    //获取连接池对象 
    Object obj = (Object) ctx.lookup("jdbc/blog"); 
    //类型转换 
    javax.sql.DataSource ds = (javax.sql.DataSource)obj; 
    记得要结贴给分。
      

  7.   

    这样,我刚少打了initDataSource ds=(DataSource)initCtx.lookup("java:comp/env/jdbc/blog");
      

  8.   

    看你的报错信息好象是在解析xml文件时出错,你仔细检查一下看看
      

  9.   

    大哥这个是什么错啊!郁闷哦!
    信息: Starting Coyote HTTP/1.1 on port 8080org.apache.commons.dbcp.SQLNestedException: Cannot create JDBC driver of class '' for connect URL 'null', cause: java.sql.SQLException: No suitable driver at java.sql.DriverManager.getDriver(DriverManager.java:243) at org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:743) at org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource.java:518) at org.apache.jsp.Bindex_jsp._jspService(Bindex_jsp.java:52) 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.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.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) 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.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.java:643) at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:171) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java: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:392) 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:534)
      

  10.   

    要不是想研究哈子这个东西!我早就用BEAN去了!气死!
      

  11.   

    你的加入驱动包了吗?然后再把jsp页的代码贴上来看看。
      

  12.   

    GLOK大哥,刚才我不在以为你走了!我现在发上来
    Bindex.jsp:
    <%@ page contentType="text/html;charset=GBK"%>
    <%@ page import= "java.sql.*" %>
    <%@ page import= "javax.sql.DataSource" %>
    <%@ page import= "javax.naming.Context" %>
    <%@ page import= "javax.naming.InitialContext" %>
    <%
    try{
    Context initCtx = new InitialContext();
    out.print("1");
    DataSource ds = (DataSource)initCtx.lookup("java:comp/env/jdbc/blog");
    out.print("2");
    Connection conn = ds.getConnection();
    out.print("3");
    Statement stmt = conn.createStatement();
    out.print("4");
    ResultSet rs = stmt.executeQuery("select * from BOOK");
    out.print("5");
    if(rs.next()){
    out.println(rs.getString("BookID"));
    }
    out.print("6");
    }catch(SQLException ex){
    ex.printStackTrace();
    throw new SQLException("cannot get Connection pool.");
    }
    out.print("7");
    %>
    server.xml:
    <Context debug="0" docBase="D:\Java0704\WebJava0704" path="/WebJava0704" reloadable="true" workDir="D:\Java0704\Tomcat\work\WebJava0704"/>
    <Resource name="jdbc/JavaSqlPool" auth="Container" type="javax.sql.DataSource"/>   
          <ResourceParams name="jdbc/JavaSqlPool">   
              <parameter>   
                  <name>factory</name>   
                  <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>   
              </parameter>       
              <parameter>   
                  <name>driverClassName</name>   
                  <value>com.microsoft.jdbc.sqlserver.SQLServerDriver</value>   
              </parameter>   
              <parameter>   
                  <name>url</name>   
                  <value>jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=JavaSql_0704</value>   
              </parameter>   
              <parameter>   
                  <name>username</name>   
                  <value>sa</value>   
              </parameter>   
              <parameter>   
                  <name>password</name>   
                  <value>sa</value>   
              </parameter>       
              <parameter>   
                  <name>maxActive</name>      
                  <value>20</value>   
              </parameter>   
              <parameter>   
                  <name>maxIdle</name>      
                  <value>0</value>   
              </parameter>   
              <parameter>   
                  <name>maxWait</name>   
                  <value>-1</value>   
              </parameter>   
              <parameter>   
                  <name>removeAbandoned</name>   
                  <value>true</value>   
              </parameter>   
              <parameter>   
                  <name>logAbandoned</name>   
                  <value>false</value>   
              </parameter>       
          </ResourceParams>   
      </Context>
    web.xml:
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
    <web-app>
      <display-name>Web</display-name>
      <resource-ref>
        <description>SqlServer Datasource example</description>
        <res-ref-name>jdbc/blog</res-ref-name>
        <res-type>javax.sql.DataSource</res-type>
        <res-auth>Container</res-auth>
      </resource-ref>
    </web-app>报错:
    信息: Starting Coyote HTTP/1.1 on port 8080org.apache.commons.dbcp.SQLNestedException: Cannot create JDBC driver of class '' for connect URL 'null', cause: java.sql.SQLException: No suitable driver at java.sql.DriverManager.getDriver(DriverManager.java:243) at org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:743) at org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource.java:518) at org.apache.jsp.Bindex_jsp._jspService(Bindex_jsp.java:56) 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.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.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) 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.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.java:643) at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:171) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java: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:392) 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:534)
    谢谢帮我看下哈!
      

  13.   

    不报错了!但是没显示!
    <%@ page contentType="text/html;charset=GBK"%>
    <%@ page import= "java.sql.*" %>
    <%@ page import= "javax.sql.DataSource" %>
    <%@ page import= "javax.naming.Context" %>
    <%@ page import= "javax.naming.InitialContext" %>
    1
    <%
    try{
      Context initCtx = new InitialContext();
      DataSource ds = (DataSource)initCtx.lookup("java:comp/env/jdbc/JavaSqlPool");
      Connection conn = ds.getConnection();
      Statement stmt = conn.createStatement();
      ResultSet rs = stmt.executeQuery("select * from BOOK");
        if(rs.next()){
          out.println(rs.getString("BookID"));
        }
    }catch(SQLException ex){
      ex.printStackTrace();
      throw new SQLException("cannot get Connection pool.");
    }
    %>
      

  14.   

    把上面的jsp的这句话
     DataSource ds = (DataSource)initCtx.lookup("java:comp/env/jdbc/JavaSqlPool");
    改为:
    DataSource ds = (DataSource)initCtx.lookup("java:comp/env/jdbc/blog");这个/env后面接的是jndi的名字。你再试下
      

  15.   

    if(rs.next()){
          out.println(rs.getString("BookID"));
        }
    改成while在看看