ICEfaces
  1. ICEfaces
  2. ICE-605

Runtime compatibility for JSF 1.2 implementations with Facelets

    Details

    • Type: New Feature New Feature
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 1.5
    • Fix Version/s: 1.6DR#3, 1.6
    • Component/s: Framework
    • Labels:
      None
    • Environment:
      Operating System: All
      Platform: All
      Glassfish App. Server (Sun JSF 1.2 runtime) v9.0_01
    • Affects:
      Documentation (User Guide, Ref. Guide, etc.), Sample App./Tutorial, Compatibility/Configuration

      Description

      ICEfaces needs to be runnable on JSF 1.2 based JSF runtimes.

      Target v1.1.

        Activity

        Ken Fyten created issue -
        Hide
        Ted Goddard added a comment -

        AuctionMonitor is now basically running again under JSF 1.2 (some static text problems and complaints
        about missing navigation rules, but the clocks tick and the application is interactive):

        svn commit src/com/icesoft/faces/webapp/parser/ELSetPropertiesRule.java -m "fixed digester
        behavior under JSF 1.2 (ICE-605)"
        Sending src/com/icesoft/faces/webapp/parser/ELSetPropertiesRule.java
        Transmitting file data .
        Committed revision 8487.

        Also checked in FCS versions of the JSF 1.2 jars:

        svn commit 3rd/javaee/lib/ -m "checking in JSF 1.2 from SUNWappserver Java EE 5 (ICE-605)"
        Sending 3rd/javaee/lib/javaee.jar
        Sending 3rd/javaee/lib/jsf-impl.jar
        Transmitting file data ..
        Committed revision 8488.

        To run ICEfaces under JSF 1.2 it is important to build it without jsf-api.jar and jsf-impl.jar in the .war
        file.

        Show
        Ted Goddard added a comment - AuctionMonitor is now basically running again under JSF 1.2 (some static text problems and complaints about missing navigation rules, but the clocks tick and the application is interactive): svn commit src/com/icesoft/faces/webapp/parser/ELSetPropertiesRule.java -m "fixed digester behavior under JSF 1.2 ( ICE-605 )" Sending src/com/icesoft/faces/webapp/parser/ELSetPropertiesRule.java Transmitting file data . Committed revision 8487. Also checked in FCS versions of the JSF 1.2 jars: svn commit 3rd/javaee/lib/ -m "checking in JSF 1.2 from SUNWappserver Java EE 5 ( ICE-605 )" Sending 3rd/javaee/lib/javaee.jar Sending 3rd/javaee/lib/jsf-impl.jar Transmitting file data .. Committed revision 8488. To run ICEfaces under JSF 1.2 it is important to build it without jsf-api.jar and jsf-impl.jar in the .war file.
        Hide
        Ken Fyten added a comment -

        The ability to run icefaces on JSF 1.2 runtimes is becoming more of a
        requirement in the community.

        Show
        Ken Fyten added a comment - The ability to run icefaces on JSF 1.2 runtimes is becoming more of a requirement in the community.
        Icefaces Administrator made changes -
        Field Original Value New Value
        issue.field.bugzillaimportkey 609 11874
        Ken Fyten made changes -
        Affects Version/s 1.5 [ 10027 ]
        Affects Version/s 1.0 [ 10024 ]
        Hide
        Ken Fyten added a comment -

        Initial target is to support JSF 1.2 runtimes with Facelets only.

        Show
        Ken Fyten added a comment - Initial target is to support JSF 1.2 runtimes with Facelets only.
        Ken Fyten made changes -
        Priority Minor [ 4 ] Major [ 3 ]
        Hide
        Ken Fyten added a comment -

        Carlo, please run some verifications of the current trunk using facelets (facelets Showcase?) on JSF 1.2 runtimes, perhaps GlassFish.

        Show
        Ken Fyten added a comment - Carlo, please run some verifications of the current trunk using facelets (facelets Showcase?) on JSF 1.2 runtimes, perhaps GlassFish.
        Ken Fyten made changes -
        Assignee Ted Goddard [ ted.goddard ] Carlo Gug [ carlo.guglielmin ]
        Hide
        Carlo Guglielmin added a comment -

        I tested the trunk version of component showcase (as build.facelet.war) and icefaces with the Glassfish server and jsf 1.2 libs, on Firefox 2.0.0.3 Linux. Glassfish required adding a few parameters to the <web-app> tag in web.xml so it would deploy fine.

        – Application Issues –

        General...

        The copyright line at the bottom rendered as:
        "© 2006 ICEsoft Technologies Inc.  �  Toll Free: 1-877-263-3822 USA and Canada"

        Stylesheets...

        Javascript error console complaint about the MIME type of our xp.css stylesheet. I believe this is just tighter restrictions by Glassfish and jsf 1.2. The error is:

        Error: The stylesheet http://localhost:8080/component-showcase/xmlhttp/css/xp/xp.css was not loaded because its MIME type, "text/plain", is not "text/css".

        The line in question is:
        <link rel='stylesheet' type='text/css' href='./xmlhttp/css/xp/xp.css'/>
        Whereas our other stylesheet link throws no errors:
        <link href="css/showcase_style.css" rel="stylesheet" type="text/css"></link>

        The fix could be as simple as changing the link closing from /> to ></link>.

        Note that because of this error, the testing below was done with 'broken' styles.

        Components...
        All components except the following seemed fine:

        Drag and Drop
        I could drag the targets from the left column, and the yellow highlight effect was fired properly when hovered over the drop target. But when I dropped the item into the cart, it didn't add to the column on the right.

        Table Row Selection
        When I clicked on a row in the left column, it would not add to the right column.

        Position Panel
        I could drag and drop names in the left table, but it did not affect the order of the right table.

        Show
        Carlo Guglielmin added a comment - I tested the trunk version of component showcase (as build.facelet.war) and icefaces with the Glassfish server and jsf 1.2 libs, on Firefox 2.0.0.3 Linux. Glassfish required adding a few parameters to the <web-app> tag in web.xml so it would deploy fine. – Application Issues – General... The copyright line at the bottom rendered as: "© 2006 ICEsoft Technologies Inc.  â?¢  Toll Free: 1-877-263-3822 USA and Canada" Stylesheets... Javascript error console complaint about the MIME type of our xp.css stylesheet. I believe this is just tighter restrictions by Glassfish and jsf 1.2. The error is: Error: The stylesheet http://localhost:8080/component-showcase/xmlhttp/css/xp/xp.css was not loaded because its MIME type, "text/plain", is not "text/css". The line in question is: <link rel='stylesheet' type='text/css' href='./xmlhttp/css/xp/xp.css'/> Whereas our other stylesheet link throws no errors: <link href="css/showcase_style.css" rel="stylesheet" type="text/css"></link> The fix could be as simple as changing the link closing from /> to ></link>. Note that because of this error, the testing below was done with 'broken' styles. Components... All components except the following seemed fine: Drag and Drop I could drag the targets from the left column, and the yellow highlight effect was fired properly when hovered over the drop target. But when I dropped the item into the cart, it didn't add to the column on the right. Table Row Selection When I clicked on a row in the left column, it would not add to the right column. Position Panel I could drag and drop names in the left table, but it did not affect the order of the right table.
        Hide
        Carlo Guglielmin added a comment -

        r13426: Modified our ServeCSSResource servlet to explicitly set the content type to 'text/css', as the default 'text/plain' was causing the issue mentioned above about loading xp.css.

        Show
        Carlo Guglielmin added a comment - r13426: Modified our ServeCSSResource servlet to explicitly set the content type to 'text/css', as the default 'text/plain' was causing the issue mentioned above about loading xp.css.
        Hide
        Ken Fyten added a comment -

        Assign to Rob to investigate these issues:

        Drag and Drop
        I could drag the targets from the left column, and the yellow highlight effect was fired properly when hovered over the drop target. But when I dropped the item into the cart, it didn't add to the column on the right.

        Table Row Selection
        When I clicked on a row in the left column, it would not add to the right column.

        Position Panel
        I could drag and drop names in the left table, but it did not affect the order of the right table.

        Show
        Ken Fyten added a comment - Assign to Rob to investigate these issues: Drag and Drop I could drag the targets from the left column, and the yellow highlight effect was fired properly when hovered over the drop target. But when I dropped the item into the cart, it didn't add to the column on the right. Table Row Selection When I clicked on a row in the left column, it would not add to the right column. Position Panel I could drag and drop names in the left table, but it did not affect the order of the right table.
        Ken Fyten made changes -
        Assignee Carlo Gug [ carlo.guglielmin ] Rob Mayhew [ rob.mayhew ]
        Ken Fyten made changes -
        Fix Version/s 1.6DR#3 [ 10050 ]
        Fix Version/s 1.6 [ 10031 ]
        Affects [Documentation (User Guide, Ref. Guide, etc.), Compatibility/Configuration]
        Assignee Priority P1
        Ken Fyten made changes -
        Environment Operating System: All
        Platform: All
        Operating System: All
        Platform: All
        Glassfish App. Server (Sun JSF 1.2 runtime) v9.0_01
        Rob Mayhew made changes -
        Status Open [ 1 ] In Progress [ 3 ]
        Hide
        Rob Mayhew added a comment -

        The problem is that Method Bindings are not being set, JSF 1.2 is not calling setValueBinding in the component or setProperties in the tag. Still investigating.

        Show
        Rob Mayhew added a comment - The problem is that Method Bindings are not being set, JSF 1.2 is not calling setValueBinding in the component or setProperties in the tag. Still investigating.
        Rob Mayhew made changes -
        Status In Progress [ 3 ] Open [ 1 ]
        Ken Fyten made changes -
        Assignee Rob Mayhew [ rob.mayhew ] Mark Collette [ mark.collette ]
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #13498 Tue Apr 10 16:02:12 MDT 2007 rob.mayhew ICE-605 added method biding generation for tags.
        Files Changed
        Commit graph MODIFY /icefaces/trunk/icefaces/component-metadata/src/main/resources/conf/ice_cust_properties/cust-paneltabset-props.xml
        Commit graph MODIFY /icefaces/trunk/icefaces/component-metadata/src/main/resources/conf/ice_cust_properties/cust-rowselector-props.xml
        Commit graph MODIFY /icefaces/trunk/icefaces/component-metadata/src/main/java/com/icesoft/metadata/generators/TagLibraryGenerator.java
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #13499 Tue Apr 10 16:06:29 MDT 2007 rob.mayhew Checkin for ICE-605, missed import
        Files Changed
        Commit graph MODIFY /icefaces/trunk/icefaces/component-metadata/src/main/java/com/icesoft/metadata/generators/TagLibraryGenerator.java
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #13500 Tue Apr 10 16:17:40 MDT 2007 rob.mayhew Checkin for ICE-605, removed import
        Files Changed
        Commit graph MODIFY /icefaces/trunk/icefaces/component-metadata/src/main/java/com/icesoft/metadata/generators/TagLibraryGenerator.java
        Hide
        Rob Mayhew added a comment -

        Checked in generator changes to add Method Bindings for all tags that need them.
        r13498

        Show
        Rob Mayhew added a comment - Checked in generator changes to add Method Bindings for all tags that need them. r13498
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #13504 Wed Apr 11 14:16:06 MDT 2007 mark.collette ICE-605 : Runtime compatibility for JSF 1.2 implementations. Removed Facelets' reliance on overriding UIComponents' setValueBinding for MethodBindings
        Files Changed
        Commit graph ADD /icefaces/trunk/icefaces/component/src/com/icesoft/faces/component/facelets
        Commit graph ADD /icefaces/trunk/icefaces/core/src/com/icesoft/faces/el/LiteralBooleanMethodBinding.java
        Commit graph MODIFY /icefaces/trunk/icefaces/component-metadata/src/main/resources/conf/ice_cust_properties/cust-outputchart-props.xml
        Commit graph MODIFY /icefaces/trunk/icefaces/component/src/com/icesoft/faces/component/inputfile/InputFile.java
        Commit graph MODIFY /icefaces/trunk/icefaces/component/src/com/icesoft/faces/component/ext/RowSelector.java
        Commit graph MODIFY /icefaces/trunk/icefaces/component/src/com/icesoft/faces/component/panelpositioned/PanelPositioned.java
        Commit graph MODIFY /icefaces/trunk/icefaces/component/src/com/icesoft/faces/component/paneltabset/PanelTabSet.java
        Commit graph MODIFY /icefaces/trunk/icefaces/component/src/com/icesoft/faces/component/ext/HtmlPanelGroup.java
        Commit graph ADD /icefaces/trunk/icefaces/component/src/com/icesoft/faces/component/facelets/IceComponentHandler.java
        Commit graph MODIFY /icefaces/trunk/icefaces/component/conf/META-INF/facelet/icefaces.taglib.xml
        Commit graph MODIFY /icefaces/trunk/icefaces/component-metadata/src/main/java/com/icesoft/metadata/generators/TagLibraryGenerator.java
        Commit graph MODIFY /icefaces/trunk/icefaces/component/src/com/icesoft/faces/component/outputchart/OutputChart.java
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/parser/TagToComponentMap.java
        Hide
        Mark Collette added a comment -

        Removed Facelets' reliance on overriding UIComponents' setValueBinding for MethodBindings. Tested MethodBindings with JSF 1.1 JSP, JSF 1.1 Facelets, JSF 1.2 Facelets.

        List of MethodBindings:

        ice:panelGroup
        com.icesoft.faces.component.ext.HtmlPanelGroup
        void dragListener(DragEvent)
        void dropListener(DropEvent)

        ice:rowSelector
        com.icesoft.faces.component.ext.RowSelector
        void selectionListener(RowSelectorEvent)
        void selectionAction()

        ice:inputFile
        com.icesoft.faces.component.inputfile.InputFile
        void progressListener(EventObject)

        ice:outputChart
        com.icesoft.faces.component.outputchart.OutputChart
        void renderOnSubmit(OutputChart) ** Attribute can be a Boolean or MethodBinding

        ice:panelPositioned
        com.icesoft.faces.component.panelpositioned.PanelPositioned
        void listener(PanelPositionedEvent)

        ice:panelTabSet
        com.icesoft.faces.component.paneltabset.PanelTabSet
        void tabChangeListener(TabChangeEvent)

        Subversion 13504
        icefaces\component-metadata\src\main\java\com\icesoft\metadata\generators\TagLibraryGenerator.java
        icefaces\component-metadata\src\main\resources\conf\ice_cust_properties\cust-outputchart-props.xml
        icefaces\component\conf\META-INF\facelet\icefaces.taglib.xml
        icefaces\component\src\com\icesoft\faces\component\ext\HtmlPanelGroup.java
        icefaces\component\src\com\icesoft\faces\component\ext\RowSelector.java
        icefaces\component\src\com\icesoft\faces\component\inputfile\InputFile.java
        icefaces\component\src\com\icesoft\faces\component\outputchart\OutputChart.java
        icefaces\component\src\com\icesoft\faces\component\panelpositioned\PanelPositioned.java
        icefaces\component\src\com\icesoft\faces\component\paneltabset\PanelTabSet.java
        icefaces\core\src\com\icesoft\faces\webapp\parser\TagToComponentMap.java
        icefaces\component\src\com\icesoft\faces\component\facelets\IceComponentHandler.java
        icefaces\core\src\com\icesoft\faces\el\LiteralBooleanMethodBinding.java

        Show
        Mark Collette added a comment - Removed Facelets' reliance on overriding UIComponents' setValueBinding for MethodBindings. Tested MethodBindings with JSF 1.1 JSP, JSF 1.1 Facelets, JSF 1.2 Facelets. List of MethodBindings: ice:panelGroup com.icesoft.faces.component.ext.HtmlPanelGroup void dragListener(DragEvent) void dropListener(DropEvent) ice:rowSelector com.icesoft.faces.component.ext.RowSelector void selectionListener(RowSelectorEvent) void selectionAction() ice:inputFile com.icesoft.faces.component.inputfile.InputFile void progressListener(EventObject) ice:outputChart com.icesoft.faces.component.outputchart.OutputChart void renderOnSubmit(OutputChart) ** Attribute can be a Boolean or MethodBinding ice:panelPositioned com.icesoft.faces.component.panelpositioned.PanelPositioned void listener(PanelPositionedEvent) ice:panelTabSet com.icesoft.faces.component.paneltabset.PanelTabSet void tabChangeListener(TabChangeEvent) Subversion 13504 icefaces\component-metadata\src\main\java\com\icesoft\metadata\generators\TagLibraryGenerator.java icefaces\component-metadata\src\main\resources\conf\ice_cust_properties\cust-outputchart-props.xml icefaces\component\conf\META-INF\facelet\icefaces.taglib.xml icefaces\component\src\com\icesoft\faces\component\ext\HtmlPanelGroup.java icefaces\component\src\com\icesoft\faces\component\ext\RowSelector.java icefaces\component\src\com\icesoft\faces\component\inputfile\InputFile.java icefaces\component\src\com\icesoft\faces\component\outputchart\OutputChart.java icefaces\component\src\com\icesoft\faces\component\panelpositioned\PanelPositioned.java icefaces\component\src\com\icesoft\faces\component\paneltabset\PanelTabSet.java icefaces\core\src\com\icesoft\faces\webapp\parser\TagToComponentMap.java icefaces\component\src\com\icesoft\faces\component\facelets\IceComponentHandler.java icefaces\core\src\com\icesoft\faces\el\LiteralBooleanMethodBinding.java
        Hide
        Mark Collette added a comment -

        Back to you, for subsequent issues.

        Show
        Mark Collette added a comment - Back to you, for subsequent issues.
        Mark Collette made changes -
        Assignee Mark Collette [ mark.collette ] Rob Mayhew [ rob.mayhew ]
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #13534 Thu Apr 12 17:41:47 MDT 2007 rob.mayhew Changed find component calls to

        UIComponent uiComponent = D2DViewHandler.findComponent(id, context.getViewRoot());
        ICE-605
        Files Changed
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/webapp/http/servlet/UploadServlet.java
        Commit graph MODIFY /icefaces/trunk/icefaces/component/src/com/icesoft/faces/component/datapaginator/DataPaginator.java
        Commit graph MODIFY /icefaces/trunk/icefaces/core/src/com/icesoft/faces/context/effects/JavascriptContext.java
        Commit graph MODIFY /icefaces/trunk/icefaces/component/src/com/icesoft/faces/component/panelstack/PanelStackRenderer.java
        Hide
        Rob Mayhew added a comment -

        Changed find component calls to

        UIComponent uiComponent = D2DViewHandler.findComponent(id, context.getViewRoot());

        r13534

        Show
        Rob Mayhew added a comment - Changed find component calls to UIComponent uiComponent = D2DViewHandler.findComponent(id, context.getViewRoot()); r13534
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #13540 Fri Apr 13 11:23:59 MDT 2007 rob.mayhew Panel Stack needs to look for child panels, starting with itself, not the ViewRoot. Fix ICE-605
        Files Changed
        Commit graph MODIFY /icefaces/trunk/icefaces/component/src/com/icesoft/faces/component/panelstack/PanelStackRenderer.java
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #13544 Fri Apr 13 14:45:20 MDT 2007 rob.mayhew Fix for JSF 1.2. ICE-605
        Files Changed
        Commit graph MODIFY /icefaces/trunk/icefaces/component/src/com/icesoft/faces/component/datapaginator/DataPaginator.java
        Ken Fyten made changes -
        Status Open [ 1 ] Resolved [ 5 ]
        Affects [Documentation (User Guide, Ref. Guide, etc.), Compatibility/Configuration] [Documentation (User Guide, Ref. Guide, etc.), Sample App./Tutorial, Compatibility/Configuration]
        Resolution Fixed [ 1 ]
        Ken Fyten made changes -
        Summary Runtime compatibility for JSF 1.2 implementations Runtime compatibility for JSF 1.2 implementations with Facelets
        Affects [Sample App./Tutorial, Documentation (User Guide, Ref. Guide, etc.), Compatibility/Configuration] [Documentation (User Guide, Ref. Guide, etc.), Sample App./Tutorial, Compatibility/Configuration]
        Ken Fyten made changes -
        Issue Type Improvement [ 4 ] New Feature [ 2 ]
        Ken Fyten made changes -
        Fix Version/s 1.6 [ 10031 ]
        Ken Fyten made changes -
        Status Resolved [ 5 ] Closed [ 6 ]
        Assignee Priority P1
        Assignee Rob Mayhew [ rob.mayhew ]

          People

          • Assignee:
            Unassigned
            Reporter:
            Ken Fyten
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: