我正在使用 XPage 开发移动应用程序。我试图通过在设备上本地缓存资源来加快速度。使用扩展库中的控件这不是一个简单的任务(例如,我在某些页面上有预先输入)。
因此,我决定使用 jQuery Mobile 构建一个并行接口(interface),以便能够对两种方法进行基准测试。
在这样做时,我想处理 jQuery Mobile XPage 的资源,以便我只加载所需的资源,即避免加载 dojo(例如,此页面上有一个简短的指南: http://dpastov.blogspot.dk/2011/01/trying-to-get-full-control-over-xpage.html )。我发现的解决方案的问题在于它们的应用范围很广。例如。设置
xsp.client.script.libraries=none
xsp.properties 中的 将对数据库中的所有 XPage 生效(包括应用程序的 Ext.lib 版本)。按照“XPage 可移植命令指南”中的指南,我尝试将单个 XPage(jQuery Mobile 的)的属性设置为:
<?xml version="1.0" encoding="UTF-8"?>
<xp:view xmlns:xp="http://www.ibm.com/xsp/core" disableTheme="true" createForm="false">
<xp:this.properties>
<xp:parameter name="xsp.client.script.libraries" value="none">
</xp:parameter>
</xp:this.properties>
不幸的是,这似乎不起作用。
我知道,我可以将第二个 XPage 放在单独的数据库中,但是,我想避免这样做,因为这会引发其他问题。
有什么想法吗?
/约翰
最佳答案
您可以通过添加禁用dojo库
facesContext.getRequestParameters().setJsLibrary(0);
到 XPage 的 beforeRenderResponse 或 beforePageLoad 事件。
关于mobile - 对于单个 XPage,xsp.client.script.libraries=none,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12894956/