데이터베이스에서 값을 가져 와서 테이블 형식으로 표시하는 기본 데이터 테이블을 만들려고합니다. 그러나 디버깅을 시도하는 동안 관리되는 bean 함수가 호출되지 않는 것을 볼 수 있습니다. 아래의 코드를입니다ManagedBean 함수가 호출되지 않음
list.xhtml :
<h:body>
<h3>Expense list</h3>
<h:dataTable value="#{userMB.entries}" var="e" styleClass="table"
headerClass="table-header" rowClasses="table-odd-row,table-even-row">
<h:column>
<f:facet name="header">Date</f:facet>
#{e.date}
</h:column>
</h:dataTable>
</h:body>
UserMB.java 나는 내가 코드 또는 facelet에 오류가 표시되지
@ManagedBean
@SessionScoped
public class UserMB {
private List<Entry> entries;
@EJB(mappedName = "entryServices")
private EntryServices entryServices;
public UserMB() {
}
@PostConstruct
public void init() {
FacesContext context = FacesContext.getCurrentInstance();
HttpServletRequest request = (HttpServletRequest) context
.getExternalContext().getRequest();
HttpSession httpSession = request.getSession(false);
User user = (User) httpSession.getAttribute("user");
entries = new ArrayList<Entry>();
entries = entryServices.getEntryByUser(user);
}
public List<Entry> getEntries() {
return entries;
}
public void setEntries(List<Entry> entries) {
this.entries = entries;
}
public EntryServices getEntryServices() {
return entryServices;
}
public void setEntryServices(
EntryServices entryServices) {
this.entryServices = entryServices;
}
}
무엇이'userMB.Entries'입니까? –
이 글은 여기에 복사했을 때 오타였습니다. 지금 질문에 수정했습니다. – coder
'init()'이 호출되지 않았다면 연관된 관리 빈이 아직 구성되지 않았 음을 의미합니다. 목록이 비어 있지 않은지 확인 했습니까? – Omar