我在托管bean(JSF 2.2)中声明属性时遇到了问题,我已经阅读了关于bean中属性的名称约定的其他问题,我的看似没问题。我的page.jsf是一个ui合成,属性名称是日期:private Date dataSemAtendimento
。这是我正在使用的primefaces(5.1)的日历标记:
<p:dialog header="Escolha as data de feriado e ponto facultativo"
widgetVar="modalCalendar" id="modalCalendar" modal="true" width="400"
height="500" appendTo="@(body)">
<p:calendar id="popup" widgetVar="popupCal"
value="#{postoAtendimentoBean.dataSemAtendimento}">
</p:calendar>
<p:commandButton value="Adicionar data" update="tableCal">
<p:ajax listener="#{postoAtendimentoBean.adicionarDataFeriado}" />
</p:commandButton>
<p:dataList id="tableCal"
value="#{postoAtendimentoBean.postoDiaSemAtendimentoList}" var="data"
style="width:50%">
<f:facet name="header">
Datas que não ocorreram o atendimento
</f:facet>
<p:column>
<h:outputText value="#{data}">
<f:convertDateTime locale="pt" />
</h:outputText>
</p:column>
<p:column>
<p:commandButton icon="ui-icon-trash" update="tableCal"
action="#{postoAtendimentoBean.removerDataFeriado(data)}">
<p:ajax listener="#{postoAtendimentoBean.removerDataFeriado(data)}"></p:ajax>
</p:commandButton>
</p:column>
</p:dataList>
<p:separator />
<p:panelGrid style="margin: auto;">
<p:commandButton value="Confirmar" onclick="PF('modalCalendar').hide();" />
</p:panelGrid>
</p:dialog>
这是与get / setter相关的托管bean代码:
@ManagedBean
@ViewScoped
public class PostoAtendimentoBean extends AbstractCRUDBean<PostoAtendimento, Long> {
private Date dataSemAtendimento;
public Date getDataSemAtendimento() {
return dataSemAtendimento;
}
public void setDataSemAtendimento(Date dataSemAtendimento) {
this.dataSemAtendimento = dataSemAtendimento;
}
}
渲染视图时出错[/resources/template/template.xhtml]:javax.el.PropertyNotFoundException:/pages/cadastros/posto_atendimento/manter_posto_atendimento_persistencia.xhtml @ 161,25 value =&#34;#{postoAtendimentoBean.dataSemAtendimento}& #34;:班级&#39; br.com.webtech.scheduler.bean.postoatendimento.PostoAtendimentoBean&#39;没有属性&quot; dataSemAtendimento&#39;。
我在野外飞行(8.2.1)实例中运行,但奇怪的是当我手动部署它时它不起作用但是当我通过eclipse部署时在服务器选项卡中添加耳朵它工作正常。我迷路了,已经尝试了几件事。有任何想法吗?感谢。
另一件奇怪的事情是,当我通过Maven webModule标签更改应用程序的context-root时,就会发生这种情况。
编辑:我通过使用错误的上下文根复制.class并使用新的context-root将其放入生成的ear中来解决这个问题,但这是一种解决问题的绝佳方法。