`

运营系统升级故障排查

    博客分类:
  • JAVA
阅读更多
      公司的运营管理系统是用SSH开发,经过考虑目前新开发的运营管理功能改为gwt和spring来开发,所以就必须新搭建一个开发框架,并且能与原先的框架集成在一起。经过两个星期的努力,框架基本是成型了,并且也开始了管理功能的开发,使用gwt开发,总体上可以说比以前的开发快多了,同时代码也比较好维护。
      由于旧运营管理系统设计的菜单是以连接的形式,所以设想是以一个菜单为一个gwt页面,在集成系统的初期就发现,把新的功能集成到旧系统里面,gwt的rpc请求都错误,报编码错误,经过查询才发现,原来旧项目的web.xml配置了编码filter(如配置一),真狠这个过滤器做的动作就是,把所有请求和返回的编码都设置成GBK(如配置二),而现在新开发的工程使用的是utf-8编码,在不明原先设计的用意下,只能新加一个gwt filter,只要是gwt的请求都设置回utf-8。

      配置一
	<filter>
		<filter-name>encodefilter</filter-name>
		<filter-class>com.demo.EncodingFilter</filter-class>
		<init-param>
			<param-name>encoding</param-name>
			<param-value>GBK</param-value>
		</init-param>
	</filter>
	<filter-mapping>
		<filter-name>encodefilter</filter-name>
		<url-pattern>/*</url-pattern>
	</filter-mapping>


      配置二
	<filter>
		<filter-name>gwtEncodefilter</filter-name>
		<filter-class>com.demo.GWTEncodingFilter</filter-class>
		<init-param>
			<param-name>encoding</param-name>
			<param-value>UTF-8</param-value>
		</init-param>
	</filter>
	<filter-mapping>
		<filter-name>gwtEncodefilter</filter-name>
		<url-pattern>/gwt/rpc/*</url-pattern>
	</filter-mapping>


      原本应该没什么问题了,这两天一上线就出现问题,第一个问题是对使用ajax post请求的页面都乱码,第二个问题是弹出用户没有权限的问题;先看第一问题,既然测试环境和生产环境都是Linux,并且在测试环境测试是不会出现乱码的,第一判断是两个系统的编码问题,所以看了看生产的编码居然是zh_CN.GB18030,而测试环境是zh_CN.utf-8,这么这还跟系统的编码有关呢,发现web.xml,有配置一个sitemesh的过滤链(如配置三),初步怀疑是这个问题,这个得debug一下才行,经过debug发现有真的就是这个过滤器的问题,好了还是得加一个过滤器来拦截,避免再次被转码(如配置四),这次是直接替换该过滤链,来达到对gwt的请求忽略处理。

      配置三
	<filter>
		<filter-name>sitemesh</filter-name>
		<filter-class>com.opensymphony.module.sitemesh.filter.PageFilter</filter-class>
	</filter>
	<filter-mapping>
		<filter-name>sitemesh</filter-name>
		<url-pattern>/*</url-pattern>
	</filter-mapping>


      配置四
	<filter>
		<filter-name>sitemesh</filter-name>
		<filter-class>com.demo.MyPageFilter</filter-class>
		<init-param>
			<param-name>GWTEncoding</param-name>
			<param-value>UTF-8</param-value>
		</init-param>
		<init-param>
			<param-name>GWTURL</param-name>
			<param-value>^/gwt/.*$|^.*/[tT]emplate.*html$</param-value>
		</init-param>
	</filter>
	<filter-mapping>
		<filter-name>sitemesh</filter-name>
		<url-pattern>/*</url-pattern>
	</filter-mapping>


      最后一个问题,由于在测试环境都是直接用超级管理员用户去测试的,所以没有发现问题,在生产才暴露出来,看来也是测试人员的一个疏忽,查看后发现居然又有一个权限的过滤器来对服务请求做权限处理,看了代码才觉得这个过滤器的代码很有意思,直接判断是不是.do结尾的服务才判断,其它直接返回没有权限,这会就很快就按照前两次的经验很快就解决了问题。
      重新升级了系统,终于成功了,这回总算是集成成功了!
0
0
分享到:
评论
2 楼 crane.ding 2010-07-18  
其实过滤链还是有它一定的优势 但就是以前设计的同事 做的过滤链很不好 什么都没做就直接把请求包和返回包的编码强行设置为GBK 还有PageFilter这样一个过滤器 居然还依赖的系统的编码 把utf-8编码的页面请求都给解析成乱码了
1 楼 mercyblitz 2010-07-16  
我现在给公司系统设计的时候,都不建议使用Filter参数HardCode在web.xml文件中。而是使用启动参数,这样更灵活,比如
-Dfile.encoding=UTF-8。

代码利用System#getProperty("file.encoding")即可;

相关推荐

    (完整版)软件系统现场故障排除响应流程 (2).docx

    《软件系统现场故障排除响应流程详解》 在IT行业中,软件系统的稳定运行是业务正常进行的基础,而面对突发的故障,快速、有效地响应并解决至关重要。本文将详细解析"(完整版)软件系统现场故障排除响应流程 (2).docx...

    GT-N7100 故障排除

    2. **故障排查步骤** - **软件故障**:首先,确认手机系统版本是否最新,通过三星官方更新工具进行系统升级。如果问题持续,尝试在安全模式下启动手机,以判断是否为第三方应用引起的问题。 - **硬件故障**:若...

    华为呼叫中心 IPCC 系统故障处理方法

    6. 客户端测试:在排除系统问题后,通过模拟用户操作来验证修复效果。 总的来说,处理华为呼叫中心IPCC系统的故障需要全面了解系统架构,熟悉各个组件的功能和相互关系,并具备一定的故障排查和问题定位能力。同时...

    浅谈城市轨道交通屏蔽门系统的故障处理.doc

    故障排查和维修工作通常需要结合自动模式、测试模式和隔离模式,确保故障门单元不影响整个系统的正常运行。 处理屏蔽门系统故障时,首先需要定位故障源,这可能涉及到现场观察、设备检测和数据分析。对于机械故障,...

    卫星定位系统升级改造报告.doc

    为了改善这一状况,新飞电子公司派出了两位技术专家协助我们进行系统升级和故障排查。 在3月10日的升级维护后,实现了以下显著改进: 1. **车辆上线率提升**:之前存在频繁掉线的问题,升级后所有车辆均能保持在线...

    行业-电子政务-电力通信系统故障诊断方法及装置.zip

    3. 故障排除:根据分析结果,采取相应的修复措施,如更换故障设备、调整参数设置、升级软件或修复物理连接。 4. 验证恢复:修复后,通过测试和监控确认系统恢复正常,并观察一段时间以确保故障不会再次出现。 5. ...

    服务器故障应急预案.doc

    服务器硬件故障时,备用服务器应随时准备切换,故障排查和排除参照附件1。而软件系统故障,则需依靠定期备份,快速恢复系统,故障排除参考附件2。 附件1详细介绍了服务器硬件故障的预防与排除,建议采用双机配置,...

    应用系统软件安全服务方案.docx

    包括升级管理、故障恢复机制、系统性能优化、数据库管理、灾难恢复计划、咨询服务、系统例查、业务适应性调整、功能扩展以及高效的维护与故障排除服务,旨在确保互联网应用系统的稳定、安全和高效运营。

    罐区仪表自动化控制系统优化升级改造及运行总结.pdf

    在实施改造过程中,注重了系统的稳定性和可维护性,采用模块化设计,便于后期的故障排查和系统扩展。此外,还对操作人员进行了充分的培训,确保他们能熟练掌握新系统的操作和维护,以实现系统的高效运行。 改造后的...

    城轨车辆火灾报警系统的分析与故障处理.pdf

    本文主要探讨了火灾综合报警系统的应用原理以及故障排查方法。 系统组成主要包括火灾报警主机和温烟复合探测器。火灾报警主机基于STM32微处理器,由多个单元构成,如中央处理单元、显示单元、火警输出继电器控制...

    船舶电气自动化发展及故障排除对策分析.pdf

    1. 结合先进技术,推动设备与系统的转型升级,以提高船舶电气自动化的整体水平。 2. 实现设备的精确监测和创新,确保船舶在前中后期运营过程中的准确监督。 3. 制定合理的排查规划和方法,提高故障检测的准确性,...

    软件系统应急预案及快速恢复方案.docx

    - **编写目的**:预案的目的是为了解决突发的系统故障,降低其对企业运营的影响,通过预先设定的应急措施快速恢复服务,保护公司数据安全,减少客户损失。 - **适用范围**:预案适用于所有依赖于软件系统的互联网...

    软件系统售后服务及运营维护方案.docx

    《软件系统售后服务及运营维护方案》 在当今的互联网时代,软件系统已经成为各行各业不可或缺的工具。为了确保软件系统的稳定运行和高效服务,一套完善的售后服务及运营维护方案至关重要。本方案详细阐述了从软件...

    电脑故障分析大全 电脑故障分析大全

    《电脑故障分析大全》是一部全面涵盖计算机故障诊断与修复的宝贵资源,旨在帮助用户解决日常使用中的各种技术问题。这份资料详细介绍了计算机可能出现的各种故障,包括硬件和软件层面,为读者提供了一站式的解决方案...

    医院计算机网络信息管理系统故障应急预案(技术保障实施细则).doc

    《医院计算机网络信息管理系统故障应急预案(技术保障实施细则)》文档主要阐述...此预案体现了医院对信息化系统的高度重视,通过科学的管理和技术手段,确保在系统故障时能快速恢复服务,保障患者权益和医院运营的稳定。

    船舶电气自动化的发展及其设备故障的排除 (2).pdf

    尽管存在诸多挑战,但自动化技术的发展为船舶电气的安全、高效提供了可靠的保障,同时也显示出需要进一步提升系统稳定性和排除设备故障的必要性。 文章提出了对船舶电气自动化系统进行深入研究和应用的必要性,通过...

    电力系统配电自动化的常见故障和处理技术.rar

    电力系统配电自动化是现代电力行业中不可或缺的一部分,它旨在提高供电可靠性和效率,减少人工干预,降低运营成本。本文将深入探讨配电自动化中的常见故障及相应的处理技术。 一、配电自动化系统的构成与功能 配电...

    110kV变电站综合自动化系统升级改造中需要注意的几个环节.rar

    9. 后期运维与升级:建立完善的运维体系,包括定期维护、故障排查和系统优化。同时,预留未来扩展和升级的空间,以便随着技术进步持续改进。 10. 法规与标准遵循:在整个升级改造过程中,需严格遵守国家相关的法规...

    智能停车场系统故障维护常识

    智能停车场系统是一种结合了现代信息技术和自动化技术的智能管理平台,能够自动识别车辆信息、记录出入时间并进行费用结算等功能,有效提高了停车场的运营效率和服务质量。随着技术的发展,智能停车场系统已经广泛...

Global site tag (gtag.js) - Google Analytics