基于CXF开发webservice,想在webservice实现类中获得HttpServletRequest对象,用了几种方式,用@Resources标签或者@Context标签都不行。@Context标签下对象为null,@Resource标签虽然注入了org.apache.cxf.jaxws.context.WebServiceContextImpl了WebServiceContext 对象,但是该对象内部值为null,什么也取不到。
后面用了个笨办法,在web.xml中增加一个filter
<filter> <filter-name>ContextServlet</filter-name> <filter-class>xxx.filter.ContextServlet</filter-class> </filter> <filter-mapping> <filter-name>ContextServlet</filter-name> <url-pattern>/services/*</url-pattern> </filter-mapping>
在filter中访问HttpServletRequest,将需要获得的值保存在ThreadLocal中
public static ThreadLocal<String> path = new ThreadLocal<String>(); @Override public void destroy() { path.remove(); } @Override public void doFilter(ServletRequest arg0, ServletResponse arg1, FilterChain arg2) throws IOException, ServletException { HttpServletRequest request=(HttpServletRequest)arg0; String path = request.getContextPath(); basePath.set(path); arg2.doFilter(arg0, arg1); }
这样,在webservice的实现类中只要用 ContextServlet.path.get()就可以获得当前HttpServletRequest对中的变量。
相关推荐
**基于CXF的Web服务发布及访问** 在Java开发中,Apache CXF是一个广泛使用的开源框架,用于构建和实现Web服务。本教程将详细介绍如何利用CXF发布基于SOAP 1.2的Web服务,以及如何进行客户端调用。首先,我们需要...
在这个基于CXF的Web服务完整例子中,我们将深入探讨CXF的核心概念、配置、以及如何创建和调用Web服务。 1. **CXF框架介绍**:CXF,全称为"Code first eXtended Framework",最初由XFire项目发展而来,后与Apache ...
将CXF和Mybatis整合,可以创建一个基于Web服务的数据访问层。以下是整合步骤: 1. **创建服务接口**:定义一个Java接口,包含CRUD操作。 2. **创建服务实现**:实现该接口,并使用Mybatis的SqlSession执行SQL操作...
使用jdk1.6、cxf2.3和tomcat开发的一个关于验证码的webservice接口,主要实现对手机验证码的验证。
cxf WebService jar包
【CXF Webservice Demo】是基于Apache CXF框架的一个示例项目,用于演示如何使用CXF来创建和消费Web服务。Apache CXF是一个开源的Java框架,它允许开发者构建和集成Web服务,支持多种Web服务标准,如SOAP、RESTful ...
3. **CXF_HELLO_ObjectSpringService**: 这个项目可能结合了CXF和Spring框架,展示了如何在Spring容器中配置和管理Web服务。Spring框架可以用来管理服务的生命周期,依赖注入,并提供事务管理等高级功能。 4. **CXF...
【描述】中提到的"mybatis+spring+cxf webservice服务 项目框架代码例子"意味着这个压缩包包含了一个实际的项目示例,供开发者学习和参考。它可能包含了从数据库操作到Web服务接口实现的完整流程,帮助开发者理解...
CXF工具类是CXF框架的一部分,提供了一系列方便实用的方法,帮助开发者在处理与Web服务相关的任务时提高效率。 1. **Web服务基础** - **SOAP(Simple Object Access Protocol)**:是一种基于XML的消息传递协议,...
实战Web+Service+with+CXF webservice快速入门 webservice快速入门
总结起来,"CXF WebService带有拦截器"的实践是Web服务开发中的一个重要方面,它允许我们在不侵入核心业务逻辑的情况下,增加诸如权限控制这样的安全特性。通过"AuthFilter_Service"和"AuthFilter_Client",我们可以...
这个项目对于初学者来说,是一个很好的实践案例,可以帮助他们理解如何在实际环境中集成Maven、CXF以及两种不同类型的数据库,同时也展示了如何使用Java来开发和部署Web服务。对于有经验的开发者,这样的项目可以...
在CXF Webservice中集成Spring,可以方便地管理服务组件,实现服务的生命周期管理。Spring容器负责初始化、配置和管理CXF服务,使得服务的创建和销毁更加便捷,同时也简化了代码的编写。 2. **集成WSS4J**: ...
在IT行业中,Web服务是应用程序之间进行通信的一种方式,而CXF是一个开源框架,它使得构建和消费Web服务变得更为简单。Spring框架以其强大的依赖注入和面向切面编程能力,与CXF结合可以提供一种优雅的方式实现Web...
### 基于CXF的WebService接口开发及调用步骤详解 #### 一、概述 在当前企业级应用开发中,服务化与微服务架构逐渐成为主流趋势,而WebService作为一种跨语言、跨平台的服务交互方式,在众多场景下仍然发挥着重要...
在开发过程中,可以通过Maven项目管理工具来添加CXF依赖,方便地管理WebService项目所需的库文件。CXF支持多种数据绑定方式,如JAXB 2.0、XMLBeans、Castor等,同时也支持不同的消息格式如XML、JSON。 Web服务描述...
在服务端开发中,首先,我们需要在Spring配置文件中定义CXF的Servlet,指定其监听的URL和处理的WS-DSL文件。接着,创建一个接口定义Web服务的合同,然后实现这个接口。服务端的实现类可以被Spring管理,利用注解如`@...
在这个主题中,我们将深入探讨CXF WebService所需的最小jar包集合,以及如何利用这些库来开发Web服务。 首先,CXF的核心功能依赖于一系列的jar包,这些jar包包含了处理不同协议、数据绑定、WS-Security等关键组件的...
C#动态调用CXF WEBSERVICE框架共通类。
在提供的压缩包文件“cxf_webservice”中,可能包含以下内容: - 服务端代码:展示如何使用CXF创建和部署Web服务。 - 客户端代码:演示Android应用如何调用Web服务并处理返回的数据。 - WSDL文件:服务的接口定义,...