目录
1.实验环境
2.一个预编译命令实例及weblogic.jspc参数说明
3.WebLogic编译总结
背景:每次全量更新环境后,访问系统时WL都要重新编译各Jsp,速度奇慢无比。故做此预编译实验,并对WL编译Jsp特性有了进一步了解。
一、实验环境:
WebLogic: V8.1.6
操作系统: WinXP SP3
二、一个预编译命令实例及weblogic.jspc参数说明
1.weblogic.xml
2.创建一个CMD:
weblogic.jspc参数解释:
-classpath:指定weblogic.jspc路径(我把这个cmd放在了domain目录下,所以路径如上)
-encoding GBK:编译字符集(实际编译中有些页面显示使用GB2312,还没研究怎么回事)
-verboseJspc:强制产生编译详细清单
-linenumbers:编译后的JAVA文件中显示JSP代码行号
-noImplicitTlds:禁止查找或注册implicit Tlds(implicit怎么翻译才好?)
(加上这个参数,如果某些tld没有在web.xml注册,而引用这个tld的JSP编译会失败).
-webapp %WEBAPP_PATH%:web应用所在路径
-d %OUTPUT_PATH%:生成的文件输出路径
-keepgenerated:保留生成的JAVA文件
-k:持续编译,即使有编译错误发生
三、WebLogic编译总结
经做各试验,得以下结论
1.WebLogic根据时间戳是否变化来决定Jsp是否需要重新编译;
a.内容不变,Jsp更新时间>其对应生成的Java文件更新时间 重新编译
b.内容变化,Jsp更新时间<其对应生成的Java文件更新时间 不重新编译
2.pageCheckSeconds设置为-1(永不重新检验)时,WL服务重新启动后仅校验一次(规则同第1条)。之后Jsp无论怎样变化,WL不再重新编译。