`
rocket
  • 浏览: 92126 次
  • 性别: Icon_minigender_1
  • 来自: 金城
社区版块
存档分类
最新评论

关于workshop(原nitrox m7)的utf-8中文乱码问题解决

阅读更多
bea workshop studio(原nitrox m7)确实是个好东西,但是我再使用它的jsp编辑器打开含有utf-8的中文jsp页面时其中的中文是乱码,而且你修改有乱码的页面后,再用别的编辑器打开发现原来正常的中文也都变成乱码了。
为了解决问题我在google和baidu的搜索了好久没有找到方法,于是我到m7的论坛(http://forums.m7.com/forum/index.php)看看有没有解决方法。
终于我找到这样一个记录http://forums.m7.com/forum/viewtopic.php?t=463&start=0&postdays=0&postorder=asc&highlight=encoding
其中m7 support给出的解释是这样的:
NitroX looks for a meta tag to determin the charset that should be used to encode the page file. The page directive is usually used to determin the charset used by the server to serve the page to the browser. These 2 are not the same (for good reasons). 

So, 
try something like: 
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 

M7 Support

所以可以知道,workshop的jsp编辑器在打开jsp页面时首先是从meta的标签中读取页面的编码的。
于是,我先用其它的编辑器(我用的是dw8)打开有问题的jsp页面,然后在其中添加meta标签
<!---->
<!---->DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  
<head>
    
<title>下部框架页title>
    
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" > 
    
<meta http-equiv="pragma" content="no-cache">
    
<meta http-equiv="cache-control" content="no-cache">
    
<meta http-equiv="expires" content="0">
。。。。。。。。。。

然后再用workshop的编辑器打开,发现中文显示正常了,本以为这样问题就结束了
但是当我修改另外一个页面后,用workshop打开发现依然是乱码
<!---->
<!---->
<!---->


<!---->DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html:html lang="true">
  
<head>
  
    
<html:base />   
    
    
<title>desktop.jsptitle>
    
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" > 
    
<meta http-equiv="pragma" content="no-cache">
    
<meta http-equiv="cache-control" content="no-cache">
    
<meta http-equiv="expires" content="0">    
。。。。。。。。。。。。

这与前一个页面的不同之处在于增加了struts标签,我在反复测试后发现把 <html:base> 这个标签删除后中文就正常了,但是 <html:base> 这个标签是必须的,于是我把 <html:base> 这个标签放置在meta后面
<!---->
<!---->
<!---->


<!---->DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html:html lang="true">
  
<head>
    
<title>desktop.jsptitle>
    
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" > 
    
<meta http-equiv="pragma" content="no-cache">
    
<meta http-equiv="cache-control" content="no-cache">
    
<meta http-equiv="expires" content="0">    
    
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
    
<meta http-equiv="description" content="This is my page">
    
<common:validate/>
    
<html:base />
  
head>
而且经过测试我发现,不仅仅是struts标签,在meta前面加入任何标签都将导致页面的中文乱码。
因此我认为workshop的jsp editer在打开文件时首先要读取jsp页面的meta标签以确定编码,如果没有指定字符集的meta标签或者在该meta标签前增加其它方法标签将会导致编辑器读取编码不正常,而使得编辑器以默认的gb2312字符集打开文件导致乱码
总结workshop(原nitrox m7)的utf-8中文乱码问题的解决步骤应该是:
1、首先确定项目的编码是uft-8,这样保证默认的jsp页面属性是utf-8
2、在jsp页面中添加 <meta http-equiv="Content-Type" content="text/html; charset=utf-8">,注意如果已经含有中文并且是乱码就必须先要用其它可以正常显示的编辑器打开添加后并保存
3、当发现打开依然是乱码时就要检查是不是在 <meta http-equiv="Content-Type" content="text/html; charset=utf-8">前还有什么需要逻辑处理的标签影响的workshop对jsp页面的读取。

这个问题花费了我两个礼拜的时间希望我的方法能够给同样和我一样在为这个问题烦恼的朋友有所帮助
分享到:
评论

相关推荐

    Bea WorkShop Studio (NitroX M7) 系列注册机

    只要把注册表的HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft下的关于1.4的jre和jvm的路径信息改为1.5的jdk的即可。 如果只能用workshop for struts, 不能用HIBERNATE 和JSF 你只要注册成WorkShop Studio, 所有的功能都...

    NitroX3.0.465注册机

    NitroX3.0.465 下载地址:http://www.m7.com/downloadNitroX.do 注册的时候要断开网络连接,把Splash.dll和NitroX3KG.jar放到原来Splash.dll的目录下,运行java -jar NitroX3KG.jar,选择要注册的产品类型,我们...

    让Workshop for WebLogic 10gR3支持tomcat 6

    而Workshop for WebLogic 10gR3(10.3版本)是Oracle提供的一款集成开发环境(IDE),它专为开发、测试和调试在WebLogic Server上运行的应用程序而设计。然而,原始的Workshop可能不直接支持Tomcat 6,因为Tomcat是...

    NitroX系列3.0的注册机

    NitroX系列3.0的注册机

    wolfSSL-Manual.pdf

    wolfSSL支持多种硬件加速,例如AES-NI、STM32F2、Cavium NITROX等。用户可以根据需要选择合适的硬件加速。 12. wolfSSL的SSL检查(嗅探器) wolfSSL支持SSL检查(嗅探器),能够嗅探和解密SSL流量。 13. wolfSSL的...

    BEA Workshop Studio

    在注册前,最好将以前的NitroX卸载掉,同时最好将(C:\Documents and Settings\All Users\Application Data)All User 下面的 N0001 目录也删除。

    JSP和JSF合并 打造完美的Web层应用

    JSF还受到众多开发工具的支持,例如免费的Sun Java Studio Creator 2和Oracle JDeveloper 10g,以及商业工具如BEA Workshop(原M7 NitroX)、Exadel、MyEclipse等Eclipse插件,以及IBM的Rational Application ...

    Nitrox:Subnautica游戏的开源,多人游戏修改

    亚硝酸盐 游戏的开源多人修改。 常问问题 目前的状态是什么? 该mod处于开发的早期阶段。 但是,为社区迭代奠定了坚实的基础。 以下里程碑已经完成: ... 您可以在或Nitrox网站上找到该Mod。 问题/错误

    Gas Blender-开源

    Gas Blender 是一个 Python 程序,可帮助潜水员或气体混合器计算在技术潜水(Nitrox / Trimix)中混合气体的正确程序。

    游戏Dyson Sphere Program的多人模式-.NET开发

    星云游戏Dyson Sphere Program的...常见问题解答当前状态是什么? 该mod处于开发的早期阶段,并且仍处于概念验证状态。 随着项目的发展,将进行重大的重构。 这是完成的和仍然需要完成的操作的简短列表。 使项目开源

    基于MyEclipse的职工考勤系统设计

    M7的NitroX是专为加速Java Web应用开发而设计的工具,它提供了三个不同版本,分别对应不同的价格点和功能。基础版主要针对JSP调试,年度订阅费用为299美元。中间版本增加了对Struts应用的支持,需额外支付200美元。...

    Cavium推出高性能安全WLAN网关参考设计

    该设计集成了基于NITROX Soho处理器的高性能MIPS32和108Mbps Airgo Networks的下一代True MIMO无线芯片组。参考设计包括硬件和软件,可为OEM和ODM厂商快速构建增强MIMO 802.11、108Mbps无线SOHO和SME宽带网关。 ...

    Mini Version Program Guide of Cavium

    而NITROX®则是针对安全处理加速的一系列协处理器产品。 接下来,内容中出现了MIPS®、MIPS64®和MIPS32®,这些是属于 MIPS Technologies 的处理器架构。MIPS架构被设计为一种高性能的RISC(精简指令集计算机)...

    breathcan:计算在休闲潜水中从给定深度上升需要多少空气

    【呼吸罐:计算休闲潜水中的空气消耗】 在休闲潜水领域,了解从特定深度上升到水面所需的空气量至关重要,这涉及到...通过理解项目的实现原理,我们可以学习到如何运用编程解决实际问题,并了解潜水安全的相关知识。

Global site tag (gtag.js) - Google Analytics