微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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

公司有一服务器,内网地址,通过路由器做了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文档中的服务器地址,不过还没时间测验

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐