问答

java 程序报错未知原因

作者:admin 2021-05-12 我要评论

public String HttpForm(String Url, MapString, Object DataParams, MapString, String Headers) throws IOException { HttpClient client=new HttpClient(); P...

在说正事之前,我要推荐一个福利:你还在原价购买阿里云、腾讯云、华为云服务器吗?那太亏啦!来这里,新购、升级、续费都打折,能够为您省60%的钱呢!2核4G企业级云服务器低至69元/年,点击进去看看吧>>>)
 public String HttpForm(String Url, Map<String, Object> DataParams, Map<String, String> Headers) throws IOException {
        HttpClient client=new HttpClient();
        PostMethod method=new PostMethod(Url);
        List<BasicNameValuePair> nameValuePairs = new ArrayList<>(DataParams.size());
        for (Map.Entry<String, String> entry : Headers.entrySet()) {
            method.setRequestHeader(entry.getKey(), entry.getValue());
        }
        for (Map.Entry<String, Object> entry : DataParams.entrySet()) {
            nameValuePairs.add(new BasicNameValuePair(entry.getKey(), String.valueOf(entry.getValue())));
            NameValuePair[] NameValueArray = (NameValuePair[])nameValuePairs.toArray(new NameValuePair[nameValuePairs.size()]);
            method.addParameters(NameValueArray);
        }
        client.executeMethod(method);
        InputStream InStream=method.getResponseBodyAsStream();
        BufferedReader Buff=new BufferedReader(new InputStreamReader(InStream));
        StringBuffer StrBuffer=new StringBuffer();
        String Temp="";
        while ((Temp=Buff.readLine()) != null) {
            StrBuffer.append(Temp);
        }
        String Response=StrBuffer.toString();
        return Response;
    }

报错如下

D:\javasoftware\jdk\bin\java.exe "-javaagent:D:\loading software\IntelliJ IDEA 2020.2.3\lib\idea_rt.jar=49187:D:\loading software\IntelliJ IDEA 2020.2.3\bin" -Dfile.encoding=UTF-8 -classpath D:\javasoftware\jdk\jre\lib\charsets.jar;D:\javasoftware\jdk\jre\lib\deploy.jar;D:\javasoftware\jdk\jre\lib\ext\access-bridge-64.jar;D:\javasoftware\jdk\jre\lib\ext\cldrdata.jar;D:\javasoftware\jdk\jre\lib\ext\dnsns.jar;D:\javasoftware\jdk\jre\lib\ext\jaccess.jar;D:\javasoftware\jdk\jre\lib\ext\jfxrt.jar;D:\javasoftware\jdk\jre\lib\ext\localedata.jar;D:\javasoftware\jdk\jre\lib\ext\nashorn.jar;D:\javasoftware\jdk\jre\lib\ext\sunec.jar;D:\javasoftware\jdk\jre\lib\ext\sunjce_provider.jar;D:\javasoftware\jdk\jre\lib\ext\sunmscapi.jar;D:\javasoftware\jdk\jre\lib\ext\sunpkcs11.jar;D:\javasoftware\jdk\jre\lib\ext\zipfs.jar;D:\javasoftware\jdk\jre\lib\javaws.jar;D:\javasoftware\jdk\jre\lib\jce.jar;D:\javasoftware\jdk\jre\lib\jfr.jar;D:\javasoftware\jdk\jre\lib\jfxswt.jar;D:\javasoftware\jdk\jre\lib\jsse.jar;D:\javasoftware\jdk\jre\lib\management-agent.jar;D:\javasoftware\jdk\jre\lib\plugin.jar;D:\javasoftware\jdk\jre\lib\resources.jar;D:\javasoftware\jdk\jre\lib\rt.jar;D:\javaproject\EPSpider\target\classes;C:\Users\Administrator\.m2\repository\org\apache\httpcomponents\httpclient\4.5.12\httpclient-4.5.12.jar;C:\Users\Administrator\.m2\repository\org\apache\httpcomponents\httpcore\4.4.13\httpcore-4.4.13.jar;C:\Users\Administrator\.m2\repository\commons-logging\commons-logging\1.2\commons-logging-1.2.jar;C:\Users\Administrator\.m2\repository\commons-codec\commons-codec\1.11\commons-codec-1.11.jar;C:\Users\Administrator\.m2\repository\commons-httpclient\commons-httpclient\3.1\commons-httpclient-3.1.jar;C:\Users\Administrator\.m2\repository\org\jsoup\jsoup\1.12.1\jsoup-1.12.1.jar;C:\Users\Administrator\.m2\repository\org\mongodb\mongo-java-driver\3.12.7\mongo-java-driver-3.12.7.jar;C:\Users\Administrator\.m2\repository\org\slf4j\slf4j-api\2.0.0-alpha1\slf4j-api-2.0.0-alpha1.jar main.Main
Exception in thread "main" java.lang.ArrayStoreException
    at java.lang.System.arraycopy(Native Method)
    at java.util.ArrayList.toArray(ArrayList.java:412)
    at com.company.MiddleWare.HttpForm(MiddleWare.java:52)
    at main.Main.main(Main.java:22)

Process finished with exit code 1
###

变量nameValuePairs声明的是父类BasicNameValuePair,强转成子类NameValuePair是会报错的。如果类型使用是明确的,建议统一成一个就好了。合理的方式是统一成父类。

版权声明:本文转载自网络,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。本站转载出于传播更多优秀技术知识之目的,如有侵权请联系QQ/微信:153890879删除

相关文章
  • java 程序报错未知原因

    java 程序报错未知原因

  • CObobox能中英文切换 绑定不了xaml资源

    CObobox能中英文切换 绑定不了xaml资源

  • electron打包后启动应用 提示Error: Ca

    electron打包后启动应用 提示Error: Ca

  • antv L7 要怎么设置地图绘制范围的大小

    antv L7 要怎么设置地图绘制范围的大小

腾讯云代理商
海外云服务器