欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java NegativeArraySizeException異常解決方案

 更新時(shí)間:2021年08月25日 14:18:17   作者:蝸牛coder  
這篇文章主要介紹了Java NegativeArraySizeException異常解決方案,本篇文章通過簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下

問題描述:服務(wù)器接收后臺(tái)返回的報(bào)文時(shí),提示java.lang.NegativeArraySizeException

分析:這種異常返回的原因,一般情況下沒有報(bào)文提示為返回空?qǐng)?bào)文,初步分析是響應(yīng)報(bào)文流長(zhǎng)度出了問題

百度一下類似的情況:https://stackoverflow.com/questions/11207897/negative-array-size-exception

節(jié)選部分內(nèi)容:

try{
     connection = (HttpConnection)Connector.open("http://someurl.xml",Connector.READ_WRITE);
     URLEncodedPostData postData = new URLEncodedPostData(URLEncodedPostData.DEFAULT_CHARSET, false);
     postData.append("username", "loginapi");
     postData.append("password", "myapilogin");
     postData.append("term", word);
 
     connection.setRequestMethod(HttpConnection.POST);
     connection.setRequestProperty("Content-Type","application/x-www-form-urlencoded");
     connection.setRequestProperty("User-Agent","Profile/MIDP-2.0 Configuration/CLDC-1.0");
     requestOut = connection.openOutputStream();
     requestOut.write(postData.getBytes());
     String contentType = connection.getHeaderField("Content-type");
     detailIn = connection.openInputStream();        
     int length = (int) connection.getLength();
     ByteArrayOutputStream baos = new ByteArrayOutputStream();
     if(length > 0){//這里長(zhǎng)度沒有判定的情況下,byte array長(zhǎng)度若為-1會(huì)產(chǎn)生錯(cuò)誤
         byte info[] = new byte[length];
         int bytesRead = detailIn.read(info);
         while(bytesRead > 0) {
             baos.write(info, 0, bytesRead);
             bytesRead = detailIn.read(info);
             }
         baos.close();
         connection.close();
         requestSuceeded(baos.toByteArray(), contentType);
 
         detailIn.read(info);
     }
     else
     {
          System.out.println("Negative array size");
     }
           requestOut.close();
           detailIn.close();
           connection.close();
    }

  結(jié)論:HTTP服務(wù)器在返回響應(yīng)報(bào)文的時(shí)候,沒有進(jìn)行content.length長(zhǎng)度判斷,按照常規(guī)流程響應(yīng)了錯(cuò)誤長(zhǎng)度的報(bào)文,導(dǎo)致了接收方報(bào)文長(zhǎng)度異常

到此這篇關(guān)于Java NegativeArraySizeException異常解決方案的文章就介紹到這了,更多相關(guān)Java NegativeArraySizeException異常內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Java實(shí)現(xiàn)人臉識(shí)別登錄、注冊(cè)等功能(最新完整版)

    Java實(shí)現(xiàn)人臉識(shí)別登錄、注冊(cè)等功能(最新完整版)

    這段時(shí)間由于學(xué)校實(shí)行靜態(tài)化管理,寢室門和校門都是用了人臉識(shí)別的裝置,本系列項(xiàng)目從設(shè)計(jì)到實(shí)現(xiàn)源碼全部開源免費(fèi)學(xué)習(xí)使用,對(duì)Java實(shí)現(xiàn)人臉識(shí)別登錄、注冊(cè)功能感興趣的朋友一起看看吧
    2022-05-05
  • String與Blob互轉(zhuǎn)和file文件與Blob互轉(zhuǎn)方式

    String與Blob互轉(zhuǎn)和file文件與Blob互轉(zhuǎn)方式

    這篇文章主要介紹了String與Blob互轉(zhuǎn)和file文件與Blob互轉(zhuǎn)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • Spring Boot Security配置教程

    Spring Boot Security配置教程

    在本文里我們給大家分享了關(guān)于Spring Boot Security配置的相關(guān)步驟以及注意要點(diǎn),需要的朋友們跟著操作下。
    2019-05-05
  • SpringBoot?jackson提供對(duì)LocalDate的支持方式

    SpringBoot?jackson提供對(duì)LocalDate的支持方式

    這篇文章主要介紹了SpringBoot?jackson提供對(duì)LocalDate的支持方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-01-01
  • Spring AOP詳解面向切面編程思想

    Spring AOP詳解面向切面編程思想

    Spring是一個(gè)廣泛應(yīng)用的框架,SpringAOP則是Spring提供的一個(gè)標(biāo)準(zhǔn)易用的aop框架,依托Spring的IOC容器,提供了極強(qiáng)的AOP擴(kuò)展增強(qiáng)能力,對(duì)項(xiàng)目開發(fā)提供了極大地便利
    2022-06-06
  • 手把手教你k8s部署springboot服務(wù)

    手把手教你k8s部署springboot服務(wù)

    本文主要介紹了手把手教你k8s部署springboot服務(wù),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-07-07
  • 輸出java進(jìn)程的jstack信息示例分享 通過線程堆棧信息分析java線程

    輸出java進(jìn)程的jstack信息示例分享 通過線程堆棧信息分析java線程

    通過ps到j(luò)ava進(jìn)程號(hào)將進(jìn)程的jstack信息輸出。jstack信息是java進(jìn)程的線程堆棧信息,通過該信息可以分析java的線程阻塞等問題。
    2014-01-01
  • java枚舉的使用示例

    java枚舉的使用示例

    我們?cè)趯W(xué)習(xí)編程語言的時(shí)候都學(xué)過枚舉,現(xiàn)在就具體來看看java中的枚舉的使用
    2013-12-12
  • Mybatis的介紹、基本使用、高級(jí)使用

    Mybatis的介紹、基本使用、高級(jí)使用

    這篇文章主要介紹了Mybatis的介紹、基本使用、高級(jí)使用,Mybatis是一款半自動(dòng)的ORM持久層框架,具有較高的SQL靈活性,如何使用看這篇就夠了,需要的朋友可以參考下
    2023-03-03
  • Spring?createBeanInstance實(shí)例化Bean

    Spring?createBeanInstance實(shí)例化Bean

    這篇文章主要為大家介紹了Spring?createBeanInstance實(shí)例化Bean源碼解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-03-03

最新評(píng)論