加载xml时的HTTP代理问题之问题篇

本文介绍了一种在使用JBoss/Tomcat部署WebService时遇到的因公司代理导致无法访问外部WSDL文件的问题,并通过编写自定义Listener的方式成功解决了代理访问问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

需要发布一个WebService

WSDL中有:

 

<wsdl:import namespace="http://docs.oasis-open.org/wsn/bw-2"
 location="http://docs.oasis-open.org/wsn/bw-2.wsdl"/>

 

问题在于http://docs.oasis-open.org/wsn/bw-2.wsdl在IE上是可以访问的,但是用eclipse/MyEcplise在JBoss/Tomcat下启动时,会因为公司的代理而无法访问。

我尝试了的解决方法有:

1.在IDE上设置代理,鉴权与不鉴权的都用了

2.在eclipse.ini中加入代理相关的配置

以上方法都不行

 

后来我想到,eclipse的代理,配置了也只是对IDE有效,而我需要的是对应用有效,所以上面的思路肯定不行,于是我尝试去搜索Tomcat和JBoss的启动时代理方法,很遗憾,容器也不能提供,不过倒是有个思路:

代理应该是由应用去完成,容器不负责这个工作。

于是我写了个listener,

@Override
 public void contextInitialized(ServletContextEvent arg0)
 {
 System.getProperties().put("proxySet", "true");
 System.getProperties().put("proxyHost", "myHost");
 System.getProperties().put("proxyPort", "8080");
 }

 

 

并且配置在web.xml第一个节点。

运行OK。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值