JSP中调用包出错
发表在JavaWeb图书答疑 2009-03-17
是否精华
版块置顶:
    小姐/先生:
        您好!!!
        我在JSP中调用包出错,具体情况如下文件与附件(请到贵公司服务邮箱tmoonbook@sina.com与th_press@263.net查看),此处调用出错造成其下相关调用此文件出错,请速解答,谢谢!!!



package com.tomarsli.dbconn;
import java.sql.*;
import javax.naming.*;
import javax.sql.DataSource;

public class DBConn {
  public static synchronized Connection getConnection() throws Exception{
    try{
      Context initCtx=new javax.naming.InitialContext();
      //从Context中lookup数据源
      Context envCtx=(Context)initCtx.lookup("java:comp/env");
      DataSource ds=(DataSource)envCtx.lookup("jdbc/tomarsli");   //  jdbc/mingri
      return ds.getConnection();
    }
    catch(SQLException e){
      throw e;
    }
    catch(NamingException e){
      throw e;
    }
  }

}














package com.tomarsli.dbconn;

import java.sql.*;
import com.tomarsli.dbconn.DBConn;


public class DBResult {
  private Connection con;
  public  DBResult() {  
    this.con=DBConn.getConnection();
  }
  /**
   * 用于获得执行SQL语句的ResultSet对象
   */
  public ResultSet getResult(String sql){
    try{
      Statement stmt=con.createStatement();
      ResultSet rs=stmt.executeQuery(sql);
      return rs;
    }
    catch(Exception e){}
    return null;
  }
  /**
   * 用于执行SQL语句没有返回值
   */
  public void doExecute(String sql){
    try{
      Statement stmt=con.createStatement();
      stmt.executeQuery(sql);
    }catch(Exception e){}
  }
  /**
   * 用于获得执行SQL语句的PreparedStatement(预处理)对象
   */
  public PreparedStatement getPreparedStatement(String sql){
    try{
      PreparedStatement pstmt=con.prepareStatement(sql);
      return pstmt;
    }
    catch(Exception e){}
    return null;
  }
  /**
   * 关闭连接
   */
  public void closeCon(){
    try{
      this.con.close();
    }catch(Exception e){
        e.printStackTrace();
    }
  }

}







server.xml
<?xml version="1.0" encoding="UTF-8"?>
<Server>
  <Listener className="org.apache.catalina.core.AprLifecycleListener"/>
  <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener"/>
  <Listener className="org.apache.catalina.storeconfig.StoreConfigLifecycleListener"/>
  <Listener className="org.apache.catalina.mbeans.ServerLifecycleListener"/>
  <GlobalNamingResources>
    <Environment
      name="simpleValue"
      type="java.lang.Integer"
      value="30"/>
    <Resource
      auth="Container"
      description="User database that can be updated and saved"
      name="UserDatabase"
      type="org.apache.catalina.UserDatabase"
      pathname="conf/tomcat-users.xml"
      factory="org.apache.catalina.users.MemoryUserDatabaseFactory"/>
  </GlobalNamingResources>
  <Service
      name="Catalina">
    <Connector
        port="8080"
        redirectPort="8443"
        minSpareThreads="25"
        connectionTimeout="20000"
        maxSpareThreads="75"
        maxThreads="150">
    </Connector>
    <Connector
        port="8009"
        redirectPort="8443"
        connectionTimeout="-1"
        protocol="AJP/1.3">
    </Connector>
    <Engine
        defaultHost="localhost"
        name="Catalina">
      <Realm className="org.apache.catalina.realm.UserDatabaseRealm"/>
      <Host
          appBase="webapps"
          name="localhost">
<Context path="/erp_jsp " reloadable="true" docBase="erp_jsp">
<Resource name="jdbc/tomarsli" auth="Container" type="javax.sql.DataSource"/>
<ResourceParams name="jdbc/tomarsli">
<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://127.0.0.1:1433;DatabaseName=db_shopping</value>
</parameter>
<parameter>
<name>username</name>
<value>sa</value>
</parameter>
<parameter>
<name>password</name>
<value></value>
</parameter>
<parameter>
<name>maxActive</name>
<value>1000</value>
</parameter>
<parameter>
<name>maxIdle</name>
<value>50</value>
</parameter>
<parameter>
<name>maxWait</name>
<value>50</value>
</parameter>
</ResourceParams>
</Context>

      </Host>
    </Engine>
  </Service>
</Server>

分享到:
精彩评论 6
无语_mrkj
学分:3155 LV11
2009-03-18
沙发
请问您说的调用出错造成其下相关调用文件出错,是在程序运行时,还是在开发工具中显示的红X错误标记。
如果是运行时出错,可能是数据库连接的问题。请确认以下内容:
(1)如果您的操作系统不是windows 2000 server请安装SQL Server 2000的SP4补丁。
(2)请确认在安装SQL server 2000时,采用的是混合验证模式,并且登录用户为sa,空密码。
(3)请将SQL Server 2000数据库驱动包拷贝到程序的lib文件夹中。
(4)正确附加数据库,并且选择访问用户为sa。
tomarsli
学分:0 LV1
2009-03-18
板凳
    小姐/先生:
        您好!!!
        您的建议我已经仔细查看数据库连接无问题,我是在开发工具中出现此问题,详细出错信息请见贵公司服务邮箱,请速回复,谢谢!!!
无语_mrkj
学分:3155 LV11
2009-03-18
地板
已经通过邮箱进行回复。
tomarsli
学分:0 LV1
2009-03-19
4L
      坛主:
           您好!
           此问题您尚未解决,您在邮件中仅将JSP项目问题解决,请速赐教,谢谢!!!
tomarsli
学分:0 LV1
2009-03-19
5L
       坛主:
            您好!
            不好意思,是《JSP网络开发实例自觉手册》第八章中进销存管理系统项目导入MyEclipse中时运行出现此情况,我深表歉意,请谅解!!!
无语_mrkj
学分:3155 LV11
2009-03-24
6L
请将下面的这段代码
public DBResult() { 
this.con=DBConn.getConnection();
}
修改为:
public DBResult() { 
 try{
    this.con=DBConn.getConnection();
 }catch(Exception e){
    printStackTrace();
 }
}

首页上一页 1 下一页尾页 6 条记录 1/1页
手机同步功能介绍
友情提示:以下图书配套资源能够实现手机同步功能
明日微信公众号
明日之星 明日之星编程特训营
客服热线(每日9:00-17:00)
400 675 1066
mingrisoft@mingrisoft.com
吉林省明日科技有限公司Copyright ©2007-2022,mingrisoft.com, All Rights Reserved长春市北湖科技开发区盛北大街3333号长春北湖科技园项目一期A10号楼四、五层
吉ICP备10002740号-2吉公网安备22010202000132经营性网站备案信息 营业执照