ADF:在java方法中获取InputText的值

时间:2012-07-06 10:00:45

标签: oracle-adf

我有以下问题: 从一个按钮调用一个java方法,这个方法将在同一页面中具有inputText的当前值,你可以这样做吗?

3 个答案:

答案 0 :(得分:5)

1.创建托管bean。 2.define你的方法使用这个代码::

FacesContext facesContext = FacesContext.getCurrentInstance();
    UIViewRoot root = facesContext.getViewRoot();
    RichInputText inputText = (RichInputText)root.findComponent("it1");
    String val=inputText.getValue();

where it1 is id for your input text

3.从按钮属性窗口中选择按钮的动作侦听器。 4.call你的托管bean和方法

答案 1 :(得分:3)

在inputText上指定一个value属性,并在您的bean中使用View或更高范围(例如value="#{viewScope.Bean.field}")对托管bean中的字段进行EL引用:

private String field;
public String getField(){ 
    return field; 
};
public void setField(String field){
    this.field = field;
};

然后在actionListener上指定commandButton,并在同一个bean中引用处理程序方法:actionListener="#{viewScope.Bean.handleButton}"。在此方法中访问field

public void handleButton(ActionEvent event){
    System.out.println('Input field content: ' + getField());
}; 

答案 2 :(得分:1)

很难说出你在问什么,但是如果你想问:当我点击一个按钮时,我希望按钮在后备java bean中调用一个方法并访问一个输入文本字段的值。 ADF Faces页面,答案是肯定的。 您需要在输入文本字段上设置Binding属性,并为该按钮添加方法调用。使用ActionListener属性作为按钮,并使用actionlistener方法指定或创建辅助bean。然后设置输入文本字段的绑定属性。辅助bean应该具有文本字段的get / set方法,您可以使用它们来获取对文本字段的引用并调用get / setValue()方法。