webservice获取HttpServletRequest方法
java发布webservice常用的CXF和axis2,业务上需要获取客户端请求头信息
首先CXF实现的webservice获取HttpServletRequest方法,注入jdk中WebServiceContext就可以直接获取
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;import javax.annotation.Resource;
import javax.jws.WebService;
import javax.servlet.http.HttpServletRequest;
import javax.xml.ws.BindingType;
import javax.xml.ws.WebServiceContext;
import javax.xml.ws.handler.MessageContext;
import javax.xml.ws.soap.SOAPBinding;
import java.util.Enumeration;@Component
@BindingType(SOAPBinding.SOAP12HTTP_BINDING)
@WebService(serviceName="MessagePackService", //对外发布的服务名targetNamespace="http://webservice.xxxxxxxxxxxxxxx.com/", //指定你想要的名称空间,通常使用使用包名反转endpointInterface="com.xxxxxxxxxxxxxxxx.webservice.MessagePackService")
@Slf4j
public class MessagePackServiceImpl implements MessagePackService {// 获取HttpServletRequest@Resourceprivate WebServiceContext webServiceContext;@Overridepublic String sayHello(String userName) {HttpServletRequest request = (HttpServletRequest) webServiceContext.getMessageContext().get(MessageContext.SERVLET_REQUEST);Enumeration<String> headerNames = request.getHeaderNames();System.out.println(headerNames);System.out.println(userName);return userName;}
}
axis2实现的webservice获取HttpServletRequest方法,需要引入axis2的MessageContext
import org.springframework.stereotype.Service;import javax.servlet.http.HttpServletRequest;
import org.apache.axis2.context.MessageContext;
import org.apache.axis2.transport.http.HTTPConstants;import java.util.Enumeration;@Service
public class MessagePackageImpl implements IMessagePackage {@Overridepublic String test(String collectionEntity) {MessageContext mc = MessageContext.getCurrentMessageContext();HttpServletRequest request = (HttpServletRequest)mc.getProperty(HTTPConstants.MC_HTTP_SERVLETREQUEST);Enumeration<String> headerNames = request.getHeaderNames();System.out.println(headerNames);return collectionEntity.toString();}
}
webservice获取HttpServletRequest方法相关推荐
- 转:Spring Boot 获取 HttpServletRequest 的方法
转自: Spring Boot 获取 HttpServletRequest 的方法 - 简书本文介绍 Spring Boot 2 获取 HttpServletRequest 的方法. 目录 概述 方法 ...
- java 获取service_Java service层获取HttpServletRequest工具类的方法
Java service层获取HttpServletRequest工具类的方法 大家都知道 能在Controller/action层获取HttpServletRequest,但是这里给大家备份的是从代 ...
- Java service层获取HttpServletRequest工具类的方法
大家都知道 能在Controller/action层获取HttpServletRequest ,但是这里给大家备份的是从代码内部service层获取HttpServletRequest工具类. 具体如 ...
- 获取HttpServletRequest几种方法
代码获取 先web.xml配置: <listener> <listener-class> org.springframework.web.context.request.Req ...
- androidclient和站点数据交互的实现(基于Http协议获取数据方法)
androidclient一般不直接訪问站点数据库,而是像浏览器一样发送get或者post请求.然后站点返回client能理解的数据格式,client解析这些数据.显示在界面上.经常使用的数据格式是x ...
- zend_soap做webservice的使用方法
zend_soap做webservice的使用方法 只用到zend_soap包中的Zend_Soap_Server,Zend_Soap_AutoDiscover和Zend_Soap_Client三个类 ...
- Struts2中获取HttpServletRequest,HttpSession等的几种方式
转自:http://www.kaifajie.cn/struts/8944.html package com.log;import java.io.IOException; import java.u ...
- 根据WebService地址展示方法列表、入参和返回值(解析wsdl)
项目源码:https://gitee.com/xuchuruo/parsing_wsdl(有些jar包Maven上无法下载) ------------------------------------- ...
- SpringBoot--Controller获取HttpServletRequest
原文网址:SpringBoot--Controller获取HttpServletRequest_IT利刃出鞘的博客-CSDN博客 简介 本文介绍SpringBoot如何在Controller中获取Ht ...
最新文章
- 2019厦门科技中学计算机特长,中考快讯 | 2019厦门市高中特长生招生学校名单出炉!...
- python根据时间和类型查找文件并将该文件复制到新的文件夹下
- 如何给微软提反馈建议以及bug
- kafka集群下载、启动、部署、测试
- python中的模块与类
- 从零开始学keras之多分类问题
- java的string类_Java中的String类笔记
- 对方删了你的微信,你列表依然有ta的存在,该不该也把ta删掉?
- mysql 中ak_数据库ak
- [转]Visual Studio 2010 MSDN 文件位置及安装注意事项
- tp3获取所有post_TP为什么后台接收不到POST的数据?
- SVN 使用hooks 自动更新到远程的web目录下
- history指令显示日期时间
- 奇妙生活-神奇的数字-1的故事
- linux虚拟内存设置为多少合适,虚拟内存怎么设置最好_虚拟内存设置多少合适
- 深度CTR之AFM:基于Attention网络的FM模型
- Eclipse 主题(Theme) 设置之程序员大牛必备的装逼神器
- 面试最后总会问到的开放性面试题
- Python中 -m pip install -U --force-reinstall pip 个人经验及解决办法
- FND_GLOBAL.CONC_REQUEST_ID = -1
热门文章
- 【机密计算标准解读】GB/T 机密计算通用框架(下)
- 东北大学计算机技术与科学排名,东北大学学科评估排名!附东大a类学科名单...
- 【毕业季|进击的技术er】作为一名老技术er,我有话想说
- java计算机毕业设计Vue和mysql智能图书管理系统MyBatis+系统+LW文档+源码+调试部署
- 【结构体——枚举——联合】
- 16_MySQL中的存储过程和触发器
- 2016蓝桥杯 凑算式
- Microsoft Project的RibbonXml VBA项目中不能使用带参数的过程
- windows server2016 服务器 生成典型操作票asp系统成功安装关键步骤
- Web安全-一句话木马