我需要根据调用页面的位置更新不同的组件。
<p:commandButton id="questionnaire_save_button"
value="#{shop_msgs['questionnaire.save.button.label']}"
action="#{questionnaireBean.update(questionnaire)}"
update=":#{p:component(#{questionnaireBean.refreshComponentId})}" />
在我的问卷调查表中,我有以下方法:
public String getRefreshComponentId() {
refreshComponentId = "";
if(isFromCCRM()) {
refreshComponentId ="questionnaires_wrapper_panel";
}else {
refreshComponentId = "breadcrumbs_panel";
}
return refreshComponentId;
}
但是我一直收到语法错误: 引起:javax.el.ELException:错误解析::#{p:component(#{questionnaireBean.refreshComponentId})} 在org.jboss.el.lang.ExpressionBuilder.createNodeInternal(ExpressionBuilder.java:130) 在org.jboss.el.lang.ExpressionBuilder.build(ExpressionBuilder.java:151) 在org.jboss.el.lang.ExpressionBuilder.createValueExpression(ExpressionBuilder.java:195) at org.jboss.el.ExpressionFactoryImpl.createValueExpression(ExpressionFactoryImpl.java:68) at com.sun.faces.facelets.tag.TagAttributeImpl.getValueExpression(TagAttributeImpl.java:385) ......还有117个 引起:org.jboss.el.parser.ParseException:在第1行第17列遇到“{”。 期待以下之一: “” ... “)”...... “[”...... “,”...... “&gt;” 中... “gt”...... “&LT;” ... “lt”...... “&gt; =”...... “ge”...... “&lt; =”...... “le”...... “==”...... “eq”...... “!=”...... “ne”...... “&安培;&安培;” ... “和”...... “||” ... “要么” ... “*”...... “+”...... “ - ”...... “?” ... “/”...... “div”...... “%”...... “mod”...... “(”..
答案 0 :(得分:4)
变化:
update=":#{p:component(#{questionnaireBean.refreshComponentId})}" />
为:
update=":#{p:component(questionnaireBean.refreshComponentId)}"