2019独角兽企业重金招聘Python工程师标准>>>

import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.xml.ws.WebServiceContext;

import org.apache.axis.MessageContext;
import org.apache.axis.transport.http.HTTPConstants;
import org.apache.cxf.transport.http.AbstractHTTPDestination;
import org.codehaus.xfire.transport.http.XFireServletController;

/**
 * @Author MH
 * @version 2011-12-2 上午09:31:49
 */

public class ClientIpXfire {

@Resource
    private WebServiceContext context;

/**
     * CXF获取客户端IP地址
     * 
     * @Author MH
     * @return
     */
    public String getClientIpCxf() {
        try {
            javax.xml.ws.handler.MessageContext ctx = context
                    .getMessageContext();
            HttpServletRequest request = (HttpServletRequest) ctx
                    .get(AbstractHTTPDestination.HTTP_REQUEST);
            String ip = request.getRemoteAddr();
            return ip;
        } catch (Exception e) {
            System.out.println("无法获取对方主机IP");
            e.printStackTrace();
            return null;
        }

}

/**
     * XFIRE获取客户端IP地址
     * 
     * @Author MH
     * @return
     */
    public static String getClientIpXfire() {
        String ip = null;
        try {
            HttpServletRequest request = XFireServletController.getRequest();
            ip = request.getRemoteAddr();
            return ip;
        } catch (Exception e) {
            System.out.println("无法获取对方主机IP");
            e.printStackTrace();
            return null;
        }
    }

/**
     * AXIS获取客户端IP地址
     * 
     * @Author MH
     * @return
     */
    public static String getClientIpAxis() {
        try {
            MessageContext mc = MessageContext.getCurrentContext();
            HttpServletRequest request = (HttpServletRequest) mc
                    .getProperty(HTTPConstants.MC_HTTP_SERVLETREQUEST);
            System.out.println("remote ip: " + request.getRemoteAddr());
            return request.getRemoteAddr();
        } catch (Exception e) {
            System.out.println("无法获取对方主机IP");
            e.printStackTrace();
            return null;
        }

}
}

转载于:https://my.oschina.net/u/154628/blog/1570460

JAVA CXF、XFIRE、AXIS webservice获取客户端IP相关推荐

  1. WebService(JAX-WS、XFire、Axis三种)获取客户端ip

    WebService(JAX-WS.XFire.Axis三种)获取客户端ip JAX-WS.XFire.Axis三种webservice的获取客户端IP的简单实现过程: 1,基于JDK6 jax-ws ...

  2. Service获取客户端IP地址(java)

    Java代码 <strong>1.基于jax-ws开发的webservice获取客户端ip的方法[在代理类XXXDelegate添加如下代码]:</strong> import ...

  3. java 获取 ip mac_Java获取客户端ip mac地址

    欢迎进入Java社区论坛,与200万技术人员互动交流 >>进入 最近做一个安全系统,需要对用户的 ip 和 mac 地址进行验证,这里用到获取客户端ip和mac地址的两个方法,留存. 1. ...

  4. java获取客户端IP地址工具类

    代码如下自取: import lombok.extern.slf4j.Slf4j;import javax.servlet.http.HttpServletRequest; import java.n ...

  5. java服务端获取客户端ip(代理)

    在没有网关或者反向代理软件情况下,java里获取客户端ip地址的方法是request.getRemoteAddr() 先解释下http协议和TCP协议: 网页默认是进行http连接了,http协议即超 ...

  6. java 获取 客户端端口_Java获取客户端IP、端口等信息

    Java获取客户端IP.端口等信息.txt花前月下,不如花钱"日"下.叶子的离开,是因为风的追求还是树的不挽留?干掉熊猫,我就是国宝!别和我谈理想,戒了!Java获取客户端IP.端 ...

  7. java h5获取ip_JS获取客户端IP地址、MAC和主机名的7个方法汇总

    今天在搞JS(javascript)获取客户端IP的小程序,上网搜了下,好多在现在的系统和浏览器中的都无效,很无奈,在Chrome.FireFox中很少搞到直接利用ActiveX获取IP等的JS脚本. ...

  8. 获取客户端ip的方法

    首先先说一下常规的js通过api获取ip的方法: 搜狐接口: <script src="http://pv.sohu.com/cityjson?ie=utf-8">&l ...

  9. 获取客户端IP和MAC地址

    小编是菜鸟,这两天拿到一个需求,登录时判断ip地址是否允许登录,这几天做下来小编遇见了好多坑,给大家分享一下. 系统架构:.net+java 首先,不管怎么样http请求头才是获取ip地址的唯一方式: ...

最新文章

  1. 【洛谷P3106】[USACO14OPEN]GPS的决斗Dueling GPS's
  2. aws cognito_使用AWS Cognito的用户管理—(1/3)初始设置
  3. 面向对象、继承、抽象方法重载知识点整理
  4. Scala的函数式编程
  5. 微服务升级_SpringCloud Alibaba工作笔记0022---Nacos之Group分组方案
  6. 数据结构_C语言_实验一_线性结构 ——一元多项式求导
  7. 世界杯结束太快就像龙卷风,致意犹未尽的你
  8. Linux内核源代码分析——中断(一鞭一条痕)(下)
  9. Python灰度图像彩色化
  10. c++ static静态变量、静态函数
  11. 弹出式气泡,使用winAPI
  12. ic卡c语言程序,sle4442程序(ic卡程序,C语 - 控制/MCU - 电子发烧友网
  13. 聚集理论派+实践派大咖,与您一起剖析CI/CD的那些事儿 | 在线研讨会《如何实现集中管理、灵活高效的CI/CD》
  14. 基于jsp+mysql+Spring+SpringMVC+mybatis的大学生缴费系统
  15. 服务器上文件共享有哪些协议,Windows中的文件共享协议
  16. php读书笔记,读书笔记:《Modern PHP》
  17. 【Linux Centos6/7 Oracle11g数据库开启归档日志功能】
  18. Android Intent之传递带有对象的集合(Serializable传递对象和对象集合)
  19. Matlab实现 乘幂法反幂法
  20. matlab里面gtophat什么意思,MATLAB图象处理函数

热门文章

  1. android:src= @drawable/login_logo,android实现登录,Login姿势对不对?
  2. HashMap 的设置值,取值,遍历等
  3. MUI+H5手机上传照片 支持多图片上传和拍照上传
  4. linux文件常用权限,常用的更改Linux系统文件权限的命令
  5. 路面平整度采集和计算方法
  6. 创建docker容器时出现 docker: Error response from daemon, The container name is already in use by container
  7. Spring学习6之自动装配Bean02
  8. mybatis学习3之分页的实现
  9. python判断点在矩形内_Python测试点是否在矩形中
  10. c++冒泡排序代码_C/C++基础之冒泡排序