Details
-
Type: Bug
-
Status: Closed
-
Priority: Major
-
Resolution: Won't Fix
-
Affects Version/s: 4.0
-
Fix Version/s: 4.0
-
Component/s: ACE-Components
-
Labels:None
-
Environment:ICEfaces4 trunk rev. 42320
Browsers: all
Server: Tomcat 7.0.27
-
Workaround Exists:Yes
-
Workaround Description:
Description
ace:textEntry QA test application -> Dynamic attribute test:
When using a submit button, the requiredMessage on the ace:textEntry is not rendered on page. The requiredMessage is rendered if pressing "Enter" on the ace:textEntry (while no text is being entered in the textEntry), or if replacing the h:commandButton with an ace:ajax component with a 'blur' type event on the ace:textEntry.
Test application:
http://dev.icesoft.com/svn/repo/qa/trunk/Regression-Icefaces4/Sparkle/Nightly/textEntry
Test page: /textEntryDynAttribute.jsf
Steps:
- on /textEntryDynAttribute.jsf, set rendered=true, required=true.
- click inside the ace:textEntry component, without typing any character.
- click the 'Submit' button -> the expected required message is "Required text missing" is not rendered, instead there is a message "Please fill out this field", coming from the browser. If the Enter key is pressed, the requiredMessage is displayed.
Note: the requiredMessage is rendered on page if replacing the submit h:commandButton with an ace:ajax component on the ace:textEntry:
<ace:ajax render="@this value textEntryMsg validatorMsg" event="blur"/>
When using a submit button, the requiredMessage on the ace:textEntry is not rendered on page. The requiredMessage is rendered if pressing "Enter" on the ace:textEntry (while no text is being entered in the textEntry), or if replacing the h:commandButton with an ace:ajax component with a 'blur' type event on the ace:textEntry.
Test application:
http://dev.icesoft.com/svn/repo/qa/trunk/Regression-Icefaces4/Sparkle/Nightly/textEntry
Test page: /textEntryDynAttribute.jsf
Steps:
- on /textEntryDynAttribute.jsf, set rendered=true, required=true.
- click inside the ace:textEntry component, without typing any character.
- click the 'Submit' button -> the expected required message is "Required text missing" is not rendered, instead there is a message "Please fill out this field", coming from the browser. If the Enter key is pressed, the requiredMessage is displayed.
Note: the requiredMessage is rendered on page if replacing the submit h:commandButton with an ace:ajax component on the ace:textEntry:
<ace:ajax render="@this value textEntryMsg validatorMsg" event="blur"/>
Issue Links
- depends on
-
ICE-10241 Add ability to disable HTML5 Browser "Please fill out this field." tooltips.
- Closed
Activity
- All
- Comments
- History
- Activity
- Remote Attachments
- Subversion
Carmen Cristurean
created issue -
Carmen Cristurean
made changes -
Field | Original Value | New Value |
---|---|---|
Description |
ace:textEntry QA test application -> Dynamic attribute test:
When using a submit button, the requiredMessage on the ace:textEntry is not rendered on page. The requiredMessage is rendered if pressing "Enter" on the ace:textEntry (while no text is being entered in the textEntry), or if replacing the h:commandButton with an ace:ajax component with a 'blur' type event on the ace:textEntry. Test application: http://dev.icesoft.com/svn/repo/qa/trunk/Regression-Icefaces4/Sparkle/Nightly/textEntry Test page: /textEntryDynAttribute.jsf Steps: - on /textEntryDynAttribute.jsf, set rendered=true, required=true. - click inside the ace:textEntry component, without typing any character. - click the 'Submit' button -> the expected required message is "Required text missing" is not rendered, instead there is a message "Please fill out this field", coming from the browser. If the Enter key is pressed, the requiredMessage is displayed. |
ace:textEntry QA test application -> Dynamic attribute test:
When using a submit button, the requiredMessage on the ace:textEntry is not rendered on page. The requiredMessage is rendered if pressing "Enter" on the ace:textEntry (while no text is being entered in the textEntry), or if replacing the h:commandButton with an ace:ajax component with a 'blur' type event on the ace:textEntry. Test application: http://dev.icesoft.com/svn/repo/qa/trunk/Regression-Icefaces4/Sparkle/Nightly/textEntry Test page: /textEntryDynAttribute.jsf Steps: - on /textEntryDynAttribute.jsf, set rendered=true, required=true. - click inside the ace:textEntry component, without typing any character. - click the 'Submit' button -> the expected required message is "Required text missing" is not rendered, instead there is a message "Please fill out this field", coming from the browser. If the Enter key is pressed, the requiredMessage is displayed. Note: the requiredMessage is rendered on page if replacing the submit h:commandButton with an ace:ajax component on the ace:textEntry: <ace:ajax render="@this value textEntryMsg validatorMsg" event="blur"/> |
Ken Fyten
made changes -
Fix Version/s | 4.0 [ 11382 ] |
Ken Fyten
made changes -
Assignee | Mircea Toma [ mircea.toma ] |
Mircea Toma
made changes -
Status | Open [ 1 ] | Resolved [ 5 ] |
Resolution | Won't Fix [ 2 ] |
Ken Fyten
made changes -
Security | Private [ 10001 ] |
Ken Fyten
made changes -
Workaround Description |
The normal submit of the form is blocked by the HTML5 _required=true_ attribute set on the input element. Since ICEfaces captures the actual _submit_ event to issue an AJAX request the submit is not triggered.
To workaround this client side validation the submit button can have an f:ajax facet thus forcing a submit that directly invokes the AJAX request: {code} <h:commandButton id="submit" type="submit" value="Submit"> <f:ajax render="@all" execute="@all"/> </h:commandButton> {code} |
|
Workaround Exists | Yes [ 10007 ] |
Ken Fyten
made changes -
Status | Resolved [ 5 ] | Closed [ 6 ] |