无法访问内网WEBServices服务的问题

来源:互联网 发布:网络电视台搜索 编辑:程序博客网 时间:2024/06/05 03:17

公司有一服务器,内网地址,通过路由器做了NAT映射,对应了一个外网IP。 服务器上部署了一个WebService应用,用的是Axis2框架。 结果别人访问这台服务器的时候,获取到的Axis2自动生成的WDSL文档(即通过URL http://xxx.xxx.xxx.xxx/AAA?wsdl获取)里面写的服务地址是这台服务器的内网地址。对方自动解析wsdl后,用WSDL里面的地址发起的访问,当然是不通了。

 

于是,想到一个办法,在网卡上由配置了一个公网IP,与NAT映射的IP相同,结果,这下正常了,自动生成的WSDL居然真的用了公网IP来描述服务。……很杯具,问题是解决了,可是还是不明所以,axis2究竟是怎么判断使用哪个IP地址的?如果我的机子有多个网卡怎么办?这个问题有待进一步研究。或者有什么办法不让Axis2自己生成WSDL而是由我自己指定一个?

 

 ———————————————传说中的分割线————————————————

据说,可以通过配置axis2.xml 中的

<parameter name="hostname" locked="true">myhost.com</parameter>参数来设置 WSDL文档中的服务器地址,不过还没时间测验

原创粉丝点击