tomatoboryj 2008-10-09
由于Struts2 使用DOJO0.43(好像是哈)
在使用<s:head theme=ajax/>引入支持的时候。js的读取量很大。
经常的相应时间到10s-20s左右。
并且其JS的调用是由一个拦截器提供的(/struts/*),并行化效果很差。导致js读取时间过长。
为了解决这个问题,首先要将 Jar 文件 struts-core中static下边的数据解压到webroot下,变为本地引用。
而后,调整目录,比如建立个 js/dojo目录。
在从源代码的网页中提取调用实际使用的js,变为你的目录
如:
<script type="text/javascript">
// Dojo configuration
djConfig = {
baseRelativePath: "struts/dojo", <<:::::::::::::::就是要改这里。
isDebug: false,
bindEncoding: "UTF-8"
};
</script>
<script type="text/javascript" src="struts/dojo/dojo.js"></script> <<:::::::::::::::::::::::::::::还有这里
<script type="text/javascript">
dojo.require("dojo.io.BrowserIO");
dojo.require("dojo.event.topic");
dojo.hostenv.setModulePrefix('struts', 'struts');
dojo.widget.manager.registerWidgetPackage('struts.widget');
dojo.require("struts.widget.Bind");
dojo.require("struts.widget.BindDiv");
dojo.require("struts.widget.BindAnchor");
dojo.require("struts.widget.ComboBox");
dojo.require("struts.widget.StrutsTimePicker")
</script>