Adf : required="true" 与 <af:setActionListener的冲突

本文探讨了JSFF页面中控件设置冲突导致的联动失效问题,并提供了有效的解决方案,帮助开发者避免参数传递错误。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题描述:同一个jsff页面中如果已有一个控件设置成required="true"属性的话,其他控件的<af:setActionListener 属性就会不好使。

看图:

Title设置成了required="true",co-creators后面的链接,点击的话,设置了传参方法<af:setActionListener from="#{row}" to="#{pageFlowScope.paperBuilder.editPaperBean.actor}"/>,结果出来的popup显示全是空的,参数值没有传过来。


title输入框部分的源码:

      <af:inputText id="it2"
                    value="#{pageFlowScope.paperBuilder.editPaperBean.paper.topic}"
                    <span style="background-color: rgb(204, 51, 204);">required="true" </span>simple="true"
                    rendered="#{(pageFlowScope.paperBuilder.editPaperBean.paper.status.name == 'In-Edit' || pageFlowScope.paperBuilder.editPaperBean.paper.status.name == 'Pending Re-Submission') && pageFlowScope.paperBuilder.editPaperBean.creator || pageFlowScope.paperBuilder.editPaperBean.paper.status.name == 'New'}"
                    maximumLength="255" autoSubmit="true"/>

co-creator部分的源码:

   <af:iterator id="i2"
                   value="#{pageFlowScope.paperBuilder.editPaperBean.paper.coCreators}"
                   var="row" rows="0">
        <af:panelGroupLayout id="pgl21" inlineStyle="white-space:nowrap;">
        <af:commandLink text="#{row.displayName}" partialSubmit="true" id="cl1" styleClass="link" inlineStyle="white-space:nowrap;">
          <af:showPopupBehavior popupId="::p1" triggerType="click"/>
         <span style="color:#6633FF;"> <span style="background-color: rgb(102, 102, 204);"><span style="color:#000000;"><af:setActionListener from="#{row}" to="#{pageFlowScope.paperBuilder.editPaperBean.actor}"/></span></span></span>
        </af:commandLink>

解决办法:

去掉title的required="true",在后台写代码做必须填写的校验.

这样就好了:


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值