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>