webservice获取客户端IP地址

目录:

  1. 基于JDK6 jax-ws开发的webservice获取客户端IP地址
    • Endpoint.publish() 轻量级HTTP服务发布
    • 在web容器tomcat下发布
  2. 基于XFire开发的webservice获取客户端IP地址
  3. 基于Axis开发的webservice获取客户端IP地址

[一]、基于JDK6 jax-ws开发的webservice获取客户端IP地址

以:http://www.micmiu.com/soa/webservice/jax-ws-demo/ 中的 [三] 2 具体示例为基础:

1. 情况一:如果以 Endpoint.publish() 的方式发布:

服务端接口实现类:HelloServiceImpl.java 修改如下:

客户端调用后,服务端运行日志:

从上面的日志信息中可看出:服务端完全可以获取到客户端的IP地址。

2. 情况二:如果以web容器的方式发布(jetty 或 tomcat为例):

服务端接口实现 HelloServiceImpl.java 修改成如下:

客户端代码不用修改,运行如下:

服务端运行日志如下:

从上面的日志信息中可看出:服务端完全可以获取到客户端的IP地址。

[二]、基于XFire开发的webservice获取客户端IP地址

以:http://www.micmiu.com/soa/webservice/xfire-ws-base-demo/ 的示例为基础:

服务端接口实现类:HelloServiceImpl.java 修改成如下:

客户端调用后,服务端的日志信息如下:

从上面的日志信息中可看出:服务端完全可以获取到客户端的IP地址。

[三]、Axis开发的webservice获取客户端IP地址

以Axis最简单的部署方式为例:

服务端代码:HelloWorld.java

客户端调用代码:Client4Hello.java

运行客户端结果:

从tomcat的日志文件catalina.out 中看到服务端运行信息

从上面的日志信息中可看出:服务端完全可以获取到客户端的IP地址。

到此演示了JAX-WS、XFire、Axis三种webservice的获取客户端IP的简单实现过程。

原创文章,转载请注明: 转载自micmiu – 软件开发+生活点滴[ http://www.micmiu.com/ ]

本文链接地址: http://www.micmiu.com/soa/webservice/webservice-client-ip/

发表评论?

1 条评论。

  1. MessageContext.getCurrentContext();走到这一步时报反射异常是什么情况

回复给 1 ¬
取消回复


注意 - 你可以用以下 HTML tags and attributes:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">