2013-04-11 3 views
2

내 응용 프로그램에 JSF 1.2를 사용하고 있습니다.JSF 1.2에서 <h : CommandButton> 작업 특성이 작동하지 않습니다.

아래 코드에서 Account Details 버튼의 동작 속성이 작동하지 않습니다. 즉, 메서드가 호출되지 않고 버튼을 클릭해도 아무 것도 발생하지 않습니다.

public class AccountBean { 

private int accountNo; 
private String customerName; 
private double accountBalance; 
private String accountType; 

    //Getters and setters 

public String accountDetails(){ 
    //Some logic and return 
     return "success"; 

} 
} 

이 얼굴-구성 저런 존재의 관리 빈됩니다 :

<managed-bean>  
    <managed-bean-name>customerInfo</managed-bean-name> 
    <managed-bean-class>com.bean.CustomerInfo</managed-bean-class> 
    <managed-bean-scope>session</managed-bean-scope>   
</managed-bean> 

<managed-bean>  
    <managed-bean-name>accountBean</managed-bean-name> 
    <managed-bean-class>com.bean.AccountBean</managed-bean-class> 
    <managed-bean-scope>session</managed-bean-scope>   
</managed-bean> 

somethng가있을 수 있습니다 바보 내가 코드에서 실종 아래

<h:panelGrid columns="2"> 
    <h:outputLabel id="lblCustomerDetails" value="Details of CustomerId: "></h:outputLabel> 
    <h:outputText id="txtCustomerId" value="#{customerInfo.customerId }"></h:outputText> 
    <h:outputLabel id="lblCustomerName" value="Customer name: "></h:outputLabel> 
    <h:outputText id="txtCustomerName" value="#{customerInfo.customerNAme }"></h:outputText> 
    <h:outputLabel id="lblAccounts" value="Accounts: "></h:outputLabel> 
    <h:selectOneMenu id="drpdownAccounts"> 
     <f:selectItems value="#{customerInfo.accounts }"/> 
    </h:selectOneMenu>  
    <h:outputLabel id="lblEmail" value="Email: "></h:outputLabel> 
    <h:outputText id="txtEmail" value="#{customerInfo.email }"></h:outputText> 
    <h:outputLabel id="lblAccountDetails" value="Select an account no. for details"></h:outputLabel> 
    <h:commandButton id="btnAcountDetails" value="Account Details" action="#{accountBean.accountDetails }"></h:commandButton> 
    <h:messages></h:messages> 
</h:panelGrid> 

AccountBean입니다 그러나 그것을 이해할 수는 없으므로, 이것으로 많은 시간을 낭비하고 따라서 게시하는 것을 생각했습니다. 포인터가 appretiated 있습니다.

+5

여기에 나열된 원인을 제외하십시오. http://stackoverflow.com/questions/2118656/hcommandlink-hcommandbutton-is-not-being-invoked/2120 183 # 2120183 첫 번째 용의자 : ''은 어디에 있나요? 양식없이 양식을 제출하는 방법은 무엇입니까? 그러나 이것은 제정신의 모든 JSF 튜토리얼의 1 장에서 볼 수 있습니다. 따라서 기본 HTML에 대한 이해가 부족함을 나타내는 다소 분명한 실수가 될 것입니다. JSF가 궁극적으로 궁극적으로 " 그냥 "HTML 코드 생성기). – BalusC

답변

3

전체 마크 업이 보이지 않지만 페이지의 어딘가에 <form> 태그가 누락 될 수 있습니까? MyFaces Trinidad의 AFAIK 양식 컨트롤과 버튼은 <tr:form> 태그 안에 있지 않으면 아무 것도하지 않습니다.

호프가 문제를 해결합니다.

+0

나는 이것을 대답하기 전에 BalusC의 코멘트를 보지 못했습니다 ... 그의 링크에서 나온 답변은 부엌 싱크대를 포함한 모든 것이있는 것처럼 보입니다. :) – darthbinamira

0

경우는 JSF 1.2

<h:form> 
<h:commandbutton onclick = "clickme()" /> 
<a4j:JsFunction name = "clickme" action = "#{yourBean.YourMethod}" /> 
</h:form> 
에 대한 문제를 해결할 수

<a4j:JsFunction> 

를 사용하려고

<h:form> 

내부에 코드를 붙여 여전히 당신은 그 문제를 해결할 수 없습니다

관련 문제