ICEfaces
  1. ICEfaces
  2. ICE-7600

The "raw" CSS resource URLs can't be resolved when running in portlets

    Details

    • Type: Improvement Improvement
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 3.0.RC1
    • Fix Version/s: 3.0.RC2, 3.0
    • Component/s: Sample Apps
    • Labels:
      None
    • Environment:
      ICEfaces 3 ACE Showcase Portlets
    • Affects:
      Sample App./Tutorial

      Description

      Portlets rely on different URL semantics than normal web applications. The way we handle this in our theme.css file is to use the 'resource' expression language tactic. Since CSS files are processed for EL, you can specify resources in a way that makes them work whether they are installed as a plain application or a portlet (as the PortletFaces Bridge now gets to help construct the appropriate URL for the portlet container). So in the theme.css files we see URLs that are constructed as follows:

       url("#{resource['icefaces.ace:themes/rime/images/ui-bg_inset-hard_100_eeeeee_1x100.png']}"

      The CSS files that we include with the showcase example use "raw" URLs. For example, in showcase_styles.css we have:

      .ice-checkboxbutton .ui-state-active {
          background: url("/resources/css/images/success24.png") no-repeat;
          border: 1px;
          border-style: solid;
      }

      Unfortunately, if the resource location is not done correctly, it won't work properly in both environments. It would be better to adjust them as follow:

      .ice-checkboxbutton .ui-state-active {
          background: url("#{resource['css/images/success24.png']}") no-repeat;
          border: 1px;
          border-style: solid;
      }

        People

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

          Dates

          • Created:
            Updated:
            Resolved: