ICEfaces
  1. ICEfaces
  2. ICE-6699

JavaScript errors when running ACE showcase portlets

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 2.0.0
    • Fix Version/s: EE-2.0.0.GA, 2.0.2
    • Component/s: ACE-Components, Bridge
    • Labels:
      None
    • Environment:
      ICEfaces 2 ACE Liferay 5 and 6
    • Affects:
      Compatibility/Configuration

      Description

      I've run the ACE portlet showcase under both Liferay 5 and 6 and have seen the same errors in the Chrome console with both platforms:

      ace1:72Uncaught TypeError: Cannot read property '1' of null
      ice.yui3.getNewInstanceace1:72
      ice.yui3.useace1:31
      (anonymous function)
      1. ace-animation-portlets.png
        375 kB
      2. ace-slider-portlets.png
        550 kB
      3. ace-tabs-portlets.png
        494 kB

        Activity

        Hide
        Ken Fyten added a comment -

        Need to see why this is failing, particularly on Liferay 5 as it doesn't use YUI itself, so YUI conflicts shouldn't be an issue.

        Show
        Ken Fyten added a comment - Need to see why this is failing, particularly on Liferay 5 as it doesn't use YUI itself, so YUI conflicts shouldn't be an issue.
        Hide
        Mark Collette added a comment -

        This is where ACE's loader code uses a regex on the head script tags' src attribute, to determine the path to the loader javascript, so it can use that path to load the other yui javascript. That exception means that it didn't find the sought info in the head. Most likely the regex isn't taking into account some may that portlets is manipulating the urls.

        Show
        Mark Collette added a comment - This is where ACE's loader code uses a regex on the head script tags' src attribute, to determine the path to the loader javascript, so it can use that path to load the other yui javascript. That exception means that it didn't find the sought info in the head. Most likely the regex isn't taking into account some may that portlets is manipulating the urls.
        Hide
        Deryk Sinotte added a comment -

        Portlet URLs are generally much different than non-portlet resource references. Here's an example of one of the script URLs that gets put into the head when the checkmark portlet is rendered out to the portal page on Liferay:

        <script src="http://localhost:8080/web/guest/ace1?_checkbox_WAR_aceshowcaseportlet_INSTANCE_YZ6u_javax.faces.resource=yui%2Fyui-min.js&_checkbox_WAR_aceshowcaseportlet_INSTANCE_YZ6u_ln=yui%2F3_1_1&p_p_cacheability=cacheLevelPage&p_p_col_count=1&p_p_col_id=column-1&p_p_id=checkbox_WAR_aceshowcaseportlet_INSTANCE_YZ6u&p_p_lifecycle=2&p_p_mode=view&p_p_state=normal" type="text/javascript"></script>

        Show
        Deryk Sinotte added a comment - Portlet URLs are generally much different than non-portlet resource references. Here's an example of one of the script URLs that gets put into the head when the checkmark portlet is rendered out to the portal page on Liferay: <script src="http://localhost:8080/web/guest/ace1?_checkbox_WAR_aceshowcaseportlet_INSTANCE_YZ6u_javax.faces.resource=yui%2Fyui-min.js&_checkbox_WAR_aceshowcaseportlet_INSTANCE_YZ6u_ln=yui%2F3_1_1&p_p_cacheability=cacheLevelPage&p_p_col_count=1&p_p_col_id=column-1&p_p_id=checkbox_WAR_aceshowcaseportlet_INSTANCE_YZ6u&p_p_lifecycle=2&p_p_mode=view&p_p_state=normal" type="text/javascript"></script>
        Hide
        Mark Collette added a comment -

        Compared to the regular case of:

        <script src="/ace-showcase/javax.faces.resource/loader/loader-min.js.jsf?ln=yui/3_1_1" type="text/javascript"></script>

        The regular expression in question:

        /^.\/+(.)\/javax\.faces\.resource.yui\/yui-min\.js(.)?ln=(.*)?$/

        With portlets, only half the issue is extracting out the path information that the loader cares about. The other half is in constructing URLs that will resolve to the desired resources. My recommendation is that we stop trying to comprehend the whole src URL, but treat it as a black box from which we extract the two things we care about, the file being used and the library it's in. And then we setup the loader to swap in the desired modules' file and library back into the black box, to create the function URL.

        So if we think about this:

        http://localhost:8080/web/guest/ace1?_checkbox_WAR_aceshowcaseportlet_INSTANCE_YZ6u_javax.faces.resource=yui%2Fyui-min.js&amp;_checkbox_WAR_aceshowcaseportlet_INSTANCE_YZ6u_ln=yui%2F3_1_1&amp;p_p_cacheability=cacheLevelPage&amp;p_p_col_count=1&amp;p_p_col_id=column-1&amp;p_p_id=checkbox_WAR_aceshowcaseportlet_INSTANCE_YZ6u&amp;p_p_lifecycle=2&amp;p_p_mode=view&amp;p_p_state=normal

        instead as:

        XXXjavax.faces.resourceZyui/yui-min.jsZXXZln=yui/3_1_1ZXXX

        where X and Z is just stuff that we preserve, and we need to know about Z because it's a delimiter text that tells us when the parts we care about begin or end, but X parts are just black boxes.

        For getting the file, in the portlet case, we have:
        javax.faces.resource=
        and in the regular case we have:
        javax.faces.resource/
        just a = vs /, so we can match on either.

        For getting the library, in the portlet case we have:
           &_checkbox_WAR_aceshowcaseportlet_INSTANCE_YZ6u_ln=yui/3_1_1&
        And in the regular case we have
           ?ln=yui/3_1_1
        so we can match on several delimiters, like _-.&? and then match on:
        ln=yui/

        Show
        Mark Collette added a comment - Compared to the regular case of: <script src="/ace-showcase/javax.faces.resource/loader/loader-min.js.jsf?ln=yui/3_1_1" type="text/javascript"></script> The regular expression in question: /^. \/+(. )\/javax\.faces\.resource. yui\/yui-min\.js(. )?ln=(.*)?$/ With portlets, only half the issue is extracting out the path information that the loader cares about. The other half is in constructing URLs that will resolve to the desired resources. My recommendation is that we stop trying to comprehend the whole src URL, but treat it as a black box from which we extract the two things we care about, the file being used and the library it's in. And then we setup the loader to swap in the desired modules' file and library back into the black box, to create the function URL. So if we think about this: http://localhost:8080/web/guest/ace1?_checkbox_WAR_aceshowcaseportlet_INSTANCE_YZ6u_javax.faces.resource=yui%2Fyui-min.js&amp;_checkbox_WAR_aceshowcaseportlet_INSTANCE_YZ6u_ln=yui%2F3_1_1&amp;p_p_cacheability=cacheLevelPage&amp;p_p_col_count=1&amp;p_p_col_id=column-1&amp;p_p_id=checkbox_WAR_aceshowcaseportlet_INSTANCE_YZ6u&amp;p_p_lifecycle=2&amp;p_p_mode=view&amp;p_p_state=normal instead as: XXXjavax.faces.resourceZyui/yui-min.jsZXXZln=yui/3_1_1ZXXX where X and Z is just stuff that we preserve, and we need to know about Z because it's a delimiter text that tells us when the parts we care about begin or end, but X parts are just black boxes. For getting the file, in the portlet case, we have: javax.faces.resource= and in the regular case we have: javax.faces.resource/ just a = vs /, so we can match on either. For getting the library, in the portlet case we have:    &_checkbox_WAR_aceshowcaseportlet_INSTANCE_YZ6u_ln=yui/3_1_1& And in the regular case we have    ?ln=yui/3_1_1 so we can match on several delimiters, like _-.&? and then match on: ln=yui/
        Hide
        Mark Collette added a comment - - edited

        Since the portlets case might not sequence the file before the library, we should probably separate the one regex into several. First we need to match on finding the javascript entry for YUI:

        /^(.)javax\.faces\.resource([\/\=])yui\/yui-min\.js(.)$/

        And then we can search, within the first and last chunks, found in that, for the library, using:

        /^(.[\_\-\.\&\?])ln\=yui\/[0-9a-zA-Z_\.]+(.)$/

        And then we can now reassemble it all together:

        Yui3 resources:
        whole[1] + "javax.faces.resource" + whole[2] + module + whole[3]
        Yui2 resources:
        // Switch whole[1] or whole[3] depending which matched the library
        whole[1] + "javax.faces.resource" + whole[2] + module + library[1] + "ln=yui/2in3" + library[2]

        Show
        Mark Collette added a comment - - edited Since the portlets case might not sequence the file before the library, we should probably separate the one regex into several. First we need to match on finding the javascript entry for YUI: /^(. )javax\.faces\.resource( [\/\=] )yui\/yui-min\.js(. )$/ And then we can search, within the first and last chunks, found in that, for the library, using: /^(. [\_\-\.\&\?] )ln\=yui\/ [0-9a-zA-Z_\.] +(. )$/ And then we can now reassemble it all together: Yui3 resources: whole [1] + "javax.faces.resource" + whole [2] + module + whole [3] Yui2 resources: // Switch whole [1] or whole [3] depending which matched the library whole [1] + "javax.faces.resource" + whole [2] + module + library [1] + "ln=yui/2in3" + library [2]
        Hide
        Mark Collette added a comment -

        I think that step 1 is to make this more generic approach work with regular ICEfaces, and then step 2 is to get it working with Portlets.

        Show
        Mark Collette added a comment - I think that step 1 is to make this more generic approach work with regular ICEfaces, and then step 2 is to get it working with Portlets.
        Hide
        Deryk Sinotte added a comment -

        I see from the svn commit the following comment:

        "working with some errors in portlet case"

        Can more detail be provided here as to what "some errors" are? I'll run it and see what happens and provide whatever feedback I can.

        Show
        Deryk Sinotte added a comment - I see from the svn commit the following comment: "working with some errors in portlet case" Can more detail be provided here as to what "some errors" are? I'll run it and see what happens and provide whatever feedback I can.
        Hide
        Deryk Sinotte added a comment -

        On Liferay 5.2.3, it now gets past the original problem discussed in the case. The checkbox kind of worked but most of the other ones were missing resources, not rendering, throwing various exceptions like:

        21:06:44,378 WARN [PortalImpl:2948] Current URL /web/guest/javax.faces.resource/assets/skins/sam/thumb-x.png.jsf?ln=yui/3_1_1 generates exception: null

        which appears to be missing some portlet namespace info.

        On Liferay 6.0.6, it now gets past the original problem in the case but runs into the YUI conflict issue. From the Chrome console:

        Uncaught TypeError: Object [object Object] has no method 'applyConfig'
        YUIeverything.jsp:1
        YUIeverything.jsp:1
        ice.yui3.getNewInstanceace-maint:112
        ice.yui3.useace-maint:31
        ice.component.updatePropertiesace-maint:184
        ice.component.checkboxbutton.updatePropertiesace-maint:138
        (anonymous function)

        Show
        Deryk Sinotte added a comment - On Liferay 5.2.3, it now gets past the original problem discussed in the case. The checkbox kind of worked but most of the other ones were missing resources, not rendering, throwing various exceptions like: 21:06:44,378 WARN [PortalImpl:2948] Current URL /web/guest/javax.faces.resource/assets/skins/sam/thumb-x.png.jsf?ln=yui/3_1_1 generates exception: null which appears to be missing some portlet namespace info. On Liferay 6.0.6, it now gets past the original problem in the case but runs into the YUI conflict issue. From the Chrome console: Uncaught TypeError: Object [object Object] has no method 'applyConfig' YUIeverything.jsp:1 YUIeverything.jsp:1 ice.yui3.getNewInstanceace-maint:112 ice.yui3.useace-maint:31 ice.component.updatePropertiesace-maint:184 ice.component.checkboxbutton.updatePropertiesace-maint:138 (anonymous function)
        Hide
        Deryk Sinotte added a comment -

        Just to help clarify, it looks as if the original regex problem has been overcome. However, I can't be certain if the YUI loader is doing things 100% correctly at this point.

        The problems that I see now, in Liferay 5, appear to be related to resource URLs that are not properly encoded for portlets. The one that I posted for the thumb-x.png is an image for the slider I believe. However, the URL should look more like the other URLs that were posted in previous comments - with the portlet namespace and other request attributes. These problems may not be related to the problem originally outlined in the case, however. It's possible that the resources are not being properly encoded due to some other reason.

        Show
        Deryk Sinotte added a comment - Just to help clarify, it looks as if the original regex problem has been overcome. However, I can't be certain if the YUI loader is doing things 100% correctly at this point. The problems that I see now, in Liferay 5, appear to be related to resource URLs that are not properly encoded for portlets. The one that I posted for the thumb-x.png is an image for the slider I believe. However, the URL should look more like the other URLs that were posted in previous comments - with the portlet namespace and other request attributes. These problems may not be related to the problem originally outlined in the case, however. It's possible that the resources are not being properly encoded due to some other reason.
        Hide
        Arturo Zambrano added a comment -

        The problems I refer to are the ones you just mentioned: some JS errors, and images not displaying (on Liferay 6). I guess the issue with the images doesn't have to do with these recent changes. I think the image URLs in the CSS files will have to be adapted for portlets as well. Later today I'll look into the JS errors.

        Show
        Arturo Zambrano added a comment - The problems I refer to are the ones you just mentioned: some JS errors, and images not displaying (on Liferay 6). I guess the issue with the images doesn't have to do with these recent changes. I think the image URLs in the CSS files will have to be adapted for portlets as well. Later today I'll look into the JS errors.
        Hide
        Deryk Sinotte added a comment -

        I notice that in the rime.css files, that we use an EL style mechanism to resolve some of the resources. For example:

        '#

        {resource['org.icefaces.component.skins/rime/sprite-x.png']}

        '

        We did some work with Neil on getting these to properly resolve using the PortletFaces Bridge. By using this approach, the URLs can be encoded server-side which means that they have a chance to be properly resolved as portlet URLs before rendering out to the client.

        The way it looks right now is that the images in question are simply being resolved client-side. Not sure if this can work as the portal doesn't get a chance to add the stuff it needs.

        Show
        Deryk Sinotte added a comment - I notice that in the rime.css files, that we use an EL style mechanism to resolve some of the resources. For example: '# {resource['org.icefaces.component.skins/rime/sprite-x.png']} ' We did some work with Neil on getting these to properly resolve using the PortletFaces Bridge. By using this approach, the URLs can be encoded server-side which means that they have a chance to be properly resolved as portlet URLs before rendering out to the client. The way it looks right now is that the images in question are simply being resolved client-side. Not sure if this can work as the portal doesn't get a chance to add the stuff it needs.
        Hide
        Arturo Zambrano added a comment -

        I checked , in firebug, the computed style of all the elements that compose the checkbox button, and noticed that the background image url looks like a correct portlet url, which I'm pasting below.

        http://localhost:8080/web/guest/home?p_p_cacheability=cacheLevelPage&p_p_col_count=3&p_p_col_id=column-1&p_p_col_pos=1&p_p_id=fileEntry_WAR_aceshowcaseportlet_INSTANCE_Y6lw&p_p_lifecycle=2&p_p_mode=view&p_p_state=normal

        However, when I try to load that url in a new browser tab, I don't get an image but some xml instead, which I paste below.

        <partial-response>
        <changes>
        <update id="javax.faces.ViewState">2578874746720330037:-4934592831050652836</update>
        </changes>
        </partial-response>

        I don't know how things work in portlets, but I suppose that url should access an actual image file. I don't know if I'm missing some configuration setting or something to make the server send the actual image data.

        Show
        Arturo Zambrano added a comment - I checked , in firebug, the computed style of all the elements that compose the checkbox button, and noticed that the background image url looks like a correct portlet url, which I'm pasting below. http://localhost:8080/web/guest/home?p_p_cacheability=cacheLevelPage&p_p_col_count=3&p_p_col_id=column-1&p_p_col_pos=1&p_p_id=fileEntry_WAR_aceshowcaseportlet_INSTANCE_Y6lw&p_p_lifecycle=2&p_p_mode=view&p_p_state=normal However, when I try to load that url in a new browser tab, I don't get an image but some xml instead, which I paste below. <partial-response> <changes> <update id="javax.faces.ViewState">2578874746720330037:-4934592831050652836</update> </changes> </partial-response> I don't know how things work in portlets, but I suppose that url should access an actual image file. I don't know if I'm missing some configuration setting or something to make the server send the actual image data.
        Hide
        Arturo Zambrano added a comment -

        I discovered that Liferay 6 is already using its own modified version of YUI, and they are basing it on YUI 3.2.0. So, most likely there is a conflict between their version and ours. Perhaps that's why this is not happening on Liferay 5 as I understand from Deryk (I haven't been able to find Liferay 5 for download).

        The error that I see on firebug is "O._loaded[q] is undefined", which appears 3 times or 5 times if you're logged in as the administrator. This piece of code appears in the resource loaded by the URL...

        http://localhost:8080/html/js/everything.jsp?browserId=firefox&themeId=classic&colorSchemeId=01&minifierType=js&minifierBundleId=javascript.everything.files&languageId=en_US&t=1298669854000

        ...which is loaded by Liferay and seems to concatenate various Javascripts from their own YUI library, which is located in /ROOT/html/js/aui. I haven't tried this, but perhaps this error would disappear if we revert to YUI 3.1.1 ??

        Show
        Arturo Zambrano added a comment - I discovered that Liferay 6 is already using its own modified version of YUI, and they are basing it on YUI 3.2.0. So, most likely there is a conflict between their version and ours. Perhaps that's why this is not happening on Liferay 5 as I understand from Deryk (I haven't been able to find Liferay 5 for download). The error that I see on firebug is "O._loaded [q] is undefined", which appears 3 times or 5 times if you're logged in as the administrator. This piece of code appears in the resource loaded by the URL... http://localhost:8080/html/js/everything.jsp?browserId=firefox&themeId=classic&colorSchemeId=01&minifierType=js&minifierBundleId=javascript.everything.files&languageId=en_US&t=1298669854000 ...which is loaded by Liferay and seems to concatenate various Javascripts from their own YUI library, which is located in /ROOT/html/js/aui. I haven't tried this, but perhaps this error would disappear if we revert to YUI 3.1.1 ??
        Hide
        Deryk Sinotte added a comment -

        There's a known conflict running two instances of YUI (ours and Liferay's) as documented in ICE-6164 so I wouldn't waste too many cycles trying to fix that problem.

        You can download the last version of Liferay 5 (5.2.3) from SourceForge: http://sourceforge.net/projects/lportal/files/Liferay%20Portal/5.2.3/.

        The link that you note from the second last comment, does show the Liferay request params but I don't seen any resource being requested there (ie javax.faces.resource or a css or js or image file). Looks to be simply an empty request to the home portal page. I'll do some more digging myself this morning and see if I can shed some more light on it.

        Show
        Deryk Sinotte added a comment - There's a known conflict running two instances of YUI (ours and Liferay's) as documented in ICE-6164 so I wouldn't waste too many cycles trying to fix that problem. You can download the last version of Liferay 5 (5.2.3) from SourceForge: http://sourceforge.net/projects/lportal/files/Liferay%20Portal/5.2.3/ . The link that you note from the second last comment, does show the Liferay request params but I don't seen any resource being requested there (ie javax.faces.resource or a css or js or image file). Looks to be simply an empty request to the home portal page. I'll do some more digging myself this morning and see if I can shed some more light on it.
        Hide
        Deryk Sinotte added a comment -

        So, I ran all the ACE components on Liferay 5.2.3 using the latest trunk of the PortletFaces bridge (rev 1004) and the latest code from icefaces2/branches/icefaces-2.0.x-maintenance (rev 24358).

        While things are still a bit dicey, there is some hope. For example, the Checkbox demo seems to work fairly nicely now and there is partial success in some of the other demos - you can slide the horizontal slider now.

        There seem to be about 3 general problems that affect one or more of the different examples:

        1) During certain interactions in several of the demos I'm seeing the NPE that Neil originally mentioned with the FileEntry component. I also see this in tabs, slider, etc - it seems to depend on how things are submitted. Neil is currently working on this and will update us when he has some progress and something for us to try.

        2) There are still missing resources for certain images and I'm not quite sure why yet. I've attached screen snaps of the portlet running beside Firebug showing the problem in ace-slider-portlets.png (thumb-x.png) and ace-tabs-portlet.png (employee.gif). Resources appear to be loaded with a number of different strategies - some appear to work and others don't. Will continue to investigate this.

        3) With the Animation example, I'm seeing a JavaScript error in the console as per ace-animation-portlets.png. Not sure if this is related to a YUI loader problem or the regex changes or what.

        Show
        Deryk Sinotte added a comment - So, I ran all the ACE components on Liferay 5.2.3 using the latest trunk of the PortletFaces bridge (rev 1004) and the latest code from icefaces2/branches/icefaces-2.0.x-maintenance (rev 24358). While things are still a bit dicey, there is some hope. For example, the Checkbox demo seems to work fairly nicely now and there is partial success in some of the other demos - you can slide the horizontal slider now. There seem to be about 3 general problems that affect one or more of the different examples: 1) During certain interactions in several of the demos I'm seeing the NPE that Neil originally mentioned with the FileEntry component. I also see this in tabs, slider, etc - it seems to depend on how things are submitted. Neil is currently working on this and will update us when he has some progress and something for us to try. 2) There are still missing resources for certain images and I'm not quite sure why yet. I've attached screen snaps of the portlet running beside Firebug showing the problem in ace-slider-portlets.png (thumb-x.png) and ace-tabs-portlet.png (employee.gif). Resources appear to be loaded with a number of different strategies - some appear to work and others don't. Will continue to investigate this. 3) With the Animation example, I'm seeing a JavaScript error in the console as per ace-animation-portlets.png. Not sure if this is related to a YUI loader problem or the regex changes or what.
        Hide
        Deryk Sinotte added a comment -

        After updating the PortletFaces bridge and applying the patch recommended by Neil in http://jira.icefaces.org/browse/ICE-6765, the following ACE components now appear to work in Liferay 5 when placed individually on a portal page:

        Checkbox, Date and Time, File Entry, Link Button (looks to be working just need to double-check that the buttons are doing what's expected), Slider

        Right now having more than one portlet on the same portal page seems unreliable. Perhaps the YUI loader code is getting confused when a second portlet gets dynamically added. If I use two portlets (like checkbox and slider) that work fine individually, they have problems when they are on the page together, even after a reload.

        The following component examples have various issues:

        Animation still has the JavaScript error. The tabs themselves seem mostly functional. The first click or two doesn't appear to work properly but after that you can change tabs. There is no animation however for the tabs. The mouse hover seems fine.

        Push Button throws the following exception:

        java.io.FileNotFoundException
        at org.apache.naming.resources.DirContextURLConnection.getInputStream(DirContextURLConnection.java:364)
        at com.sun.faces.facelets.impl.DefaultFaceletCache._getLastModified(DefaultFaceletCache.java:172)
        at com.sun.faces.facelets.impl.DefaultFaceletCache.access$000(DefaultFaceletCache.java:62)
        at com.sun.faces.facelets.impl.DefaultFaceletCache$1.newInstance(DefaultFaceletCache.java:82)
        at com.sun.faces.facelets.impl.DefaultFaceletCache$1.newInstance(DefaultFaceletCache.java:78)
        at com.sun.faces.util.ExpiringConcurrentCache$1.call(ExpiringConcurrentCache.java:99)
        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
        at java.util.concurrent.FutureTask.run(FutureTask.java:138)
        at com.sun.faces.util.ExpiringConcurrentCache.get(ExpiringConcurrentCache.java:114)
        at com.sun.faces.facelets.impl.DefaultFaceletCache.getFacelet(DefaultFaceletCache.java:121)
        at com.sun.faces.facelets.impl.DefaultFaceletCache.getFacelet(DefaultFaceletCache.java:62)
        at com.sun.faces.facelets.impl.DefaultFaceletFactory.getFacelet(DefaultFaceletFactory.java:256)
        at com.sun.faces.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:366)
        at com.sun.faces.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:346)
        at com.sun.faces.facelets.impl.DefaultFaceletContext.includeFacelet(DefaultFaceletContext.java:199)
        at com.sun.faces.facelets.tag.ui.IncludeHandler.apply(IncludeHandler.java:120)
        at javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:137)
        at com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:188)
        at javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:120)
        at javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:137)
        at com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:188)
        at javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:120)
        at javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:98)
        at com.sun.faces.facelets.tag.jsf.core.ViewHandler.apply(ViewHandler.java:164)
        at javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:98)
        at com.sun.faces.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:93)
        at javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:98)
        at com.sun.faces.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:86)
        at com.sun.faces.facelets.impl.DefaultFacelet.apply(DefaultFacelet.java:152)
        at com.sun.faces.application.view.FaceletViewHandlingStrategy.buildView(FaceletViewHandlingStrategy.java:769)
        at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:100)
        at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
        at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
        at org.portletfaces.bridge.BridgeImpl.doFacesRequest(BridgeImpl.java:434)
        at org.portletfaces.bridge.GenericFacesPortlet.doView(GenericFacesPortlet.java:181)
        at javax.portlet.GenericPortlet.doDispatch(GenericPortlet.java:328)
        at javax.portlet.GenericPortlet.render(GenericPortlet.java:233)
        at com.sun.portal.portletcontainer.appengine.filter.FilterChainImpl.doFilter(FilterChainImpl.java:126)
        at com.liferay.portal.kernel.portlet.PortletFilterUtil.doFilter(PortletFilterUtil.java:69)
        at com.liferay.portal.kernel.servlet.PortletServlet.service(PortletServlet.java:100)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:630)
        at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:535)
        at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:472)
        at com.liferay.portlet.InvokerPortletImpl.invoke(InvokerPortletImpl.java:618)
        at com.liferay.portlet.InvokerPortletImpl.invokeRender(InvokerPortletImpl.java:700)
        at com.liferay.portlet.InvokerPortletImpl.render(InvokerPortletImpl.java:419)
        at org.apache.jsp.html.portal.render_005fportlet_jsp._jspService(Unknown Source)
        at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
        at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
        at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
        at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:630)
        at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:535)
        at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:472)
        at com.liferay.portal.util.PortalImpl.renderPortlet(PortalImpl.java:2884)
        at com.liferay.portal.util.PortalUtil.renderPortlet(PortalUtil.java:897)
        at com.liferay.portlet.layoutconfiguration.util.RuntimePortletUtil.processPortlet(RuntimePortletUtil.java:170)
        at com.liferay.portlet.layoutconfiguration.util.RuntimePortletUtil.processPortlet(RuntimePortletUtil.java:103)
        at com.liferay.portlet.layoutconfiguration.util.RuntimePortletUtil.processTemplate(RuntimePortletUtil.java:281)
        at com.liferay.portlet.layoutconfiguration.util.RuntimePortletUtil.processTemplate(RuntimePortletUtil.java:190)
        at org.apache.jsp.html.portal.layout.view.portlet_jsp._jspService(Unknown Source)
        at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
        at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
        at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
        at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:630)
        at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:535)
        at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:472)
        at com.liferay.portal.action.LayoutAction.includeLayoutContent(LayoutAction.java:294)
        at com.liferay.portal.action.LayoutAction.processLayout(LayoutAction.java:471)
        at com.liferay.portal.action.LayoutAction.execute(LayoutAction.java:195)
        at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
        at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
        at com.liferay.portal.struts.PortalRequestProcessor.process(PortalRequestProcessor.java:157)
        at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
        at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
        at com.liferay.portal.servlet.MainServlet.callParentService(MainServlet.java:608)
        at com.liferay.portal.servlet.MainServlet.service(MainServlet.java:846)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:630)
        at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436)
        at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374)
        at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)
        at com.liferay.portal.servlet.FriendlyURLServlet.service(FriendlyURLServlet.java:143)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154)
        at com.liferay.portal.servlet.filters.strip.StripFilter.processFilter(StripFilter.java:142)
        at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:91)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154)
        at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:94)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154)
        at com.liferay.portal.servlet.filters.gzip.GZipFilter.processFilter(GZipFilter.java:140)
        at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:91)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154)
        at com.liferay.portal.servlet.filters.secure.SecureFilter.processFilter(SecureFilter.java:282)
        at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:91)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154)
        at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:94)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154)
        at com.liferay.portal.servlet.filters.cache.CacheFilter.processFilter(CacheFilter.java:425)
        at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:91)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154)
        at com.liferay.portal.servlet.filters.autologin.AutoLoginFilter.processFilter(AutoLoginFilter.java:257)
        at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:91)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154)
        at com.liferay.portal.servlet.filters.sso.opensso.OpenSSOFilter.processFilter(OpenSSOFilter.java:73)
        at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:91)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154)
        at com.liferay.portal.sharepoint.SharepointFilter.processFilter(SharepointFilter.java:193)
        at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:91)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154)
        at com.liferay.portal.servlet.filters.virtualhost.VirtualHostFilter.doFilter(VirtualHostFilter.java:191)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154)
        at com.liferay.portal.servlet.filters.threadlocalcache.ThreadLocalCacheFilter.processFilter(ThreadLocalCacheFilter.java:55)
        at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:91)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154)
        at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:94)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.tuckey.web.filters.urlrewrite.UrlRewriteFilter.doFilter(UrlRewriteFilter.java:738)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
        at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:433)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
        at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
        at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
        at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
        at java.lang.Thread.run(Thread.java:680)

        The 3 types of tab sets appear to work functionally for the most part. Styling issues but clicking on the tabs works. The "proxy" version doesn't prevent me from switching tabs even when I haven't entered anything.

        Show
        Deryk Sinotte added a comment - After updating the PortletFaces bridge and applying the patch recommended by Neil in http://jira.icefaces.org/browse/ICE-6765 , the following ACE components now appear to work in Liferay 5 when placed individually on a portal page: Checkbox, Date and Time, File Entry, Link Button (looks to be working just need to double-check that the buttons are doing what's expected), Slider Right now having more than one portlet on the same portal page seems unreliable. Perhaps the YUI loader code is getting confused when a second portlet gets dynamically added. If I use two portlets (like checkbox and slider) that work fine individually, they have problems when they are on the page together, even after a reload. The following component examples have various issues: Animation still has the JavaScript error. The tabs themselves seem mostly functional. The first click or two doesn't appear to work properly but after that you can change tabs. There is no animation however for the tabs. The mouse hover seems fine. Push Button throws the following exception: java.io.FileNotFoundException at org.apache.naming.resources.DirContextURLConnection.getInputStream(DirContextURLConnection.java:364) at com.sun.faces.facelets.impl.DefaultFaceletCache._getLastModified(DefaultFaceletCache.java:172) at com.sun.faces.facelets.impl.DefaultFaceletCache.access$000(DefaultFaceletCache.java:62) at com.sun.faces.facelets.impl.DefaultFaceletCache$1.newInstance(DefaultFaceletCache.java:82) at com.sun.faces.facelets.impl.DefaultFaceletCache$1.newInstance(DefaultFaceletCache.java:78) at com.sun.faces.util.ExpiringConcurrentCache$1.call(ExpiringConcurrentCache.java:99) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at com.sun.faces.util.ExpiringConcurrentCache.get(ExpiringConcurrentCache.java:114) at com.sun.faces.facelets.impl.DefaultFaceletCache.getFacelet(DefaultFaceletCache.java:121) at com.sun.faces.facelets.impl.DefaultFaceletCache.getFacelet(DefaultFaceletCache.java:62) at com.sun.faces.facelets.impl.DefaultFaceletFactory.getFacelet(DefaultFaceletFactory.java:256) at com.sun.faces.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:366) at com.sun.faces.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:346) at com.sun.faces.facelets.impl.DefaultFaceletContext.includeFacelet(DefaultFaceletContext.java:199) at com.sun.faces.facelets.tag.ui.IncludeHandler.apply(IncludeHandler.java:120) at javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:137) at com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:188) at javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:120) at javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:137) at com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:188) at javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:120) at javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:98) at com.sun.faces.facelets.tag.jsf.core.ViewHandler.apply(ViewHandler.java:164) at javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:98) at com.sun.faces.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:93) at javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:98) at com.sun.faces.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:86) at com.sun.faces.facelets.impl.DefaultFacelet.apply(DefaultFacelet.java:152) at com.sun.faces.application.view.FaceletViewHandlingStrategy.buildView(FaceletViewHandlingStrategy.java:769) at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:100) at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101) at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139) at org.portletfaces.bridge.BridgeImpl.doFacesRequest(BridgeImpl.java:434) at org.portletfaces.bridge.GenericFacesPortlet.doView(GenericFacesPortlet.java:181) at javax.portlet.GenericPortlet.doDispatch(GenericPortlet.java:328) at javax.portlet.GenericPortlet.render(GenericPortlet.java:233) at com.sun.portal.portletcontainer.appengine.filter.FilterChainImpl.doFilter(FilterChainImpl.java:126) at com.liferay.portal.kernel.portlet.PortletFilterUtil.doFilter(PortletFilterUtil.java:69) at com.liferay.portal.kernel.servlet.PortletServlet.service(PortletServlet.java:100) at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:630) at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:535) at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:472) at com.liferay.portlet.InvokerPortletImpl.invoke(InvokerPortletImpl.java:618) at com.liferay.portlet.InvokerPortletImpl.invokeRender(InvokerPortletImpl.java:700) at com.liferay.portlet.InvokerPortletImpl.render(InvokerPortletImpl.java:419) at org.apache.jsp.html.portal.render_005fportlet_jsp._jspService(Unknown Source) at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267) at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:630) at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:535) at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:472) at com.liferay.portal.util.PortalImpl.renderPortlet(PortalImpl.java:2884) at com.liferay.portal.util.PortalUtil.renderPortlet(PortalUtil.java:897) at com.liferay.portlet.layoutconfiguration.util.RuntimePortletUtil.processPortlet(RuntimePortletUtil.java:170) at com.liferay.portlet.layoutconfiguration.util.RuntimePortletUtil.processPortlet(RuntimePortletUtil.java:103) at com.liferay.portlet.layoutconfiguration.util.RuntimePortletUtil.processTemplate(RuntimePortletUtil.java:281) at com.liferay.portlet.layoutconfiguration.util.RuntimePortletUtil.processTemplate(RuntimePortletUtil.java:190) at org.apache.jsp.html.portal.layout.view.portlet_jsp._jspService(Unknown Source) at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267) at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:630) at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:535) at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:472) at com.liferay.portal.action.LayoutAction.includeLayoutContent(LayoutAction.java:294) at com.liferay.portal.action.LayoutAction.processLayout(LayoutAction.java:471) at com.liferay.portal.action.LayoutAction.execute(LayoutAction.java:195) at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431) at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236) at com.liferay.portal.struts.PortalRequestProcessor.process(PortalRequestProcessor.java:157) at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196) at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414) at javax.servlet.http.HttpServlet.service(HttpServlet.java:617) at com.liferay.portal.servlet.MainServlet.callParentService(MainServlet.java:608) at com.liferay.portal.servlet.MainServlet.service(MainServlet.java:846) at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:630) at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436) at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374) at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302) at com.liferay.portal.servlet.FriendlyURLServlet.service(FriendlyURLServlet.java:143) at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154) at com.liferay.portal.servlet.filters.strip.StripFilter.processFilter(StripFilter.java:142) at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:91) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154) at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:94) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154) at com.liferay.portal.servlet.filters.gzip.GZipFilter.processFilter(GZipFilter.java:140) at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:91) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154) at com.liferay.portal.servlet.filters.secure.SecureFilter.processFilter(SecureFilter.java:282) at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:91) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154) at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:94) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154) at com.liferay.portal.servlet.filters.cache.CacheFilter.processFilter(CacheFilter.java:425) at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:91) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154) at com.liferay.portal.servlet.filters.autologin.AutoLoginFilter.processFilter(AutoLoginFilter.java:257) at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:91) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154) at com.liferay.portal.servlet.filters.sso.opensso.OpenSSOFilter.processFilter(OpenSSOFilter.java:73) at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:91) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154) at com.liferay.portal.sharepoint.SharepointFilter.processFilter(SharepointFilter.java:193) at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:91) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154) at com.liferay.portal.servlet.filters.virtualhost.VirtualHostFilter.doFilter(VirtualHostFilter.java:191) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154) at com.liferay.portal.servlet.filters.threadlocalcache.ThreadLocalCacheFilter.processFilter(ThreadLocalCacheFilter.java:55) at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:91) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154) at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:94) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.tuckey.web.filters.urlrewrite.UrlRewriteFilter.doFilter(UrlRewriteFilter.java:738) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:433) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) at java.lang.Thread.run(Thread.java:680) The 3 types of tab sets appear to work functionally for the most part. Styling issues but clicking on the tabs works. The "proxy" version doesn't prevent me from switching tabs even when I haven't entered anything.
        Hide
        Ken Fyten added a comment -

        This JIRA that Mark is currently working on might have a positive impact on the multiple portlet situation: http://jira.icefaces.org/browse/ICE-6698. So I would suggest we keep focussed on getting individual ace components working and looking correctly when they are the only portlet on the page for now.

        Show
        Ken Fyten added a comment - This JIRA that Mark is currently working on might have a positive impact on the multiple portlet situation: http://jira.icefaces.org/browse/ICE-6698 . So I would suggest we keep focussed on getting individual ace components working and looking correctly when they are the only portlet on the page for now.
        Hide
        Deryk Sinotte added a comment -

        The original issue with the regex for portlets appears to be fixed so I recommend resolving this case as fixed. Separate JIRAs for other specific issues can be created as required.

        Show
        Deryk Sinotte added a comment - The original issue with the regex for portlets appears to be fixed so I recommend resolving this case as fixed. Separate JIRAs for other specific issues can be created as required.

          People

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

            Dates

            • Created:
              Updated:
              Resolved: