ICEfaces
  1. ICEfaces
  2. ICE-6857

CKEditor URL is not portlet-friendly

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 2.0.1, EE-2.0.0.GA
    • Fix Version/s: 3.0.1, EE-3.0.0.GA
    • Component/s: ICE-Components
    • Labels:
      None
    • Environment:
      ICEfaces 2 Portal Portlet InputRichText

      Description

      The InputRichTextSetup class attempts to use a SystemEventListener to add the scripts for the CKEditor to the head. This is similar to the strategy we use for other head scripts (ie bridge.js). However, the CKEditor resource URLs are created using the ResourceRegistry rather than the standard JSF library/name system.

      When loading a page in WebSphere Portal, Firebug shows that "CKEDITOR is not defined". Looking at the page URL it's trying to load:

      http://192.168.55.111:10039/wps/myportal/Home/cs1/!ut/p/b1/04_SjzS0NDQyNzOysDDSj9CPykssy0xPLMnMz0vMAfGjzOINzAKMA3ycTU1M_D3NDDxDPUJCjJx8jQxcDYEKIoEKnN0dPUzMfQwMLEwtDA08HT1Czc2CXYwMHI3x6g8118-NynEEAFUr3OM!/

      But the CKEditor resource URL ends up being:

      http://192.168.55.111:10039/wps/component-showcase/icefaces/resource/LTE5NDk5MzQyNTU=//ckeditor.js

      On WebSphere Portal, this doesn't match the typical <head> resource URL which looks more like:

      http://192.168.55.111:10039/wps/myportal/Home/cs1/!ut/p/b1/dY3LboMwFAW_JV9wL7YDZOmCVRNMA-KR4A1CyEqIQqBAkJKvL60qddWzO9JoBjSUxNlZhKBL4QT6Xi_tuZ7b_l7fvr-2K7RjGitvy9ghsDHIZZaRt4igsOAI-gfx3rlkjkJ0t66FAZe5Y6c-QU5_AfxnHOFD9p1ZTaV2_lKe8Pw15Rdh6KcEcU2NZuofY2MgaermYpRZzC2uzwZSOCGr0qs7hEo8JhSzygSbrXYOVcMWlQ8Hq9xF4TREaV4Vz-d4fNEiL3jC5_3rkyWbDXR6L2nn8S-MqFo-/

      It does manage to work on Liferay but that's because the URL is a Registry resource style and we are allowing a "direct" connection to the app context (bypassing the portal). For example, the URL for a portal page in Liferay looks like:

      http://localhost:8080/web/guest/cs1

      But the CKEditor resource is still:

      http://localhost:8080/component-showcase-portlet/icefaces/resource/LTE5NDk5MzQyNTU=//ckeditor.js

      It appears that trying to create the URL to the .js file that is lodged somewhere in the .jar file using our current ResourceRegistry won't work. So we either need to:

      - ensure that the ResourceRegistry is completely portlet friendly when generating URLs or
      - perhaps we should use the same "library" style strategy we use for bridge.js, etc?

        Activity

        Hide
        Deryk Sinotte added a comment -

        While looking at the other resource loading issues in WebSphere Portal, please check that the Input Rich Text (CKEditor) resources are loading properly as well.

        Show
        Deryk Sinotte added a comment - While looking at the other resource loading issues in WebSphere Portal, please check that the Input Rich Text (CKEditor) resources are loading properly as well.
        Hide
        Deryk Sinotte added a comment -

        Seems to be working in the latest maintenance branch on both Liferay and WebSphere Portal so resolving as fixed.

        Show
        Deryk Sinotte added a comment - Seems to be working in the latest maintenance branch on both Liferay and WebSphere Portal so resolving as fixed.

          People

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

            Dates

            • Created:
              Updated:
              Resolved: