2016-07-05 9 views
0

Innerhalb einer Primzahlen overlayPanel Ich frage einen Benutzer nach einem Wert, der direkt danach wiederverwendet wird. Also möchte ich es nicht in einer Backing Bean speichern.Temporären Wert ohne Backing-Bean verwenden

Hier ist der Code:

<p:overlayPanel id="ovlpanel" for="copy" hideEffect="fade" style="width:300px"> 
    <h:form> 
     <p:panel id="grid" header="#{msg.copy_item}"> 
      <h:panelGrid columns="2" cellpadding="5" 
       styleClass="ui-panelgrid-blank"> 
       <p:outputLabel value="#{msg.number_of_copies}: " for="number_of_copies" /> 
        <p:column> 
         <p:inputText id="number_of_copies" 
         value="tempValNumberOfCopies" /> 
        </p:column> 
      </h:panelGrid> 
      <p:commandButton 
      action="#{controller.copyItem(tempValNumberOfCopies)}" 
      value="#{msg.copy}" /> 
     </p:panel> 
    </h:form> 
</p:overlayPanel> 

ich den Wert für tempValNumberOfCopies innerhalb einer temporären Variablen speichern möchten, und es in der Wirkung der Taste verwenden.

Haben Sie vielleicht Ideen, wie Sie das umsetzen?

Antwort

1

Sie könnten die impliziten Bereiche verwenden, z.

<p:inputText id="number_of_copies" 
      value="requestScope.tempValNumberOfCopies" /> 
<p:commandButton action="#{controller.copyItem(requestScope.tempValNumberOfCopies)}" 
       value="#{msg.copy}" /> 

oder

<p:inputText id="number_of_copies" 
      value="viewScope.tempValNumberOfCopies" /> 
<p:commandButton action="#{controller.copyItem(viewScope.tempValNumberOfCopies)}" 
       value="#{msg.copy}" />