`

java.io.IOException: [BEA][SQLServer JDBC Driver]Object has been closed.

阅读更多
环境:weblogic10.0,sqlserver2000,打了sp4的补丁
java.io.IOException: [BEA][SQLServer JDBC Driver]Object has been closed.
        at weblogic.jdbc.base.BaseInputStreamWrapper.validateClosedState(Unknown Source)
        at weblogic.jdbc.base.BaseInputStreamWrapper.read(Unknown Source)

目标:读取一条记录,某个字段为image,读取后,直接放入到byte[]中。
源码:
<%@ page language="java" pageEncoding="GBK"%>
<%@page import="java.io.InputStream"%>
<%@page import="java.sql.Connection"%>
<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.Statement"%>
<%@page import="java.io.*"%>
<%@page import="java.sql.*"%>
<%
    InputStream fr = null;
   
    try
    {
        Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver")
                .newInstance();
        String url = "jdbc:microsoft:sqlserver://10.4.1.90:1433;DatabaseName=QK", user = "qxs", password = "2400";
        Connection conn = DriverManager.getConnection(url, user,
                password);
        Statement stmt = conn.createStatement();
        ResultSet rs;
        String strSql = "select * from Qb_Mm5_Data where id='8' and  dt='2009-07-07 20:00:00'";
        rs = stmt.executeQuery(strSql);
       
        if (rs != null)
        {
            while (rs.next())
            {
                fr = rs.getBinaryStream("fdata");
            }
        }
       
        ByteArrayOutputStream baos = new ByteArrayOutputStream();
        int b = 0;
        while ((b = fr.read()) != -1)
            baos.write(b);
       
        for (int i = 0; i < baos.toByteArray().length; i++)
        {
            out.println("---" + baos.toByteArray()[i]);
        }
       
        try
        {
            if (fr != null)
            {
                fr.close();
                fr = null;
            }
            rs.close();
            stmt.close();
            conn.close();
           
        }
        catch (Exception e)
        {
            e.printStackTrace();
        }
       
    }
    catch (Exception e)
    {
        e.printStackTrace();
    }
%>
报错位置为: while ((b = fr.read()) != -1)处

分享到:
评论

相关推荐

    解决删除目录提示:System.IO.IOException: 目录不是空的。

    在编程过程中,尤其是在使用C#进行文件系统操作时,可能会遇到这样一个问题:当你尝试删除一个目录,系统返回“System.IO.IOException: 目录不是空的”错误。这意味着该目录下仍有文件或子目录存在,因此无法直接...

    java.io.FileNotFoundException: *****(Too many open files)

    在Java编程中,"java.io.FileNotFoundException: ***** (Too many open files)" 是一个常见的错误,意味着程序尝试打开的文件数量超过了操作系统的限制。这个错误通常出现在处理大量文件或长时间运行的程序中,尤其...

    java.security.InvalidKeyException:illegal Key Size

    在Java编程环境中,"java.security.InvalidKeyException: illegal Key Size" 是一个常见的错误,通常发生在加密或解密操作中。这个错误表示你试图使用的密钥长度超过了Java默认的安全限制。在给定的上下文中,这个...

    jenkins所需的插件等

    1. **安装 Java**:Jenkins 需要 Java 运行环境,确保系统已安装最新版的 JDK。 2. **下载 Jenkins**:从官方网站获取适合 Linux 平台的 Jenkins 可执行文件。 3. **启动 Jenkins**:通过命令行启动 Jenkins,例如...

    JSP上传图片产生 java.io.IOException: Stream closed异常解决方法

    jsp,上传时产生 如下异常: 2012-12-31 8:59:21 org.apache.catalina.core.StandardWrapperValve invoke 严重: Servlet.service() for servlet jsp threw exception java.io.IOException: Stream closed … 百思不得...

    UnlimitedJCEPolicyJDK8.rar

    java安装路径Java\jre\lib\security下替换这两个架包,即可解决 java.security.cert.CertificateException: Unable to initialize, java.io.IOException: Short read of DER length

    Eclipse 进行 ANT 时错误 Javadoc failed java.io.IOException Cannot run program javadoc

    在Eclipse集成开发环境(IDE)中使用ANT进行项目构建时,可能会遇到特定的错误提示:“Javadoc failed java.io.IOException Cannot run program javadoc”。这个错误信息表明在生成Java文档的过程中出现了问题,具体...

    报错:java.io.IOException: Could not locate executable null\bin\winutils.exe in the Hadoop binaries.-附件资源

    报错:java.io.IOException: Could not locate executable null\bin\winutils.exe in the Hadoop binaries.-附件资源

    elasticsearch-rest-client-6.5.4-cus.jar

    针对java.io.IOException: entity content is too long [180278508] for the configured buffer limit [157286400]异常,将 DEFAULT_BUFFER_LIMIT修改为150M

    BasicAuth2.java

    java.io.IOException: Server returned HTTP response code: 403 for URL 处理过程记录 BASIC AUTH2 POST接口,解决403问题

    AndroidApk混淆编译时,报告java.io.IOException…错误解决办法

    Java.io.IOException: The same input jar [E:\Android\myProgram\angel\libs\alipaySdk-20160825.jar] is specified twice. 首先 看一下我项目中关于此jar的配置,我在libs中导入了alipaySdk-20160825.jar,

    jave-1.0.2-src.jar

    it.sauronsoftware.jave.EncoderException: java.io.IOException: Cannot run program "C:\Users\moxiao\AppData\Local\Temp\jave-1\ffmpeg.exe": CreateProcess error=740, 请求的操作需要提升。 在最新的liunx ...

    Http-Multipart-Data请求

    Http-Multipart-Data-Parser-master,如需要http post接口开发、http post传文件等操作可以参考,源码的最原始地址忘记了,这个是从上面down下来新版,各位可参考

    hadoop1.0 Failed to set permissions of path 解决方案

    ERROR org.apache.hadoop.mapred.TaskTracker: Can not start task tracker because java.io.IOException: Failed to set permissions of path: \tmp\hadoop-admin \mapred\local\ttprivate to 0700 at org.apache...

    最最常用的 100 个 Java类分享

    2. `java.io.IOException`:这是所有I/O异常的基类,用于处理输入/输出操作中的错误。 3. `java.util.List`:List接口定义了有序的集合,允许有重复元素,并提供了按索引访问的方法。 4. `java.util.HashMap`:...

    annotations.zip

    Android Build 时报错: java.io.IOException: Could not parse XML from android/accounts/annotati...Android构建时报错: app:lintVitalRelease[Fatal Error] :3:214: 与元素类型 “item” 相关联的 “name” ...

    org.apache.catalina.connector.ClientAbortException和TOMCAT的日志配置

    问题1:TOMCAT下载文件出错:org.apache.catalina.connector.ClientAbortException. 问题2:TOMCAT记录接收数据大小、发送数据大小和请求处理时间

    AndroidApk混淆编译时,报告java.io.IOException...错误解决办法

    主要介绍了 AndroidApk混淆编译时,报告Error:Execution failed for task ‘:gviews:transformClassesAndResourcesWithProguardForRelease’.错误解决办法的相关资料,需要的朋友可以参考下

    java keytool安全证书学习

    Java Keytool是一个强大的工具,主要用于管理和操作密钥对和数字证书,这些是Java安全框架中的核心元素。在Java Secure Socket Extension (JSSE) 中,它扮演着创建和管理KeyStore和TrustStore的角色,以实现SSL/TLS...

Global site tag (gtag.js) - Google Analytics