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

was缓存导致web.xml更改无效

阅读更多

在项目中经常遇见这样的问题:修改应用的配置文件web.xml后,无论重启应用还是重启WebSphere服务器,都不能重新加载web.xml,导致修改的内容无效

 

这个问题困扰了我好久,即使删除了${was安装目录}\IBM\WebSphere\AppServer\profiles\AppSrv01\下的temp和wstemp两个缓存文件夹下的临时文件,重启后还是无效。几经折腾,后来终于找到了问题所在——还是由于was缓存机制导致的。

 

找到${was安装目录}\AppServer\profiles\AppSrv01\config\cells\xxxNode01Cell\applications\${应用名}.ear\deployments\目录下,有一个与应用相同名称的缓存文件夹,删除或修改该文件夹的web.xml,重启was即可。

 

web.xml文件在websphere中会有两个地方存储

一个websphere的问题,首先声明一下我对websphere的目录结构并不是很了解,如果了解它的目录结构也就不会犯下这样的错误:
我们做应用项目需要发布到websphere上,项目经理让我为应用整体作一个限制,要求是:当系统跑批时间不允许用户登录系统;于是我想了良久发现用过滤器来做最合适不过了。开始准备了,写好过滤器进行配置后发现我的过滤器怎么样不生效,这样我就又调整了一下过滤器的位置,发现过滤器生效和了,可以由于应用本身使用了struts2,这样我的过滤器添加在struts2的过滤器之前就会出现问题:如果我的过滤器生效就不会再经过struts2的过滤器,在返回到页面的时候就会报为经过struts2过滤器的错误。之后一段时间我没有什么办法了,再经过一段时间的思考之后,我决定修改struts2的过滤器,起始也不知道从什么地方下手,于是开始看struts2的源代码,发现可以对其分发器Dispatch进行修改:就是在分发器分发之前判断如果时间是在跑批时间就让它跳转到固定页面(登录页面),经过修改终于成功了。我的调试服务器是tomcat5.5没有什么问题,昨天我们发布到websphere上后发现也是能够正常运行的。晚上我欣喜地回到了住处,突然有个同事打电话给我说他修改了web.xml中的相关时间的配置信息重启服务器后配置信息并没有生效。
     今天早晨我开始寻找问题,发现不管怎么修改它确实不会生效,经过和同事讨论:想法是websphere应该有缓存目录,找找看还有没有其他地方对web.xml有存储。于是使用find命令找web.xml文件,突然屏幕上出现两个前缀和我们的应用名称相同的web.xml文件,一个是我们预先知道目录(../AppServer/profiles/AppSrv01/installedApps/loopbackNode01Cell/),另一个是(config/cells/loopbackNode01Cell/application/)目录,为了描述方便我把前面的目录名称叫目录一,将后面的目录名称叫目录二。经过反复测试发现只有修改了目录二下面的web.xml文件并重启服务器后应用才会生效,目录一中的配置文件并不起作用,至此问题就解决了。

 

分享到:
评论
1 楼 蛋呢823 2016-03-11  
我也碰到这个问题,尝试了你这个方法也不行,自己摸索了一天,终于解决了!
罪魁祸首是WEB-INF目录下的web_merged.xml!!!
这个文件是你部署应用后,WAS自动生成的,WAS最终使用的应该是 web_merged.xml 这个文件。
---
所以,解决办法就是:
同步更改web_merged.xml (最好把config缓存目录下的web.xml/web_merged.xml一并更改了)并重启。

相关推荐

    ar.com.tadp.xml.rinzo

    1. **智能感知与代码补全**:插件能够自动识别XML元素并提供实时的标签补全,帮助开发者快速编写和修改XML代码,提高效率。 2. **格式化与排版**:具备XML文档的格式化能力,可以按照标准的XML规范对文档进行美化,...

    JSP里web.xml实现错误处理页面的制

    在Java Server Pages (JSP)应用中,web.xml配置文件扮演着至关重要的角色,它不仅定义了应用的基本结构,还负责处理各种运行时错误。本文将深入探讨如何通过web.xml来实现错误处理页面的定制,重点是404(Not Found...

    websphere_plugin-cfg.xml文件内容解析.pdf

    websphere_plugin-cfg.xml 文件内容解析 概览 websphere_plugin-cfg.xml 文件是 IBM WebSphere 服务器插件配置文件,用于定义插件的配置信息。该文件包含多个元素和属性,用于控制插件的行为和性能。了解该文件的...

    在web.xml中配置使404和500出现友好的界面

    ### 在web.xml中配置使404和500出现友好的界面 #### 知识点一:Web.xml概述 `web.xml`是Java Web应用中的一个核心配置文件,它用于定义应用程序的各种设置,包括Servlet映射、过滤器、监听器、会话超时以及错误...

    详细解读server.xml文件

    在Apache Tomcat服务器中,`server.xml`是核心配置文件,它定义了服务器的整体结构、端口设置、数据源、连接器以及其他关键组件。本文将深入解析`server.xml`文件中的各个元素及其重要性,帮助你更好地理解和管理你...

    Jax-ws Weblogic12c metro-default.xml not fund

    使用weblogic12c发布jax-ws的webservice服务端,启动时报错“metro-default.xml not fund ”百度了很长时间,方案都不能解决问题,后来goole了一下,参考了一个网页,非常管用,考虑到google有些同学没法访问,特地...

    解决android项目编译api-versions.xml错误问题

    下载解压,直接放入sdk/platform-tools下

    resolver_java_wsdl.jar

    java发布wsdl部署到was 8.5报错的时候引入的jar包,比如如下情况: Caused by: java.lang.NoClassDefFoundError: com.sun.org.apache.xml.internal.resolver.CatalogManager at ...

    MASM0001 metro-default.xml not found 解决办法

    使用weblogic12c发布jax-ws的webservice服务端,或升级weblogic到weblogic12.1.3,启动时报错“metro-default.xml not fund 错误的解决办法。

    The document was created with Spire.PDF for Java

    标题 "The document was created with Spire.PDF for Java" 提供了一个关键信息,即文档是使用Spire.PDF for Java工具创建或处理的。Spire.PDF for Java是一款由E-iceblue公司开发的PDF库,它允许Java开发者在应用...

    was-agent部署.doc

    - **修改文件权限**: 需要确保WAS代理能够访问和修改某些关键目录,如日志、配置和临时文件夹。这通常通过赋予777权限完成。 1. **脚本备份** - **was.sh**: 创建一个shell脚本来自动化备份过程,包括复制`server...

    Programming.Microsoft.SQL.Server.2000.with.XML

    At first, XML was a curiosity about which a few technological boffins were getting a little over-excited—an interesting technology looking for a place to happen. Gradually, however, developers came ...

    was与 web 服务器通信.doc

    - 性能优化:Web服务器可以缓存静态内容,减轻WAS的压力。 2. **Web服务器插件的作用** - Web服务器插件是连接Web服务器和WAS的关键组件,它负责转发HTTP请求到正确的WAS实例,并接收响应返回给客户端。 - 插件...

    Web.Client.Programming.with.Perl.Automating.Tasks.on.the.Web.pdf

    The World Wide Web has been credited with bringing the Internet to the masses. The Internet was previously the stomping ground of academics and a small, elite group of computer professionals, mostly...

    WAS9或WAS8配置HTTPS证书详细教程

    WebSphere Application Server (WAS) 是一款广泛应用的中间件,用于托管企业级应用程序。在现代网络环境中,为了确保数据传输的安全性,HTTPS 协议变得至关重要。本教程将详细介绍如何在 WAS 9 或 WAS 8 上配置 ...

    游览Wdf及was等文件\Was Tools beta 2.0.1.jar

    游览Wdf及was等文件\Was Tools beta 2.0.1.jar

    Websphere7.0修改JVM的内存设置

    通过修改server.xml进行JVM堆大小的设置: servel.xml文件路径:/IBM/WebSphere/AppServer/profiles/AppSrv01/config/cells/22Node01Cell/nodes/Node01/servers/server1 server.xml中修改或增加配置

Global site tag (gtag.js) - Google Analytics