我使用的是CXF发布的WS,网上大多是说IIS+.NET的WS才有这种情况。可我是java,而且跟代理没有关系。想知道这是为什么。
我的测试类  URL wsdlURL = null;   
        wsdlURL = new URL("http://10.81.66.192:8088/swglb/services/CenterService?wsdl");
         final QName SERVICE_NAME = new QName("http://impl.service.centermgr.swglb.goldenwater.com/", "CenterServiceImplService");   
         Service service = Service.create(wsdlURL, SERVICE_NAME);只要将IP改成localhost就可以。请各位提点意见。

解决方案 »

  1.   

    两种情况:1.你的防火墙问题。2.10.81.66.192这个IP是你的外网IP,但你的路由器没做端口映射,那个那个IP跟本访问不到你的电脑。
      

  2.   


    怎么可能啊?那你换成127.0.0.1试试看啊,你是不是本机访问啊?如果是远程访问那你10.81.66.192的IP是固定的IP地址还是动态的啊?
      

  3.   

    我 ping 了一下 impl.service.centermgr.swglb.goldenwater.com 这个域名,其是指向 74.117.114.79 的,并不是指向 10.81.66.192 的。
      

  4.   

    你的 Web 服务是发布在什么容器下的?
      

  5.   

    lz如果使用了路由器的话,那么当你去访问你自己的那个ip的时候,实际上访问的是你的路由器,所以,如果lz要让它访问的是自己的电脑的话,就要在路由器上进行设置,具体是进入你的路由中心,在里面设置转发规则!而在设置转发规则的时候所写的ip则是你相对于路由器的ip
      

  6.   

    我使用的容器是tomcat,如果在调用的时候把自己的IP设成代理是可以的。可是不允许这样。而且不知道这是什么造成的。IP 是公司分配给我的。有路由。很纠结。。,是 不是要配置XML呢。
      

  7.   

    先在IE里看看http://10.81.66.192:8088/swglb/services/CenterService?wsdl你的这个地址在你本机能不能打开再说,如果打不开说明直接访问IP有问题,能打开说明是你的程序有问题
      

  8.   

    这个是你webservices的发布有问题吧!你需要查看下webService的wsdl文件bind的地址是localhost还是ip地址。