java-通过myeclipse生成的webservice代码,访问超时

问题描述

通过myeclipse生成的webservice代码,访问超时

目前遇到一个问题,通过Myeclipse生成的webservice客户端代码(好像是jax-ws),如果访问的url不存在,就一直卡着,很久才报超时异常,有没有什么办法可以设置超时时间

 public ServiceCD() {
        super(
                CD_WSDL_LOCATION,
                new QName(
                        "http://xx.com/basic/atomic/operation.CD",
                        "CD"));
    }

上面是生成的代码。以下是我访问的代码:访问的时候就一直卡在这里。
网上有很多方法都不起作用。我使用过的方法有:

ServiceCD service = new ServiceCD(url, new QName(
                    url,
                    "CD"));
1、Map<String, Object> ctxt = ((BindingProvider)port).getRequestContext();
            ctxt.put(BindingProviderProperties.CONNECT_TIMEOUT, config.getConntimeout());
            ctxt.put(BindingProviderProperties.REQUEST_TIMEOUT, config.getTimeout());

            2、URL mbr_service_url = new URL(null,GlobalVars.MemberService_WSDL, new URLStreamHandler() {

            @Override
            protected URLConnection openConnection(URL url) throws IOException {
                URL clone_url = new URL(url.toString());
                HttpURLConnection clone_urlconnection = (HttpURLConnection) clone_url.openConnection();
                // TimeOut settings
                clone_urlconnection.setConnectTimeout(10000);
                clone_urlconnection.setReadTimeout(10000);
                return (clone_urlconnection);
            }
        });
        ServiceCD service = new ServiceCD(mbr_service_url);
        ```
                这些都不起作用。
                求助!!!!

解决方案

HttpURLConnection conn = null;
    OutputStream out = null;
    String rsp = null;
    try {
        try {
            conn = getConnection(new URL(url), METHOD_POST, ctype, headerMap);
            conn.setConnectTimeout(connectTimeout);
            conn.setReadTimeout(readTimeout);

            你要对connection设置超时时间,
时间: 2024-12-02 07:45:13

java-通过myeclipse生成的webservice代码,访问超时的相关文章

java生成的webservice接口的 wsdl文件 给c++访问

问题描述 java生成的webservice接口的 wsdl文件 给c++访问 我用http://ip:port/接口名?wsdl 这样生成的wsdl文件 c++生成.h文件报错 解决方案 http://bbs.csdn.net/topics/390062337 解决方案二: 要先看你的wsdl语法是否正确,这样VS可以直接导入wsdl,生成对应的包装类

使用EMP进行建模,第2部分:使用Eclipse的Java Emitter Templates生成代码

Java Emitter Templates(JET)概述 开发人员通常都使用一些工具来生成常用的代码.Eclipse 用户可能对一些标准的工 具非常熟悉,这些工具可以为选定的属性生成 for(;;) 循环, main() 方法, 以及选定 属性的访问方法.将这些简单而机械的任务变得自动化,可以加快编程的速度,并简化编 程的过程.在某些情况中,例如为 J2EE 服务器生成部署代码,自动生成代码就可以节省 大量时间,并可以隐藏具体实现特有的一些复杂性,这样就可以将程序部署到不同的 J2EE 服务器

webservice 405-.Net访问Java WebService 链接报 405method not allowed

问题描述 .Net访问Java WebService 链接报 405method not allowed .Net调用Java的WebService 链接报 the remote server returned an error(405 )method not allowed Java的WebService给的是个WSDL的链接,我用浏览器一直能访问.但是用代码访问时,偶尔能访问,偶尔访问不通,访问不通时,报"405 method not allowed". 我用的 System.Ne

java类中生成jfreechart,返回图表的url地址 代码分享_java

web.xml中设置: 复制代码 代码如下: <servlet> <servlet-name>DisplayChart</servlet-name> <servlet-class>org.jfree.chart.servlet.DisplayChart</servlet-class> </servlet > <servlet-mapping> <servlet-name>DisplayChart</ser

MyEclipse 10加入WebService的简单方法

需要用到WebService,回忆了半天怎么直接用MyEclipse生成. 首先,我的项目是已经存在的,不能新建WebService项目再迁移. 然后,编写好要用于发布的类方法对象(跟普通的类没任何区别). 最关键的来了,咱们新建一个web service 选择你的项目,并选择如图红框处 选择你要发布成webservcie的类,其他都不用管 这就完成了. 更多精彩内容:http://www.bianceng.cnhttp://www.bianceng.cn/Programming/Java/ 找

Eclipse/Myeclipse生成serialVersionUID方法

serialVersionUID作用: 序列化时为了保持版本的兼容性,即在版本升级时反序列化仍保持对象的唯一性. 如果你修改代码重新部署后出现序列化错误,可以考虑给相应的类增加serialVersionUID字段.      一般来说有两种生成方式: 一个是默认的1L,比如:private static final long serialVersionUID = 1L; 一个是根据类名.接口名.成员方法及属性等来生成一个64位的哈希字段,比如:private static final long

java中用静态块生成对象和单例模式生成对象的区别是什么?

问题描述 java中用静态块生成对象和单例模式生成对象的区别是什么? 简单的说就是在使用数据库连接池时 怎么来生成连接池 ,感觉用static静态块生成 或单例模式都能生成对象,但是不知道这两种区别是什么,不知道各位知不知道这两种 方法在jvm底层的区别,提供点使用心得,还有static需不需要考虑并发的问题? 解决方案 1没有区别啊,只是生成实例对象的时间不同而已.前者直接在类加载的时候静态代码库就被执行,相应的对象就会被实例化了. 而单例模式中通常是静态方法中提供获取实例的方法,只有在首次调

java-现在对方给一个地址,我在myeclipse里面生产客户端代码 报错,该怎么调用?

问题描述 现在对方给一个地址,我在myeclipse里面生产客户端代码 报错,该怎么调用? java 调用webservice WebService基于SoapHeader安全认证 解决方案 参考:http://blog.csdn.net/dslinmy/article/details/32076971 解决方案二: 使用apache提供的cxf,里面有个命令叫wsdl2java,可以产生客户端代码

java中动态执行一段代码

动态|执行 动态的执行一段简单代码,采用生成java文件,调用javac编译,反射执行的方式. 只是一个简单测试,有些地方有待完善. 代码如下 -------------------------------------------------------------------------------- import java.io.*; /** * 动态执行一段代码(生成文件->编译->执行) * @author kingfish * @version 1.0 */public class