文档章节

Web Service 调用时间每次都得五分钟才响应结果(Web Service Call Need 5 minutes Everytime)

奋斗到天明
 奋斗到天明
发布于 2015/08/27 18:09
字数 327
阅读 591
收藏 0
点赞 0
评论 0

今天调试WebService服务的时候遇到一个问题,WebService的服务端是用Jaxws(JDK自带)构建,测试用的客户端是用Eclipse自动生成。

在每次客户端调用的时候,服务端能接受请求,并处理请求,但是返回时候,客户端不能立即得到响应,而需要大约5分钟/300000g毫秒才能结果。 

代码类似: 

服务端代码com.je.ws.HelloService.java:

package com.je.ws;

import javax.jws.WebMethod;
import javax.jws.WebService;
import javax.xml.ws.Endpoint;

@WebService(name="helloService" ,portName="helloServicePort" ,targetNamespace="http://www.javaedu.com")
public class HelloService {
 @WebMethod
 public String hello(String name){
 System.out.println("Sev.Hello:" + name);
 return "OK, " + name.length;
 }
 
 public static void main(String[] args){
 Endpoint.publish("http://192.168.3.120:8080/HelloServicePort", new HelloService());
 }
}

客户端代码,省去由Eclipse自动生成代码,客户端调用代码:com.je.test.JestClient.java:

package com.je.test;
import java.rmi.RemoteException;

public class JestClient {
 public static void main(String[] args) throws RemoteException {
  HelloServiceProxy jp = new HelloServiceProxy();
  String hello = jp.hello("xidada");
  System.out.println(hello);
 }
}

问同事没人见过,Google/百度也少有答案。最后不断更换条件,终于找到答案了。原因竟然是Http协议的版本问题…… 在eclipse 生成的方法中,XXXPortBindingStub.java调用方法中添加

_call.setProperty(MessageContext.HTTP_TRANSPORT_VERSION,HTTPConstants.HEADER_PROTOCOL_V11);

添加之后,OK。更深层原因不明,等待高手答疑,希望对大家有帮助。

解决方法来自大S.O. http://stackoverflow.com/questions/1985963/eclipse-generated-web-service-client-extremely-slow

© 著作权归作者所有

共有 人打赏支持
奋斗到天明
粉丝 18
博文 112
码字总数 82707
作品 0
昌平
程序员
@EnableScheduling和@Scheduled的使用

定时任务在配置类上添加@EnableScheduling开启对定时任务的支持,在相应的方法上添加@Scheduled声明需要执行的定时任务。 其中Scheduled注解中有以下几个参数: cron zone fixedDelay和fixed...

u014231523 ⋅ 2017/07/28 ⋅ 0

淘宝海量数据产品的技术架构(有删减)

缓存系统不得不考虑的另一个问题是缓存穿透与失效时的雪崩效应。缓存穿透是指查询一个一定不存在的数据,由于缓存是不命中时被动写的,并且出于容错考虑,如果从存储层查不到数据则不写入缓存...

天下杰论 ⋅ 2015/09/22 ⋅ 0

几种通讯协议的比较RMI,Httpinvoker,Hessian,Burlap,webservice

一、综述 本文比较了RMI,Hessian,Burlap,Httpinvoker,web service等5种通讯协议的在不同的数据结构和不同数据量时的传输性能。RMI是java语言本身提供的通讯协议,稳定高效,是EJB的基础。...

o0无忧亦无怖 ⋅ 2015/10/15 ⋅ 0

java 几种远程服务调用协议的比较

一、综述 本文比较了RMI,Hessian,Burlap,Httpinvoker,web service等5种通讯协议的在不同的数据结构和不同数据量时的传输性能。 RMI是java语言本身提供的远程通讯协议,稳定高效,是EJB的...

哈全文 ⋅ 2012/09/12 ⋅ 0

我想问一下线程池的使用

其实我对线程/线程池了解不是很多 所以我想咨询一下大家,下面是一个定时的每五分钟运行下面这5个service的线程池,我想问一下,其实Service2-5运算量不大 service1运算量很大,我的理想状态...

业余编程人士 ⋅ 2017/04/21 ⋅ 7

ABP module-zero +AdminLTE+Bootstrap Table+jQuery权限管理系统第十七节--Quartz与ABP框架Abp.Quartz及扩展

ABP+AdminLTE+Bootstrap Table权限管理系统一期 Github:https://github.com/Jimmey-Jiang/ABP-ASP.NET-Boilerplate-Project-CMS Quartz简介 Quartz.NET是一个开源的作业调度框架,是 的 的.......

安与生_ ⋅ 2017/12/14 ⋅ 0

【严肃调查】程序猿能不能坚持五分钟??

我发现很多人对程序员都有误解。比如:外界经常调侃我们发际线太高;大部分都找不到对象;性生活全靠撸!最近,百度做了一个调查彻底给程序猿正名。调查涉及到性生活频率、最近一次性生活等方...

uzv80px5v412ne ⋅ 2017/12/01 ⋅ 0

例行性工作

什么是例行性工作 有的工作是例行性的(如上下班打卡), 有的工作则是临时发生的(如商品大降价)。*** Linux工作调度的种类: at cron 两种工作调度的方式: 一种是例行性的,就是每隔一定的...

nao ⋅ 2016/12/26 ⋅ 0

RMI、Hessian、Burlap、Httpinvoker、WebService的比较

一、综述 本文比较了RMI、Hessian、Burlap、Httpinvoker、WebService5这种通讯协议的在不同的数据结构和不同数据量时的传输性能。 RMI是java语言本身提供的远程通讯协议,稳定高效,是EJB的基...

商者 ⋅ 2016/03/29 ⋅ 0

RMI、Hessian、Burlap、Httpinvoker、WebService的比较

一、综述 本文比较了RMI、Hessian、Burlap、Httpinvoker、WebService5这种通讯协议的在不同的数据结构和不同数据量时的传输性能。 RMI是java语言本身提供的远程通讯协议,稳定高效,是EJB的基...

rock912 ⋅ 2016/02/03 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

聊聊spring cloud的RequestRateLimiterGatewayFilter

序 本文主要研究一下spring cloud的RequestRateLimiterGatewayFilter GatewayAutoConfiguration @Configuration@ConditionalOnProperty(name = "spring.cloud.gateway.enabled", matchIfMi......

go4it ⋅ 54分钟前 ⋅ 0

Spring JavaConfig 注解

JavaConfig注解允许开发者将Bean的定义和配置放在Java类中。它是除使用XML文件定义和配置Bean外的另一种方案。 配置: 如一个Bean如果在XML文件可以这样配置: <bean id="helloBean" class="...

霍淇滨 ⋅ 今天 ⋅ 0

Spring clound 组件

Spring Cloud技术应用从场景上可以分为两大类:润物无声类和独挑大梁类。 润物无声,融合在每个微服务中、依赖其它组件并为其提供服务。 Ribbon,客户端负载均衡,特性有区域亲和、重试机制。...

英雄有梦没死就别停 ⋅ 今天 ⋅ 0

Confluence 6 重新获得站点备份文件

Confluence 将会创建备份,同时压缩 XML 文件后存储熬你的 <home-directory>/backups> 目录中。你需要自己访问你安装的 Confluence 服务器,并且从服务器上获得这个文件。 运行从 Confluence...

honeymose ⋅ 今天 ⋅ 0

informix的常用SQL语句

1、创建数据库 eg1. 创建不记录日志的库testdb,参考语句如下: CREATE DATABASE testdb; eg2. 创建带缓冲式的记录日志的数据库testdb(SQL语句不一定在事务之中,拥有者名字不被用于对象的解...

wangxuwei ⋅ 今天 ⋅ 0

matplotlib画图

最简单的入门是从类 MATLAB API 开始,它被设计成兼容 MATLAB 绘图函数。 from pylab import *from numpy import *x = linspace(0, 5, 10)y = x ** 2figure()plot(x, y, 'r')...

Dr_hu ⋅ 今天 ⋅ 0

RabbitMQ学习以及与Spring的集成(三)

本文介绍RabbitMQ与Spring的简单集成以及消息的发送和接收。 在RabbitMQ的Spring配置文件中,首先需要增加命名空间。 xmlns:rabbit="http://www.springframework.org/schema/rabbit" 其次是模...

onedotdot ⋅ 今天 ⋅ 0

JAVA实现仿微信红包分配规则

最近过年发红包拜年成为一种新的潮流,作为程序猿对算法的好奇远远要大于对红包的好奇,这里介绍一种自己想到的一种随机红包分配策略,还请大家多多指教。 算法介绍 一、红包金额限制 对于微...

小致dad ⋅ 今天 ⋅ 0

Python 数电表格格式化 xlutils xlwt xlrd的使用

需要安装 xlutils xlwt xlrd 格式化前 格式化后 代码 先copy读取的表格,然后按照一定的规则修改,将昵称中的学号提取出来替换昵称即可 from xlrd import open_workbookfrom xlutils.copy ...

阿豪boy ⋅ 今天 ⋅ 0

面试题:使用rand5()生成rand7()

前言 读研究生这3 年,思维与本科相比变化挺大的,这几年除了看论文、设计方案,更重要的是学会注重先思考、再实现,感觉更加成熟吧,不再像个小P孩,人年轻时总会心高气傲。有1 道面试题:给...

初雪之音 ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部