我正在尝试在 IBM Connections 4.0 中为 iWidget 实例保存一个持久变量
文档(链接和链接)将我引导至以下 javascript(在编辑模式下使用 iWidget 运行):
this.iContext.getiWidgetAttributes().setItemValue("instance","helloWorld");
this.iContext.getiWidgetAttributes().save(); //or .commit(); as save is deprecated
我还尝试在小部件 XML 定义中定义变量:
<iw:itemSet id="attributes" private="false" onItemSetChanged="itemSetChanged">
<iw:item id="instance" value="" readOnly="false"/>
</iw:itemSet>
这会在本地实例中正确设置该值,我还看到一个对服务器的 PUT 请求以保存该值。它返回一个 404 响应代码。网址是:
/connections/opensocial/common/repos?st=default%3AcQitETUij2Iqg0A_8mB9A35-pRKmnH_dFUgT4rY-hERIC3ZTNW3hp0OeLr_SYZ2mXWW6OjMtcFPijI_YaIaCDZlduzYgn5FkYQUTiqngHgLqsBMG&type=itemSet&pageId=undefined&widgetId=widget_d785df84b58d4d459707a048014567f6_1369275060798&itemSetId=attributes
当我重新加载页面并尝试使用以下方法再次检索它时,该值不再存储:
this.iContext.getiWidgetAttributes().getItemValue("instance");
我注意到 URL 中有一个“pageId=undefined”。Connections 服务器的 SystemOut.log 中没有输出。
目前它正在主页“我的小部件”页面中运行,但稍后也会在社区应用程序中运行。
谢谢