Details
-
Type:
Bug
-
Status: Closed
-
Priority:
Major
-
Resolution: Invalid
-
Affects Version/s: 1.5.3
-
Fix Version/s: None
-
Component/s: Framework
-
Labels:None
-
Environment:ICEFaces 1.5.3
-
ICEsoft Forum Reference:
-
Workaround Exists:Yes
-
Workaround Description:
Description
Pushing popup button on selectInputDate performs iceSubmitPartial() and forces form validation.
Simple example is
<ice:messages showSummary="false" showDetail="true" layout="table"/>
<ice:form>
<ice:panelGrid columns="2">
<ice:outputLabel value="Date :" for="date"/>
<ice:selectInputDate id="date" value="#{partial.date}" renderAsPopup="true"/>
<ice:outputLabel value="Text :" for="text"/>
<ice:inputText id="text" required="true" value="#{partial.input}"/>
</ice:panelGrid>
</ice:form>
with the managed bean :
public class PartialTest
{
private String input;
private Date date;
//add public getters & setters
}
So each time you open its popup and select a date, you will have as many validation errors as there are fields yet to validate.
IMHO this bug makes selectInputDate unusable in real applications.
Simple example is
<ice:messages showSummary="false" showDetail="true" layout="table"/>
<ice:form>
<ice:panelGrid columns="2">
<ice:outputLabel value="Date :" for="date"/>
<ice:selectInputDate id="date" value="#{partial.date}" renderAsPopup="true"/>
<ice:outputLabel value="Text :" for="text"/>
<ice:inputText id="text" required="true" value="#{partial.input}"/>
</ice:panelGrid>
</ice:form>
with the managed bean :
public class PartialTest
{
private String input;
private Date date;
//add public getters & setters
}
So each time you open its popup and select a date, you will have as many validation errors as there are fields yet to validate.
IMHO this bug makes selectInputDate unusable in real applications.
This issue still exists in version 1.7.2.
<ice:selectInputDate id="completiondate"
{createHandler.curHistory.desiredCompletionDt}title="Enter Desired Completion Date"
renderMonthAsDropdown="true"
renderYearAsDropdown="true"
renderAsPopup="true"
value="#
"
required="true"
partialSubmit="false">
</ice:selectInputDate>
Using firebug, I can see that iceSubmitPartial( document.forms['_id29'], this,event); is still being called for this component. This is very disruptive to the behavior of the form because it forces validation.