ICEfaces
  1. ICEfaces
  2. ICE-7179

Failure to get/set the character encoding when running with portlets on certain app servers.

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 2.0.2
    • Fix Version/s: 3.0.1, EE-3.0.0.GA
    • Component/s: Framework
    • Labels:
      None
    • Environment:
      ICEfaces 2 Portlets

      Description

      CharacterEncodingHandler was originally added to solve:

      http://jira.icefaces.org/browse/ICE-5977

      which was a workaround for this Mojarra issue:

      http://java.net/jira/browse/JAVASERVERFACES-1767

      The ProxyHttpServletResponse is a class that allows things like ICEpush to treat Portlet responses like Http responses without having to check and cast all the time. Unfortunately, only the minimum amount of implemenation was put into the Proxy so there's a bunch of unimplemented methods. This includes:

          public java.lang.String getCharacterEncoding() {
              log.severe("ProxyHttpServletResponse unsupported operation");
              throw new UnsupportedOperationException();
          }

          public void setCharacterEncoding(java.lang.String encoding) {
              log.severe("ProxyHttpServletResponse unsupported operation");
              throw new UnsupportedOperationException();
          }

      The involved logic is not always called in CharacterEncodingHandler as it depends on a calculating a character encoding and seeing if it matches the existing encoding. If it doesn't, that's when it tries to set it. The fix is to do additional testing and implementation of relevant methods for portlets running on other app servers. Note that only certain types of PortletResponses support the encoding methods (Mime)

        Activity

        Hide
        Deryk Sinotte added a comment -

        Resolving as the get/set methods on the proxy class have now been implemented.

        Show
        Deryk Sinotte added a comment - Resolving as the get/set methods on the proxy class have now been implemented.

          People

          • Assignee:
            Deryk Sinotte
            Reporter:
            Deryk Sinotte
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: