Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/312.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 为ADF中的下拉列表设置默认值_Java_Oracle11g_Oracle Adf - Fatal编程技术网

Java 为ADF中的下拉列表设置默认值

Java 为ADF中的下拉列表设置默认值,java,oracle11g,oracle-adf,Java,Oracle11g,Oracle Adf,在jsff文件中,设计了一个组件,并从静态VO获取值。静态Vo中只有两个值。我需要将第一个选项设置为默认值。但是正在设置一个空值。我已经写了一个条件来禁用它。当它被禁用时,该值必须设置为第一个值 我尝试过列表UI提示,并尝试过启用Include No selection项:标签为item first of List,我尝试过创建一个只有一个值的新vo,并在Jsff中呈现它(但这将使代码在未来的开发中更加复杂),我尝试过创建切换器。但没有一个像他们应该做的那样工作 有人能给我推荐一个代码复杂度不增

在jsff文件中,设计了一个组件,并从静态VO获取值。静态Vo中只有两个值。我需要将第一个选项设置为默认值。但是正在设置一个空值。我已经写了一个条件来禁用它。当它被禁用时,该值必须设置为第一个值

我尝试过列表UI提示,并尝试过启用Include No selection项:标签为item first of List,我尝试过创建一个只有一个值的新vo,并在Jsff中呈现它(但这将使代码在未来的开发中更加复杂),我尝试过创建切换器。但没有一个像他们应该做的那样工作

有人能给我推荐一个代码复杂度不增加且默认情况下选择第一个值的替代方案吗。如果jsff中有disable标记的条件为true,则为disable


PS:禁用该字段后,第一个值必须是默认设置的默认值。

似乎没有任何默认方法可以在不向视图对象添加代码的情况下使用Oracle ADF实现这一点。以下是如何在ADF LOV中自动选择第一个值(详情如下):

  • 生成视图对象和静态VO的RowImpl Java类
  • 在这个RowImpl.java中,如果没有选择任何值,则添加以下函数以返回第一个值
公共字符串defaultNextStatus(){
字符串值=(字符串)getAttributeInternal(AttributesEnum.NextStatus.index());
如果(值==null){
XXCRWorkflowVvorowImpl nextStatut=(XXCRWorkflowVvorowImpl)getWfkVA().first();
//Wkfva是爱的VO
if(nextStatut!=null){
返回nextStatut.getTxtValeur();
}
}
返回值;
}
  • 在属性的详细信息面板中添加以下默认值表达式:adf.object.defaultNextStatus()
  • 在属性的“详细信息”面板中,将“刷新表达式”值设置为false,以避免在ppr/刷新时再次拾取第一个值

禁用部分必须使用jsff条件进行处理(不管:)您是否尝试过为构建列表的VO属性设置值?