问题描述
使用DynamicContent控件对我来说似乎太困难了。在出现 的简单示例下面:单击一个城市,显示page2,单击BACK,再次显示page1。到目前为止一切顺利。
现在,我重新加载页面(F5),单击一个城市,然后单击页面上的某处...奇怪的是,执行了BACK操作。我再次单击某个位置(有时需要单击三次),然后显示错误500:“ javax.faces.FacesException:CLFAD0380E:找不到ID为$$ xspsubmitid = view:_id1:_id2:dynamicContent1:_id14的组件提交事件。”。
我假设是应该删除BACK-action上的eventListener,但它仍然存在。
对于其余的事情,我感到莫名其妙。是否有人会对此有所帮助?谢谢!
其他信息:Domino V11.0,Domino Designer V11.0.1,它同时在Firefox和Chromium(最新)中运行,所有运行Linux的系统(Designer除外)。
<?xml version="1.0" encoding="UTF-8"?>
<xp:view xmlns:xp="http://www.ibm.com/xsp/core" xmlns:xe="http://www.ibm.com/xsp/coreex">
<xp:panel id="thisPanel" styleClass="thisPanel">
<xe:dynamicContent id="dynamicContent1" defaultFacet="page1">
<xp:this.facets>
<xp:div xp:key="page1">
<xp:label value="Welcome!" id="label8" styleClass="header"></xp:label>
<xp:div id="eventList" styleClass="eventList">
<xp:repeat var="city" value="#{javascript:['Paris','London']}">
<xp:div styleClass="category clickable">
<xp:text escape="true" id="computedField1" value="#{city}">
<xp:eventHandler event="onclick" submit="true" refreshMode="partial" refreshId="thisPanel" disableValidators="true">
<xp:this.action><![CDATA[#{javascript:getComponent("dynamicContent1").show("page2");
}]]></xp:this.action>
</xp:eventHandler>
</xp:text>
</xp:div>
</xp:repeat>
</xp:div>
</xp:div>
<xp:div xp:key="page2">
<xp:div styleClass="back clickable">
BACK
<xp:eventHandler event="onclick" submit="true" refreshMode="partial" refreshId="thisPanel" disableValidators="true">
<xp:this.action><![CDATA[#{javascript:getComponent("dynamicContent1").show("page1");}]]></xp:this.action>
</xp:eventHandler>
</xp:div>
</xp:div>
</xp:this.facets>
</xe:dynamicContent>
</xp:panel>
</xp:view>
更新
似乎要设置一个“修复程序”
xsp.error.disable.0380=true
该错误不再存在,但是我不知道内部到底发生了什么。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)