Oracle ADF - 在控制台中打印输入表单值

时间:2014-03-14 04:07:53

标签: forms jsf oracle-adf

我在JDeveloper 11.1.1.7.0中工作。我在ADF中创建一个简单的表单应用程序。 我需要在控制台中打印ADF表单的输入值。为此,我使用了以下代码。

    System.out.println("It1 : " +  it1.getValue());
    System.out.println("si1 : " +  si1.getValue());
    System.out.println("soc1 : " +  soc1.getValue());

输入值将在控制台中填充RichInputText * (it1) *字段和RichSelectItem * (si1) *字段。但是,同样不适用于RichSelectOneChoice * (soc1) *字段。

如何打印在RichSelectOneChoice * (soc1) *字段中选择的值。

提前致谢。

3 个答案:

答案 0 :(得分:0)

实际上使用你提到的方法你应该得到所需的选定值。如果你在执行下面的代码后得到任何异常,你可以分享你得到的输出。

System.out.println(“soc1:”+ soc1.getValue());

答案 1 :(得分:0)

您不需要将组件绑定到托管bean(实际上,这被认为是一种不好的做法),但只绑定组件值。

因此,您的表单应包含(例如):

<af:inputText value="#{managedBean.inputTextValue}" id="it1" />
<af:selectOneChoice value="#{managedBean.selectOneChoiceValue}" id="soc1">
   <af:selectItem itemValue="first" itemLabel="First" id="si1" /> 
   <af:selectItem itemValue="second" itemLabel="Second" id="si2" />
   <af:selectItem itemValue="third" itemLabel="Third" id="si3" />
</af:selectOneChoice>
<af:commandButton actionListener="#{managedBean.printValues}" id="cb1" />

在托管bean中你应该有:

private String inputTextValue;

private String selectOneChoiceValue;

//accessors

public void printValues(ActionEvent event) {
   System.out.println("Input text value: " + inputTextValue);
   System.out.println("Select one choice value: " + selectOneChoiceValue);
}

答案 2 :(得分:0)

将属性valuePassThru设置为true,您也应该获得selectOneChoice的值。