`
worina8080
  • 浏览: 14914 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

CXF整合struts遇到的.js.css等文件被拦截

阅读更多
    整合CXF和struts时,出现一个js和css文件的请求被CXFservlet拦截的问题,导致页面无法显示。

<!-- CXFservlet 配置-->
<servlet>  
        <servlet-name>CXFServlet</servlet-name>  
        <servlet-class>org.apache.cxf.transport.servlet.CXFServlet</servlet-class>  
        <load-on-startup>1</load-on-startup>  
    </servlet>  
  
  <servlet-mapping>  
        <servlet-name>CXFServlet</servlet-name>  
        <url-pattern>/*</url-pattern>  
    </servlet-mapping>

<!--spring 配置 -->
	<context-param>
		<param-name>contextConfigLocation</param-name>
		<param-value>
        	classpath*:applicationContext.xml
        </param-value>
	</context-param>
	
	<listener>
		<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
	</listener>
	 
	

	
	<filter>
		<filter-name>encodingFilter</filter-name>
		<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
		<init-param>
			<param-name>encoding</param-name>
			<param-value>UTF-8</param-value>
		</init-param>
		<init-param>
			<param-name>forceEncoding</param-name>
			<param-value>true</param-value>
		</init-param>
	</filter>
<!-- struts配置 -->
	<filter>
		<filter-name>struts-cleanup</filter-name>
		<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareFilter</filter-class>
	</filter>
	
	<filter>
		<filter-name>struts</filter-name>
		<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsExecuteFilter</filter-class>
	</filter>
	<filter-mapping>
		<filter-name>struts-cleanup</filter-name>
		<url-pattern>/*</url-pattern>
	</filter-mapping>

	<filter-mapping>
		<filter-name>struts</filter-name>
		<url-pattern>/*</url-pattern>
	</filter-mapping>
	<filter-mapping>
		<filter-name>encodingFilter</filter-name>
		<url-pattern>/*</url-pattern>
	</filter-mapping>

	
	
	
	
	 

	<welcome-file-list>
		<welcome-file>index.jsp</welcome-file>
	</welcome-file-list>

</web-app>

webservice配置
<jaxws:endpoint id="memcached" implementor="#memcachedWebService" address="/memcached" ></jaxws:endpoint>


以上配置webservice是可以正常调用,struts的.action请求是可以访问,但是页面显示不正常,主要原因是.js以及css文件无法显示,请求的js和css请求被当作是webservice请求拦截了

     更改:
web.xml
	<servlet>  
        <servlet-name>CXFServlet</servlet-name>  
        <servlet-class>org.apache.cxf.transport.servlet.CXFServlet</servlet-class>  
        <load-on-startup>1</load-on-startup>  
    </servlet>  
  
    <servlet-mapping>  
        <servlet-name>CXFServlet</servlet-name>  
        <url-pattern>/ws/*</url-pattern>  
    </servlet-mapping>  

struts.xml中
添加

	<constant name="struts.action.excludePattern" value="/console/*"/>

访问webservice的url变为localhost:8080/xxx/ws/login.wsdl
url处多了一个/ws
分享到:
评论

相关推荐

    零配置spring 整合cxf、struts2

    我们可以通过Spring的`struts-plugin.xml`配置文件或者Struts2的`struts.xml`配置文件中的`&lt;interceptors&gt;`元素添加Spring拦截器,从而实现在Struts2动作类中注入Spring管理的bean。 在实际操作中,"CXFServer"可能...

    cxf.xml,cxf-servlet.xml,cxf-extension-soap.xml

    &lt;import resource="classpath:META-INF/cxf/cxf.xml"/&gt; &lt;import resource="classpath:META-INF/cxf/cxf-extension-soap.xml"/&gt; &lt;import resource="classpath:META-INF/cxf/cxf-servlet.xml"/&gt;

    cxf的jar包.rar

    利用Apache CXF开发webservice接口需要用到的jar集合 cxf-core-3.0.15.jar cxf-rt-bindings-soap-3.0.15.jar cxf-rt-bindings-xml-3.0.15.jar cxf-rt-databinding-jaxb-3.0.15.jar cxf-rt-frontend-jaxws-3.0.15.jar...

    cxf.apache.org/schemas/(jaxrs.xsd、jaxrs.xsd、core.xsd)文件下载

    Apache CXF是一个开源的服务框架,它支持多种Web服务标准,包括JAX-WS和JAX-RS。...通过理解和正确使用`jaxrs.xsd`等XSD文件,开发者可以在Spring环境中更高效地配置和管理CXF服务,从而提升开发体验和代码质量。

    cxf依赖jar包.zip

    解压后,你会看到一系列的JAR文件,这些文件包含了许多CXF的核心组件和依赖项,如Apache CXF的运行时API、SPI、WS-*协议实现等。在Java Web项目中,通常我们会把这些JAR文件放入项目的`WEB-INF/lib`目录下,或者在...

    org.apache.cxf.spring.remoting.Jsr181HandlerMapping.jar

    org.apache.cxf.spring.remoting.Jsr181HandlerMapping.jar

    Struts2升级到2.5.30,问题解决及过程记录

    1. **依赖库的更新**:升级Struts2的同时,还需要检查和更新所有依赖的库,例如在提供的文件列表中,我们看到了freemarker、log4j、javassist、commons-collections等。确保这些库与Struts2的新版本兼容,避免出现...

    cxf-manifest.jar

    webservice CXF 报错:java.lang.NoClassDefFoundError: org/apache/neethi/builders/AssertionBuilder 需要用到此jar文件 通过apache官网可获得。 文件位置\apache-cxf-2.7.13\lib

    spring-cxf 日志记录配置.zip

    - 对于SLF4J,可以在配置文件中定制日期格式、线程名、日志级别等信息的输出格式。 - 对于Log4j,可以在`log4j.properties`中配置`PatternLayout`来定义输出格式。 6. **日志级别管理**: - 在开发阶段,通常会...

    cxf框架包 apache-cxf-3.4.3.tar.gz

    在本案例中,我们讨论的是"apache-cxf-3.4.3.tar.gz",这是Apache CXF 3.4.3版本的压缩包,通常包含了CXF框架的所有组件和必要的库文件。 **1. CXF框架介绍** Apache CXF是一个全面的服务开发框架,它的全称是...

    cxf-2.7.18. jar及其依赖包

    描述中提到的“**可解决客户端调用提示source 1.5已过时问题**”是指在使用较早的Java源代码版本(如Java 1.5)编译或运行时,可能会遇到警告或错误,因为这些版本已经被Java的新版本所替代。CXF 2.7.18可能已经更新...

    struts2.3.24升级2.5.26.zip

    升级前,检查所有依赖的库和插件,确保它们与新版本的Struts2兼容,因为某些旧的API可能会被弃用或改变。 2. **升级指南**:查阅官方的升级指南,了解详细的步骤和变更。这将帮助你了解从2.3.24到2.5.26的具体迁移...

    cxf-jar包.rar

    这个压缩包包含的子文件都是CXF框架的重要组成部分,让我们一一深入探讨这些组件的作用和相关知识点。 1. **woodstox-core-asl-4.4.1.jar**: Woodstox是一个高性能的XML处理库,它提供了对StAX(Streaming API for ...

    CXF之二(上传及下载附件)

    本篇文章将深入探讨如何使用CXF实现文件的上传和下载功能,这对于任何涉及文件交互的应用程序都是至关重要的。 在CXF中,实现文件上传通常涉及到创建一个Web服务接口,该接口接受Multipart请求,这允许用户发送多个...

    13.为CXF与Spring整合发布WebService添加拦截器进行权限控制

    当我们需要在CXF和Spring整合的基础上发布Web服务,并对权限进行控制时,可以利用拦截器来实现这一目标。本文将详细介绍如何为CXF与Spring整合发布WebService添加拦截器进行权限控制。 首先,我们需要理解CXF拦截器...

    apache-cxf-2.1.4.tar.zip webservice

    这个"apache-cxf-2.1.4.tar.zip webservice"文件包含了一个特定版本(2.1.4)的CXF框架,用于创建和消费Web服务。让我们深入了解一下Apache CXF的核心功能和它在Web服务中的应用。 1. **Apache CXF简介**:Apache ...

    CXF2.6+SPRING3.0+STRUTS2.3例子含Jar包

    **Struts2** 是一个基于MVC设计模式的Java Web框架,Struts2.3 提供了强大的动作映射、拦截器和结果类型等特性,简化了Web应用的开发。它与Spring的结合使得可以利用Spring的依赖注入来管理Struts2中的Action和业务...

    apache-cxf-3.3.6.zip

    2. 插件系统:CXF拥有强大的插件架构,可以扩展和定制功能,如添加自定义消息处理器、拦截器等。 3. 安全性:提供安全功能,如基本认证、OAuth、SSL/TLS等,保障服务的安全通信。 4. 支持多种传输协议:包括HTTP、...

    apache-cxf-2.4.6.zip

    在"apache-cxf-2.4.6.zip"压缩包内,你会找到CXF的库文件、文档、示例代码和配置文件等。通过解压并导入到你的项目中,你可以开始利用这些组件构建和部署你的Web服务。不过,值得注意的是,由于这是较早的版本,可能...

Global site tag (gtag.js) - Google Analytics