你好,我正在开发一个使用Oracle ADF和jdev12c的web应用程序。我有一个类似下面的页面。

上面的页面是使用模板创建的。它包含三个部分。第一部分是图像,第二部分是具有多个面板组布局的卡片组(这里卡片子值是由作用域会话的托管bean中的值决定的)。第三部分是实际的内容方面。在这方面,我已经删除了一个任务流(绑定)作为包含.jsff页面的区域。
我的问题是每件事都运行得很好。af:showPrintableBehavior不工作。当我点击可打印的视图按钮时,我得到了以下异常。在发生以下异常之后,我的应用程序中什么都不能工作。(如果我单击任何commndLink,它将在另一个选项卡中打开,并反复尝试生成页面内容,例如表格,但不显示内容)
exception
java.lang.IllegalArgumentException
org.apache.myfaces.trinidad.model.RowKeySetTreeImpl.setCollectionModel(RowKeySetTreeImpl.java:315)
org.apache.myfaces.trinidad.component.UIXListView$RowKeyFacesBeanWrapper.getProperty(UIXListView.java:300)
org.apache.myfaces.trinidad.component.FacesBeanWrapper.getProperty(FacesBeanWrapper.java:61)
oracle.adf.view.rich.component.rich.data.RichListView$ListViewBeanWrapper.getProperty(RichListView.java:178)
org.apache.myfaces.trinidad.component.UIXComponentBase.getProperty(UIXComponentBase.java:1912)
org.apache.myfaces.trinidad.component.UIXListView.getSelectedRowKeys(UIXListView.java:451)
org.apache.myfaces.trinidad.component.UIXListView.postCreateCollectionModel(UIXListView.java:157)
org.apache.myfaces.trinidad.component.UIXCollection.getCollectionModel(UIXCollection.java:1671)
org.apache.myfaces.trinidad.component.UIXCollection.getCollectionModel(UIXCollection.java:1255)
org.apache.myfaces.trinidad.component.UIXCollection.getRowKey(UIXCollection.java:493)
oracle.adf.view.rich.component.rich.data.RichListView.visitChildren(RichListView.java:103)
org.apache.myfaces.trinidad.component.UIXComponent.visitChildren(UIXComponent.java:774)
org.apache.myfaces.trinidad.component.UIXComponent.visitTree(UIXComponent.java:631)
org.apache.myfaces.trinidad.component.UIXComponent.visitTree(UIXComponent.java:405)
org.apache.myfaces.trinidad.component.UIXComponent.visitAllChildren(UIXComponent.java:504)
org.apache.myfaces.trinidad.component.UIXComponent.visitChildren(UIXComponent.java:482)
org.apache.myfaces.trinidad.component.UIXComponent.visitChildren(UIXComponent.java:774)
org.apache.myfaces.trinidad.component.UIXComponent.visitTree(UIXComponent.java:631)
org.apache.myfaces.trinidad.component.UIXComponent.visitTree(UIXComponent.java:405)
org.apache.myfaces.trinidad.component.UIXComponent.visitAllChildren(UIXComponent.java:504)这不仅仅是在这个页面中工作。我已经在一个没有使用该模板创建的空页面中进行了测试。在那个空页面中,我创建了这个表,并尝试了af:showPrintableBehavior,在这里这个行为运行良好。
请帮帮我。如何移除上述异常。导出到excel工作正常。
提前谢谢。
发布于 2015-04-28 16:11:27
尝试在打印页面的按钮中使用clientListener,然后停止事件的进一步传播:
<af:resource type="javascript">
/**
* Shows a popup from an "action" type event.
* @param {AdfActionEvent} actionEvent the event being handled
*/
function stopEventFromPropagating(actionEvent)
{
actionEvent.cancel();
}
</af:resource>
<af:commandButton text="Click Me">
<af:clientListener type="action" method="stopEventFromPropagating"/>
</af:commandButton>https://stackoverflow.com/questions/29912246
复制相似问题