从渲染执行操作中获取getViewRoot null

时间:2015-01-24 11:30:39

标签: spring spring-mvc spring-webflow spring-webflow-2

我需要实现viewRoot,因为我使用DB结果动态添加一个新的htmlPanelGroup但总是返回null。

如何从SWF片段中抛出一个能够正确实现viewRoot的求值表达式?

谢谢!

流量

            <on-entry>
                <set name="viewScope.code" value="requestParameters.code" />
            </on-entry>
            <on-render>
                <evaluate expression="eventProvider.createEvent(viewScope.code)" />
            </on-render>

方式

public void createEvent(String idEvent){
    logger.entry("EventProvider.createEvent()");


    Page p=pageBo.getDao().get(Integer.valueOf(idEvent));

    pageBo.getDao().initializeElements(p);

    Set<Element> elements=p.getElements();

    Application app=FacesContextWrapper.getCurrentInstance().getApplication();
    UIComponent parent=FacesContextWrapper.getCurrentInstance().getViewRoot().findComponent("eventContainer");

  ....
  ....
  ....}

1 个答案:

答案 0 :(得分:0)

最后,我选择在flowScope var中保存requestParameter,因此我可以在调用on-render执行时使用它

            <on-entry>
                <set name="flowScope.code" value="requestParameters.code" />
            </on-entry>
            <on-render>
                <evaluate expression="eventProvider.loadPage(flowScope.code)" />
            </on-render>