ICEfaces
  1. ICEfaces
  2. ICE-1892

Tabbing order in IE crashed by <ice:selectInputDate> when combined with <ice:menu>

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Invalid
    • Affects Version/s: 1.6
    • Fix Version/s: None
    • Component/s: ICE-Components
    • Labels:
      None
    • Environment:
      Windows XP, JDK 1.5, Eclipse
    • Workaround Exists:
      Yes
    • Workaround Description:
      Hide
      In order to fix this in our application, we created a new class in our project which subclassed SelectInputDateRenderer.java and we over-road the public void encodeEnd(FacesContext facesContext, UIComponent uiComponent) throws IOException method. I will post the code:

      /**
      * {@inheritDoc}
      */
      public void encodeEnd(FacesContext facesContext, UIComponent uiComponent)
      throws IOException {

      super.encodeEnd(facesContext, uiComponent);

      DOMContext domContext = DOMContext.attachDOMContext(facesContext, uiComponent);
      SelectInputDate selectInputDate = (SelectInputDate)uiComponent;

      Node rootNode = domContext.getRootNode();
      Element inputNode = (Element)rootNode.getFirstChild();
      Element calendarButton = (Element)inputNode.getNextSibling();

      //add dummy code to be executed on 'onblur'
                      inputNode.setAttribute(HTML.ONBLUR_ATTR, ";");

      if (selectInputDate.isDisabled()) {
      inputNode.setAttribute(HTML.DISABLED_ATTR, "true");
      }

      if (selectInputDate.isDisabled()) {
      calendarButton.setAttribute(HTML.DISABLED_ATTR, "true");
      }
      }

      This code also includes the fix for issue: http://jira.icefaces.org/browse/ICE-1865

      Unfortunately this code is not very good in case you still need partial submit. We didn't have time to come up with a complete solution as partial submit for dates is not required for us. :) In case of some spare time, we'll come back with a complete solution!
      Show
      In order to fix this in our application, we created a new class in our project which subclassed SelectInputDateRenderer.java and we over-road the public void encodeEnd(FacesContext facesContext, UIComponent uiComponent) throws IOException method. I will post the code: /** * {@inheritDoc} */ public void encodeEnd(FacesContext facesContext, UIComponent uiComponent) throws IOException { super.encodeEnd(facesContext, uiComponent); DOMContext domContext = DOMContext.attachDOMContext(facesContext, uiComponent); SelectInputDate selectInputDate = (SelectInputDate)uiComponent; Node rootNode = domContext.getRootNode(); Element inputNode = (Element)rootNode.getFirstChild(); Element calendarButton = (Element)inputNode.getNextSibling(); //add dummy code to be executed on 'onblur'                 inputNode.setAttribute(HTML.ONBLUR_ATTR, ";"); if (selectInputDate.isDisabled()) { inputNode.setAttribute(HTML.DISABLED_ATTR, "true"); } if (selectInputDate.isDisabled()) { calendarButton.setAttribute(HTML.DISABLED_ATTR, "true"); } } This code also includes the fix for issue: http://jira.icefaces.org/browse/ICE-1865 Unfortunately this code is not very good in case you still need partial submit. We didn't have time to come up with a complete solution as partial submit for dates is not required for us. :) In case of some spare time, we'll come back with a complete solution!

      Description

      We identified a problem with <ice:selectInputDate> when testing the tabbing order in IE. Whenever focus is lost on the first input generated by selectInputDate, the tab order is spoilled. It jumps on the menu instead of going in the normal direction. We had a look in the com.icesoft.faces.component.selectinputdate.SelectInputDateRenderer and noticed that the partial submit is applied regardless of what attributes you set in the .jspx. I think this is a problem as this attribute is ignored.

        Activity

        Hide
        Ken Fyten added a comment -

        Marking as Closed / Invalid as part of legacy ICEfaces ICE / Compat component JIRA cleanup.

        Note: This issue may be resolved in a newer ICEfaces release, available here: http://www.icesoft.org/java/downloads/icefaces-downloads.jsf

        If the issue persists with the current ICEfaces release, please create a new JIRA for it.

        Show
        Ken Fyten added a comment - Marking as Closed / Invalid as part of legacy ICEfaces ICE / Compat component JIRA cleanup. Note: This issue may be resolved in a newer ICEfaces release, available here: http://www.icesoft.org/java/downloads/icefaces-downloads.jsf If the issue persists with the current ICEfaces release, please create a new JIRA for it.

          People

          • Assignee:
            Unassigned
            Reporter:
            Radu Andrei Tanasa
          • Votes:
            3 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: