Underlying input stream returned zero bytes

 这段时间一直都在做一个erp系统,一直有这样一个问题困扰着我,数据库表中有一个字段数据类型为text,当我从数据库读数据出来的时候,jsp页面总是出现这样的错误,[Microsoft][SQLServer2000 Driver for JDBC]Underlying input stream returned zero bytes的异常了。从网上搜集资料来看,这是一个jdbc的bug,不能将一个"NULL"值和一个""(empty)存储在text类型的字段中。当我从数据库读出数据的时候,总会出现这样的错误.

        无奈中只好求助google了,具体的方法:
        [解决办法:可以在表结构中设置字段的默认值为""(one char)]

        可我改过以后,错误依旧.无奈之下实在没有办法.就把数据库升级到SP4版本,jdbc用sql2005的.可是问题还是存在.好郁闷.

        好几天都没有解决这个问题,后来我把text类型的字段改为ntext后,奇迹就在这时候出现了.错误没有了.欣喜之情不用言表.希望微软早点解决这个问题.本人被这个bug已经弄的没有脾气了,幸好现在解决了.

     *****************************************************************

   总之,尽量不要将null存入sql server中的text字段中,若通过一textarea向text赋值,在提交前应先判断textarea是否为null

### 回答1: HTTP/2是一种网络传输协议,它将数据分成多个流(stream)传输,以提高网络性能。当HTTP/2的一个流在底层结束之前没有干净地关闭时,会出现“http/2 stream 1 was not closed cleanly before end of the underlying stream”的错误提示。 这通常意味着在网络连接中出现了一些问题,例如连接中断或数据包丢失。为了解决这个问题,可以尝试重新连接网络或者重新发送请求。另外,也可以使用网络分析工具来检查网络连接和数据流,以便找到问题的根源。 ### 回答2: HTTP/2是一种新的网络协议,其最重要的特点是使用了多路复用技术,即在同一个TCP连接上可以同时传输多个HTTP请求与响应。这种新的协议带来了很多优势,可以显著提高网络传输的效率,并提升用户体验。 然而,当我们在使用HTTP/2的时候,有时会遇到一些问题,比如“HTTP/2 stream 1 was not closed cleanly before end of the underlying stream”的错误提示。这个错误提示的意思是在底层流结束之前,HTTP/2的流1没有被正确地关闭。 那么,究竟是什么原因导致这个问题的出现呢?通常来说,这个问题是由于网络连接不稳定或者服务器出现故障导致的。比如说,在一个页面上有多个资源需要加载,如果其中某个资源的加载出现了问题,那么就有可能导致HTTP/2协议中的某个流没有被正确关闭。 此外,还有一些其他的原因也会导致这个问题的出现,比如缓存问题、浏览器错误等。如果遇到这个问题,我们可以尝试清理缓存、重新打开浏览器,或者检查网络连接是否正常。如果无法解决,可以考虑联系网站管理员或网络服务提供商寻求帮助。 总之,HTTP/2 stream 1 was not closed cleanly before end of the underlying stream是一个比较常见的HTTP/2协议错误,出现的原因多种多样,需要我们仔细分析情况,并采取相应的措施来解决问题。 ### 回答3: 这个错误是指在使用HTTP/2时,流1没有在底层流结束前干净关闭的情况。HTTP/2是一种新式的网络协议,相较于HTTP/1.x而言,具有更快的速度和更优秀的性能。 HTTP/2使用多个流来处理特定的请求和响应,以提高效率。每个流都有其独立的流ID和优先级,以确保按照正确的顺序传输数据。由于HTTP/2的数据流并不是按照传统意义上的“请求-响应”模式运作的,因此每个流必须都被明确地结束。 如果流没有被干净地关闭,则会发生“http/2 stream 1 was not closed cleanly before end of the underlying stream”的错误。这个错误通常发生在网络环境不稳定或者服务器和客户端之间的连接出现问题的时候。 为了解决这个问题,我们可以尝试以下措施: 1.检查网络连接并确保它的稳定性。如果网络连接不稳定,则会影响HTTP/2流的传输,导致流无法干净地关闭。 2.尝试使用其他浏览器或 HTTP/2 客户端,以排除浏览器本身的问题。 3.使用HTTP/2的特性来确保每个流被正确地关闭。例如,使用RST_STREAM帧来关闭流,或在请求头中添加“End Stream”标志来明确结束流。 总之,HTTP/2的流传输机制和传统的“请求-响应”模式有很大不同,需要注意流的正确关闭以确保数据的正确传输。如果出现了“http/2 stream 1 was not closed cleanly before end of the underlying stream”的错误,我们可以尝试以上措施来解决问题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值