2014-01-11 1 views
0

저는 jsf 및 jpa에서 새로 왔지만 db의 테이블에서 모든 레코드를 표시하려고합니다.페이지로드시 JFS로드 데이터 테이블

내 레코드에서 모든 레코드를 표시하는 데이터 페이지에 액세스 할 수 있습니다.

<h:body> 
    <h:form> 
     <p:menu styleClass="left-navigation"> 
      <p:submenu label="Versand" > 
       <p:menuitem value="Bargeld-Versand" action="createNewAblieferung"/> 
       <p:menuitem value="Bargeld-Bestellung"/> 
       <p:menuitem value="Wertpost-Versand"/> 
      </p:submenu> 
      <p:submenu label="Administration"> 
       <p:menuitem value="Bestellungen"/> 
       <p:menuitem value="Ablieferungen" action="allAblieferungen"/> 
       <p:menuitem value="User"/> 
      </p:submenu> 
     </p:menu> 
    </h:form> 
</h:body> 

는 그리고 이것은 데이터 페이지 "allAblieferungen.xhtml는"느릅 나무가 데이터 테이블 primefaces의 모든 레코드를 표시해야의 코드입니다.

<h:body> 
    <ui:composition template="WEB-INF/template/master.xhtml"> 
     <ui:define name="content"> 
      <h:form> 
       <p:dataTable var="abl" value="#{ablieferungPM.getAllAblieferungen()}"> 
        <p:column headerText="ID"> 
         <h:outputText value="#{abl.id}" 
        </p:column> 
        <p:column headerText="AblieferndeGS"> 
         <h:outputText value="#{abl.ablieferdeGS}" 
        </p:column> 
        <p:column headerText="EmpfängerGS"> 
         <h:outputText value="#{abl.empfaengerGS}" 
        </p:column> 
        <p:column headerText="Bemerkung"> 
         <h:outputText value="#{abl.bemerkung}" 
        </p:column> 
        <p:column headerText="Summe"> 
         <h:outputText value="#{abl.summe}" 
        </p:column> 
       </p:dataTable> 
      </h:form> 
     </ui:define> 
    </ui:composition> 
</h:body> 

내 관리 빈 (ablieferungPM.java)는 "getAllAblieferungen()"테이블의 모든 레코드를 표시하는 방법을 포함하여 UI에 대한 모든 방법을 제공합니다.

@EJB 
    private AblieferungService service; 

public List<Ablieferung> getAllAblieferungen() { 
    return service.getAllAblieferungen(); 
} 

이 메소드는 Stateless Bean (AblieferungService.java)에서 서비스를 호출합니다. 이 서비스에는 비즈니스 로직의 모든 메소드가 포함되어 있으며 데이터베이스 액세스에 jpa가 사용됩니다. 는 "getAllAblieferungen()가"내가 그렇게

@NamedQueries({ 
@NamedQuery(name = Ablieferung.FIND_ALL, query = "SELECT a FROM Ablieferung a"),}) 

아래에있는 내 엔티티 클래스 서의 쿼리를 사용하여 내 데이터베이스에서 개체를

@PersistenceContext 
    private EntityManager em; 

public List<Ablieferung> getAllAblieferungen() { 
    return em.createNamedQuery(Ablieferung.FIND_ALL, Ablieferung.class).getResultList(); 
} 

테이블의 모든 개체를 얻을를 수집, 문제는 , "Ablieferung"링크를 클릭하면 아무 것도 일어나지 않습니다. 글래스 피쉬의 콘솔에서도 예외는 없습니다 ... 탐색의 첫 번째 링크에있는 양식을 사용하여 새 오브젝트를 데이터베이스에 삽입 할 수 있습니다. 이것은 정상적으로 작동하므로 데이터베이스 연결은 정상적으로 이루어져야합니다!

답변

0

menuitemurl 속성을 사용해보십시오.이 경우 action은 POST 요청을합니다.

<p:menuitem value="Ablieferungen" url="myPage?faces-redirect=true"/> 

을의이>PrimeFaces navigation using MenuItem

+0

을 확인하세요! 감사합니다 !!!! – user3185431

+0

안녕하세요, chrome/firefox 웹 콘솔은 jsf 개발에 참여한 친구입니다. – Sergio

관련 문제