axis客户端循环访问webservice的时候只发送了几条数据就断开了的问题

缘由 axis客户端访问webservice默认是使用http1.0版本的,这个版本的http不能保持长链接,应该换成http1.1版本java

具体修改步骤:web

<?xml version="1.0" encoding="UTF-8"?>
<deployment name="defaultClientConfig"
            xmlns="http://xml.apache.org/axis/wsdd/"
            xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
 <globalConfiguration>
   <parameter name="disablePrettyXML" value="true"/>
   <parameter name="enableNamespacePrefixOptimization" value="false"/>
 </globalConfiguration>
    <transport name="http"
        pivot="java:org.apache.axis.transport.http.CommonsHTTPSender" />
 <transport name="local" pivot="java:org.apache.axis.transport.local.LocalSender"/>
 <transport name="java" pivot="java:org.apache.axis.transport.java.JavaSender"/>
</deployment>

上述文件具体的替换内容以下:apache

tomcat

<transport name="http"
        pivot="java:org.apache.axis.transport.http.HTTPSender" />

替换为ide

<transport name="http"
        pivot="java:org.apache.axis.transport.http.CommonsHTTPSender" />

 

HTTPSender使用HTTP1.0,修改成CommonsHTTPSender使用httpclient发送请求,使用的是HTTP1.1。spa

 

因为使用了HTTPCLIENT,请导入依赖包:commons-httpclient-3.1.jar和commons-codec-1.3.jar。.net

 

pom.xml增长code

<!-- https://mvnrepository.com/artifact/commons-httpclient/commons-httpclient -->
        <dependency>
            <groupId>commons-httpclient</groupId>
            <artifactId>commons-httpclient</artifactId>
            <version>3.1</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/commons-codec/commons-codec -->
        <dependency>
            <groupId>commons-codec</groupId>
            <artifactId>commons-codec</artifactId>
            <version>1.3</version>
        </dependency>

原文地址:https://blog.csdn.net/tomatotomcat/article/details/17300067xml

相关文章
相关标签/搜索