Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.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
Jsf Apache Trinidad tr:panelTabbed始终验证当前选项卡的内容_Jsf_Trinidad - Fatal编程技术网

Jsf Apache Trinidad tr:panelTabbed始终验证当前选项卡的内容

Jsf Apache Trinidad tr:panelTabbed始终验证当前选项卡的内容,jsf,trinidad,Jsf,Trinidad,我对apachetrinidadtr:panelTabbed组件有问题。我正在尝试将不同的表单放入此组件的选项卡(tr:showtailitem)。这在第一次尝试时根本不起作用(我得到了一个位于NullPointerException的示例,org.apache.myfaces.trinidadinternal.ui.laf.base.xhtml.FormValueRenderer.AddNeedValue(FormValueRenderer.java:126): 当tr:form标记中没有

我对apachetrinidadtr:panelTabbed组件有问题。我正在尝试将不同的表单放入此组件的选项卡(tr:showtailitem)。这在第一次尝试时根本不起作用(我得到了一个位于NullPointerException的示例,org.apache.myfaces.trinidadinternal.ui.laf.base.xhtml.FormValueRenderer.AddNeedValue(FormValueRenderer.java:126):


当tr:form标记中没有内容时,也会发生此错误,因此它与我自己的JavaBean无关

我发现tr:panelTabbed必须放在tr:form标记中。由于不允许在另一个表单标记中使用一个表单标记(这再次导致上述异常),我将代码更改为:

<tr:form>
  <tr:panelTabbed>
    <tr:showDetailItem text="First tab">
      <tr:inputText label="Value 1" value="#{myBean.someValue1}" required="true" />
      <tr:commandButton text="Save Value 1" actionListener="#{myBean.saveValue1}" />
    </tr:showDetailItem>
    <tr:showDetailItem text="Second tab">
      <tr:inputText label="Value 2" value="#{myBean.someValue2}" required="true" />
      <tr:commandButton text="Save Value 2" actionListener="#{myBean.saveValue2}" />
   </tr:showDetailItem>
  </tr:panelTabbed>
</tr:form>

这一点一开始很好,但最终导致了我的问题:

我在每个表单中都有一些验证。当用户尝试切换到第二个选项卡,而第一个选项卡包含验证错误时,他或她不允许这样做。我希望避免这种行为,但我也希望在用户单击“保存”按钮时验证当前选项卡的内容

有什么建议可以解决这个问题吗


提前感谢

特立尼达岛有一个tr:subform标记,它可以满足您的需要,请尝试在每个面板中使用一个通用tr:form标记和一个小tr:subform(我希望您希望单独验证表单)

<tr:form>
  <tr:panelTabbed>
    <tr:showDetailItem text="First tab">
      <tr:inputText label="Value 1" value="#{myBean.someValue1}" required="true" />
      <tr:commandButton text="Save Value 1" actionListener="#{myBean.saveValue1}" />
    </tr:showDetailItem>
    <tr:showDetailItem text="Second tab">
      <tr:inputText label="Value 2" value="#{myBean.someValue2}" required="true" />
      <tr:commandButton text="Save Value 2" actionListener="#{myBean.saveValue2}" />
   </tr:showDetailItem>
  </tr:panelTabbed>
</tr:form>