【问题标题】:How to add a Script Library to XPage Custom Java control如何将脚本库添加到 XPage 自定义 Java 控件
【发布时间】:2013-03-27 15:53:37
【问题描述】:

我正在尝试按照 IBM (LINK) 上的指南在 XPage 中开发自己的 Java 自定义控件。

一切正常,但现在我想做一些我想使用 jQuery 库的客户端 JavaScript 事情。在 XPage 中包含 jQuery.js 并不是什么大问题,但我想将我的控件打包到一个库中,以便我们公司的每个开发人员都可以使用它。

所以我的问题是如何将 JavaScript 集成到控件中,这样使用它的人就不必在 Notes 应用程序中手动实现 JavaScript。

当然,我可以将其放入渲染中:

writer.startElement("script", null);
writer.writeAttribute("type", "text/javascript", null);
writer.writeText(JQuery-js-content, null);
writer.endElement("script");

但是当用户打开一个包含该控件的 XPage 时,服务器必须始终呈现它。

无法从 Web 或服务器加载 jQuery(防火墙)。

每当开发人员从面板中拖动组件时,我正在寻找的解决方案将 jQuery 添加到 Notes 应用程序中。

更新:

感谢您的提示,我找到了“最适合我”的解决方案。我使用扩展库 com.ibm.xsp.extlib.resources.ExtLibResources 中的 ExtLibResources 类来包含我的脚本库。使用这种方法,当您在同一个 XPage 上使用多个我的控件时,它们不会被多次包含。

如果您不想使用扩展库,但想使用此方法在自定义控件中包含 CSJS,您可以构建自己的资源类。

现在我包含 jQuery 的代码如下所示:

ScriptResource jquerymin = new ScriptResource();
jquerymin.setType("text/javascript");
jquerymin.setSrc(JQUERY_PATH);
jquerymin.setClientSide(true);
ExtLibResources.addEncodeResource(context, jquerymin);

【问题讨论】:

    标签: javascript jsf xpages lotus-notes


    【解决方案1】:

    在 OpenNTF 上查看这个项目。一个 jQuery 分机。图书馆。我怀疑这是你需要做的。

    http://www.openntf.org/internal/home.nsf/project.xsp?action=openDocument&name=jQuery%20Extension%20Library

    【讨论】:

    • 是的,看起来不错,我试试看。谢谢
    【解决方案2】:

    不是自己添加库,难道不能使用 CDN 添加 jquery 库吗?

    【讨论】:

    • 对不起,正如我在问题中所说,我需要在 Notes 应用程序中实现 jQuery Lib。由于我们的防火墙/代理和安全政策,我无法使用 CDN。目前没有时间进行开发(研究不同的东西),但我认为 David Leedy 的解决方案正是我正在寻找的。​​span>
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-09
    • 1970-01-01
    • 2019-10-29
    • 1970-01-01
    相关资源
    最近更新 更多