2015-01-15 7 views
-1

다음은 내 XHTML 코드입니다. preRenderView 이벤트 리스너가 무시되고 원하는 메서드가 호출되지 않습니다. 사용 된 템플릿 때문에 정확한 느낌이 들지 않습니다. 도와주세요<f : event type = "preRenderView"> 템플릿 클라이언트에서 호출되지 않았습니다.

XHTML :

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml" 
     xmlns:h="http://xmlns.jcp.org/jsf/html" 
     xmlns:f="http://xmlns.jcp.org/jsf/core" 
     xmlns:p="http://primefaces.org/ui" 
     xmlns:ui="http://java.sun.com/jsf/facelets" 
     xmlns:c="http://java.sun.com/jsp/jstl/core" 
     xmlns:corejsf="http://corejsf.com" 
     xmlns:pt="http://xmlns.jcp.org/jsf/passthrough" 
     xmlns:snw="http://jsf.switchNwalk.com"> 

    <h:body> 
     <ui:decorate template="/template/common/commonLayout.xhtml"> 
      <ui:define name="content"> 
       <h:form> 
        <section class="box"> 
         <h:outputStylesheet name="assets/css/consumer.css"/> 
         <div class="row-fluid" > 
          <div class="span7" style=""><span class="heading">Consumer Offers</span></div> 
         </div> 
         <div class="row-fluid main_container"> 
          <div class="span12 main_container_info"> 
           <div class="cosumer_offers"> 
            <h:commandButton class="btn btn_upload" 
                style="" 
                value="Create Consumer Offer" 
                action="#{partnerCreateOffer.createOffer()}"> 
            </h:commandButton> 
           </div> 

           <h:dataTable value="#{partnerGetOffers.getOffers()}" var="offers"> 
            <h:column> 
             <f:facet name="header">Consumer Offer</f:facet> 
              #{offers.offerText} 
            </h:column> 
            <h:column> 
             <f:facet name="header">Start Date</f:facet> 
              #{offers.startDate} 
            </h:column> 
            <h:column> 
             <f:facet name="header">End Date</f:facet> 
              #{offers.offerText} 
            </h:column> 
            <h:column> 
             <f:facet name="header">Status</f:facet> 
              #{offers.status} 
            </h:column> 

            <h:column> 
             <f:facet name="header">Modify</f:facet> 
              #{offers.modify} 
            </h:column> 
           </h:dataTable> 
          </div> 
         </div> 
        </section> 
       </h:form> 
      </ui:define> 
     </ui:decorate> 
     <f:event type="preRenderView" listener="#{partnerGetOffers.testmethod}" /> 
    </h:body> 
</html> 

백업 빈 간단한 테스트 방법 :

public void testmethod() { 
    System.out.println("listenrersuccess"); 
} 

답변

-1

F에서 여기에 추가 시도 : 메타 데이터

<ui:define name="content"> 
... 

<f:metadata> 
    <f:event type="preRenderView" listener="#{partnerGetOffers.testmethod}" /> 
</f:metadata> 

... 
<h:form> 
+0

당신은 할 수없는 경우 물론, 답을하기 전에 자신을 시험해보십시오. 그렇지 않으면 의견을 게시하는 것이 좋습니다. – BalusC

+0

그것이 제가하는 방법입니다. 그래서 나는 그에게 그것을 시험해 보라고 요청했다. – blairmeister