2011-03-29 7 views
0

프레임 워크로 JSF를 사용한 JSP에서 사용자 입력 값을 전달하는 방법은 무엇입니까? 여기 내 코드 :jsf-jsp에서 값을 전달하는 방법

<h:dataTable id="dt1" value="#{Ack.list}" var="ack" > 
    <h:column> 
     <f:facet name="header"> 
      <h:outputText style=""value=" Number" /> 
     </f:facet> 
     <h:outputText style="" value="#{ack.number}" ></h:outputText> 
    </h:column> 
    <h:column> 
     <f:facet name="header"> 
      <h:outputText value="Acknowledgement"/> 
     </f:facet> 
     <h:inputText value="" > </h:inputText> 
    </h:column> 
    <h:column> 
     <h:outputText value=""/> 
     <h:commandButton action="" value="Submit"></h:commandButton> 
    </h:column> 
</h:dataTable> 

"승인"을 위해 제공된 텍스트 필드에 값을 입력하고 제출 버튼을 클릭하고 싶습니다. 버튼 클릭시 사용자가 "확인"을 입력하면 어떻게 보내나요?

+1

망고, 편집 및 기존의 답변은 완전히 쓸모 다른 사람들에게 혼란을 만들 수있는 완전히 다른 문제를 설명하기 위해 기존 질문을 재사용에 유래를 사용하는 올바른 방법이 아니다. 편집을 다시 한 번 되돌 렸습니다. 오른쪽 상단에있는 'Ask Question (질문하기)'을 눌러 기존 질문을 편집하는 대신 새로운 질문을하십시오. – BalusC

답변

2

먼저 Ack (최소한 테이블의 var 속성에 선언 된 것처럼, 데이터 테이블의 각 항목을 나타내는 클래스) 속성에 을 추가하십시오.

public class Ack { 
    private String acknowledgement; 

    // Add/generate getter and setter. 
} 

그런 다음 입력 필드를 바인딩하십시오.

<h:inputText value="#{ack.acknowledgement}" /> 

테이블이 이미 <h:form> 내부에 배치되어 있는지 확인하고 나는 또한 테이블 외부에서 명령 단추를 이동할 것, 하나 개의 버튼은 충분하다. action을 backing bean 메소드에 바인드하십시오.

<h:form> 
    <h:dataTable ...> 
     ... 
    </h:dataTable> 
    <h:commandButton action="#{Ack.submit}" value="Submit" /> 
</h:form> 

마지막으로 bean에서 메소드를 정의하십시오. 이 시점에서 JSF는 이미 제출 된 값을 설정했습니다. 당신은 단지 DB 또는 뭔가에 그들을 저장해야합니다.

public String submit() { 
    ackDAO.save(list); 
    return "outcome"; 
} 
+0

답장을 보내 주셔서 감사합니다. 그것은 내 문제를 해결했습니다 .. !! 비슷한 맥락에서 다른 문제에 직면하고 있습니다. 편집 후 제 질문을 찾아서 대답 해주십시오. – Mango

+0

이전 질문을 편집하는 대신 새 질문을하십시오. 그렇지 않으면 대답은 더 이상 완전한 의미를 갖지 못할 것입니다. – BalusC

+0

죄송합니다 ... !!! 이제 새로운 질문을 올렸습니다. 저를 안내해 줄 것을 부탁드립니다. – Mango

관련 문제