myfaces-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Philipp Ahlner (JIRA)" <>
Subject [jira] Commented: (MYFACES-214) TabbedPane : wrong validation behavior
Date Sat, 14 May 2005 13:12:05 GMT
     [ ]
Philipp Ahlner commented on MYFACES-214:

Yes, you're right. The line

if (submittedValue == null) return;

is totally correct according to spec 1.1 (Section 3.5.5). I've seen suche a statement also
in sun's RI. Now, the question is how we get the tabbed pane working. I want to split a
dialog with many UIInput-components in a few tabs. The inputs belong to logical entity and
must be validated together. I think this was the intention of the committer of the tab-impl.
The UIInput-class is not the right point to solve this problem, but I don't give up :)
I've following idea to solve the problem in the renderer of the tabbedpane (it's only a outline):

We could implement encodeChildren(..) in org.apache.myfaces.custom.tabbedpane.HtmlTabbedPaneRenderer.
The encodeChildren should have the same behavior like the standard impl. but after delegating
the encoding to the children, the method can "simulate" a submit of all hidden components
(overwrite submittedValue with the value (localValue) if not null or if null with an empty
string). It sounds like a dirty hack, I fear it is one. It breaks the spec only a little bit
Better suggestions are welcome.


> TabbedPane : wrong validation behavior
> --------------------------------------
>          Key: MYFACES-214
>          URL:
>      Project: MyFaces
>         Type: Bug
>     Versions: 1.0.9 beta
>  Environment: MyFaces 1.0.9rc3, Tomcat 5.0.27, j2sdk1.5.0_01
>     Reporter: Philipp Ahlner

> Requirements for reproduction:
> - min. two tabs with min. one required Input-Fields
> - a submit button on each tab
> - an "<h:messages styleClass="errors" showDetail="true" showSummary="true"/>"-tag
to see all validation errors regardless which tab is selected
> Expected behavior:
> - if the submit button is pressed, !both! fields should be validated regardless which
tab is selected
> Steps to reproduce:
> 1. start a new session
> 2. let the required text fields empty
> 3. press the submit button in the first tab.
> Behavior:
> Only the field(s) on the first tab is validated.
> The interesting effect:
> Select the second tab and press submit. The validation errors on !both! tab occours.
If the tab was 
> activated at least one time in a new session, all fields were validated correctly.
> Further informations:

This message is automatically generated by JIRA.
If you think it was sent incorrectly contact one of the administrators:
For more information on JIRA, see:

View raw message