2017-05-12 6 views
0

Jungs Ich mache diese einfache Additionsfunktion in Oracle ADF In dem ich drei Eingabe Textfelder erstens zwei für Eingabenummern und drittens für die Ausgabe und eine Schaltfläche, wo ich Code für die Berechnung der Zusätzlich operation.on eine Seite nach Adf Fusion Anwendung in ADF Dies ist der Code fürOracle adf Zusatz Ausgabe

<?xml version='1.0' encoding='UTF-8'?> 
<!DOCTYPE html> 
<f:view xmlns:f="http://java.sun.com/jsf/core" xmlns:af="http://xmlns.oracle.com/adf/faces/rich"> 
    <af:document title="PageAdd.jsf" id="d1"> 
     <af:form id="f1"> 
      <af:inputText label="input1" id="it1" binding="#{Mbean.input1}" autoSubmit="true"/> 
      <af:inputText label="input2" id="it2" binding="#{Mbean.input2}" autoSubmit="true"/> 
      <af:inputText label="output" id="it3" binding="#{Mbean.output}" autoSubmit="true"/> 
      <af:button text="Submit" id="b1" action="#{Mbean.b1_action}"/> 
      <af:selectBooleanRadio text="selectBooleanRadio 1" label="Label 1" id="sbr1"/> 
     </af:form> 
    </af:document> 
    <!--oracle-jdev-comment:preferred-managed-bean-name:Mbean--> 
</f:view> 

Erstellen Wie Sie die Bindungen sehen. Mbean ist die Managed Bean und der Teil nach '.' ist das Eigentum. In der Schaltfläche Ich habe diese Methode namens b1_action erstellt. Unten ist der Java-Code. Paketansicht;

import javax.faces.component.UIViewRoot; 
import javax.faces.context.FacesContext; 
import javax.faces.event.ActionEvent; 

import oracle.adf.view.rich.component.rich.input.RichInputText; 

public class Addition { 
    private RichInputText input1; 
    private RichInputText input2; 
    private RichInputText output; 

    public Addition() { 
    } 

    public void setInput1(RichInputText input1) { 
     this.input1 = input1; 
    } 

    public RichInputText getInput1() { 
     return input1; 
    } 

    public void setInput2(RichInputText input2) { 
     this.input2 = input2; 
    } 

    public RichInputText getInput2() { 
     return input2; 
    } 

    public void setOutput(RichInputText output) { 
     this.output = output; 
    } 

    public RichInputText getOutput() { 
     return output; 
    } 

    public String b1_action() { 
     String s; 
     String x; 
     String v; 
     s = (String)input1.getValue(); 
     x = (String)input2.getValue(); 
     int r2=Integer.parseInt(x); 
     int r1= Integer.parseInt(s); 
     int d =r2+r1; 
     v =Integer.toString(d); 
     output.setValue(v);   
     System.out.println(output.getValue()); 

     return null; 
    } 


} 

Während meine Anwendung ist in der Lage, die Werte zu übernehmen und auch zusammen hinzufügen, aber nicht in der Lage es in dem dritten Eingabetextfeld angezeigt werden, die ich nicht in der Lage bin zu tun, ich bin neu in dieses Tool und Sprache Java freundlich Hilf mir.

Antwort

0

Auf dem „Ausgang“ Komponente addd eine partielle Trigger-Attribut wie folgt aus:

<af:inputText label="output" id="it3" binding="#{Mbean.output}" autoSubmit=“true" partialTriggers=“ b1"/> 
+0

ich den Radioknopf es ein Fehler war – DPJ

+0

benötigt Teil Trigger entfernt schreiben auf die ID Ihrer Taste zu zeigen. Ich habe den Post bearbeitet, bitte nochmals nachsehen. –

+0

Ich habe versucht, dass ich bekomme einen Fehler als Java.faces.FacesException und java.lang.Nullpointer Ausnahme nach dem Drücken der Taste – DPJ

0

Erste Make Eingang 1 und 2 autoSubmit="True". Dann Make partialTriggers="it1 it2" für Ausgabe. Machen Sie die partialSubmit="True" für den Button.

Wenn nichts passiert versuchen this.output.setValue(V);

+0

Java.faces.Faces Exception und Java.faces.el.evaluation.Exception, Java.lang.NullPointer.Exception – DPJ

+0

erhalten Es tut uns leid, partriTriggers = "it1 it2" anstelle von PratialTriger = "it1 it2" zu verwenden –