使用Java动态创建JSF commandButton时不起作用

法蒂玛

使用primeFaces,我有以下按钮:

<p:commandButton value="Submit" action="#{createDeal.saveDeal}" update="myPanel" />

这样很好。但是我想使用Java生成该按钮。我有以下代码:

CommandButton submit = new CommandButton();
submit.setValue("Submit");
submit.setUpdate("myPanel");
FacesContext facesCtx = FacesContext.getCurrentInstance();
Application app = facesCtx.getApplication();
ExpressionFactory elFactory = app.getExpressionFactory();
ELContext elContext = facesCtx.getELContext();
MethodExpression methodExpression =null;
methodExpression = elFactory.createMethodExpression(elContext,"#{createDeal.saveDeal}",String.class, new Class[]{});
submit.addActionListener(new MethodExpressionActionListener(methodExpression));
submit.setActionExpression(methodExpression);
createButtons.getChildren().add(submit);

当我单击提交时,我的表单将进行验证(使用输入上的setRequired函数来完成),但是该表单永远不会命中我的createDeal类。内联按钮可以正常工作,但是java生成的Java无效,这是我做错了。

一注。在页面加载中就有使用质数内联创建的按钮。直到使用Ajax调用生成两个AND表单之后,才尝试使用Java添加按钮。

任何帮助都会有所帮助。

谢谢。

法蒂玛

感谢BalusC的所有帮助。我仍然不确定我是怎么想念这个的!以下作品:

CommandButton submit = new CommandButton();
submit.setValue("Submit");
submit.setUpdate("myPanel");
submit.setId("create"+panelClass);
FacesContext facesCtx = FacesContext.getCurrentInstance();
ELContext elContext = facesCtx.getELContext();
Application app = facesCtx.getApplication();
ExpressionFactory elFactory = app.getExpressionFactory();
MethodExpression methodExpression =null;
methodExpression = elFactory.createMethodExpression(elContext,"#    {createDeal.saveDeal}",null, new Class[]{});
submit.setActionExpression(methodExpression);
createButtons.getChildren().add(submit);

空指针异常是无关的。看起来像简单地添加ID并删除ActionListener一样可以解决问题。多谢!

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用Java动态创建JSF commandButton时不起作用

来自分类Dev

使用<use>动态创建时,SVG <animate>不起作用

来自分类Dev

动态添加时,onKeydown不起作用

来自分类Dev

创建范围时 xlCellTypeVisible 不起作用

来自分类Dev

动态创建元素时,选择的插件不起作用

来自分类Dev

datepicker onselect不起作用[当动态创建datepicker div时]

来自分类Dev

自举崩溃在动态创建时不起作用

来自分类Dev

动态创建 ul 类时,Bootstrap 折叠不起作用

来自分类Dev

使用动词时workingdirectory不起作用

来自分类Dev

使用遮罩时“ WithAnimation”不起作用?

来自分类Dev

使用变量时DLookup不起作用?

来自分类Dev

使用遮罩时“ WithAnimation”不起作用?

来自分类Dev

使用Bootstrap时不起作用

来自分类Dev

使用动态变量时iconv不起作用

来自分类Dev

使用动态 Tab 时 Summernote 不起作用

来自分类Dev

使用元素创建GWT FocusPanel clickHandler时不起作用

来自分类Dev

使用createSpyObj创建间谍时,callThrough不起作用

来自分类Dev

使用从文件创建的列表时,函数将不起作用

来自分类Dev

使用 cssgrid 时,pageYOffset 在滚动时不起作用

来自分类Dev

Laravel 5 mutator仅在创建记录时起作用,而在更新记录时不起作用

来自分类Dev

动态添加时,onclick事件不起作用

来自分类Dev

动态加载页面时,Django url标记不起作用

来自分类Dev

动态添加视图时,Android边距不起作用

来自分类Dev

当div动态生成时div排序不起作用

来自分类Dev

动态设置属性时内联样式不起作用

来自分类Dev

动态插入组件时 ControlValueAccessor 不起作用

来自分类Dev

动态添加表单时 Ajax 表单不起作用

来自分类Dev

容器在使用Dockerfile时起作用,但在使用docker-compose.yml时不起作用

来自分类Dev

scope。$ on在指令内创建时不起作用

Related 相关文章

  1. 1

    使用Java动态创建JSF commandButton时不起作用

  2. 2

    使用<use>动态创建时,SVG <animate>不起作用

  3. 3

    动态添加时,onKeydown不起作用

  4. 4

    创建范围时 xlCellTypeVisible 不起作用

  5. 5

    动态创建元素时,选择的插件不起作用

  6. 6

    datepicker onselect不起作用[当动态创建datepicker div时]

  7. 7

    自举崩溃在动态创建时不起作用

  8. 8

    动态创建 ul 类时,Bootstrap 折叠不起作用

  9. 9

    使用动词时workingdirectory不起作用

  10. 10

    使用遮罩时“ WithAnimation”不起作用?

  11. 11

    使用变量时DLookup不起作用?

  12. 12

    使用遮罩时“ WithAnimation”不起作用?

  13. 13

    使用Bootstrap时不起作用

  14. 14

    使用动态变量时iconv不起作用

  15. 15

    使用动态 Tab 时 Summernote 不起作用

  16. 16

    使用元素创建GWT FocusPanel clickHandler时不起作用

  17. 17

    使用createSpyObj创建间谍时,callThrough不起作用

  18. 18

    使用从文件创建的列表时,函数将不起作用

  19. 19

    使用 cssgrid 时,pageYOffset 在滚动时不起作用

  20. 20

    Laravel 5 mutator仅在创建记录时起作用,而在更新记录时不起作用

  21. 21

    动态添加时,onclick事件不起作用

  22. 22

    动态加载页面时,Django url标记不起作用

  23. 23

    动态添加视图时,Android边距不起作用

  24. 24

    当div动态生成时div排序不起作用

  25. 25

    动态设置属性时内联样式不起作用

  26. 26

    动态插入组件时 ControlValueAccessor 不起作用

  27. 27

    动态添加表单时 Ajax 表单不起作用

  28. 28

    容器在使用Dockerfile时起作用,但在使用docker-compose.yml时不起作用

  29. 29

    scope。$ on在指令内创建时不起作用

热门标签

归档