[ 
http://issues.apache.org/jira/browse/MYFACES-214?page=comments#action_65387 ]
     
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.

Philipp

> TabbedPane : wrong validation behavior
> --------------------------------------
>
>          Key: MYFACES-214
>          URL: http://issues.apache.org/jira/browse/MYFACES-214
>      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: 
> http://www.mail-archive.com/users%40myfaces.apache.org/msg03525.html

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira

Reply via email to