You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@myfaces.apache.org by "Jesper Pedersen (JIRA)" <de...@myfaces.apache.org> on 2007/03/05 20:26:51 UTC
[jira] Created: (TOMAHAWK-922) JSF-1.2: JspTilesViewHandlerImpl
JSF-1.2: JspTilesViewHandlerImpl
--------------------------------
Key: TOMAHAWK-922
URL: https://issues.apache.org/jira/browse/TOMAHAWK-922
Project: MyFaces Tomahawk
Issue Type: Bug
Components: Tiles
Affects Versions: 1.1.5-SNAPSHOT
Environment: MyFaces Tomahawk SVN HEAD + JSF-1.2_03 (Reference implementation) + JDK-1.5.0_11 + Tomcat-6.0.10
Reporter: Jesper Pedersen
The JspTilesViewHandlerImpl doesn't work under JSF-1.2 (RI) as it doesn't deliver any output.
Steps:
1) Get myfaces-example-tiles-1.1.5-SNAPSHOT.war
2) Replace MyFaces-Core with JSF-1.2 (RI) in WEB-INF/lib
3) Deploy on Tomcat-6.0.10
4) Go to http://localhost:8080/myfaces-example-tiles-1.1.5-SNAPSHOT/
Generated HTML:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<head>
<meta http-equiv="Content-Type" content="text/html;CHARSET=iso-8859-1" />
<title>Myfaces - Tiles</title>
<link rel="stylesheet" type="text/css" href="css/tiles.css" />
</head>
</html>
Basically I'm unable to use Tomahawk under JSF-1.2 currently, so any pointers on how to fix this issue or to provide more information would be great.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
Re: [jira] Commented: (TOMAHAWK-922) JSF-1.2:
JspTilesViewHandlerImpl
Posted by "j.palleschitz" <j....@ad2book.com>.
Is there still no solution available?
Maybe in Tomahawk 1.7?
When will 1.7 be released?
--
View this message in context: http://www.nabble.com/Created%3A-%28TOMAHAWK-922%29-JSF-1.2%3A-JspTilesViewHandlerImpl-tp9318590p17224224.html
Sent from the My Faces - Dev mailing list archive at Nabble.com.
[jira] Commented: (TOMAHAWK-922) JSF-1.2: JspTilesViewHandlerImpl
Posted by "Martin Marinschek (JIRA)" <de...@myfaces.apache.org>.
[ https://issues.apache.org/jira/browse/TOMAHAWK-922?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12577622#action_12577622 ]
Martin Marinschek commented on TOMAHAWK-922:
--------------------------------------------
Hold on - it won't work with the RI, as the MyFaces-config from the implementation seems still to be used, nobody has ever fixed this long outstanding issue, which doesn't bug us to hard, cause most of us are using Facelets and not the RI, so patches are welcome.
regards,
Martin
> JSF-1.2: JspTilesViewHandlerImpl
> --------------------------------
>
> Key: TOMAHAWK-922
> URL: https://issues.apache.org/jira/browse/TOMAHAWK-922
> Project: MyFaces Tomahawk
> Issue Type: Bug
> Components: Tiles
> Affects Versions: 1.1.5-SNAPSHOT
> Environment: MyFaces Tomahawk SVN HEAD + JSF-1.2_03 (Reference implementation) + JDK-1.5.0_11 + Tomcat-6.0.10
> Reporter: Jesper Pedersen
>
> The JspTilesViewHandlerImpl doesn't work under JSF-1.2 (RI) as it doesn't deliver any output.
> Steps:
> 1) Get myfaces-example-tiles-1.1.5-SNAPSHOT.war
> 2) Replace MyFaces-Core with JSF-1.2 (RI) in WEB-INF/lib
> 3) Deploy on Tomcat-6.0.10
> 4) Go to http://localhost:8080/myfaces-example-tiles-1.1.5-SNAPSHOT/
> Generated HTML:
> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
> <head>
> <meta http-equiv="Content-Type" content="text/html;CHARSET=iso-8859-1" />
> <title>Myfaces - Tiles</title>
> <link rel="stylesheet" type="text/css" href="css/tiles.css" />
> </head>
> </html>
> Basically I'm unable to use Tomahawk under JSF-1.2 currently, so any pointers on how to fix this issue or to provide more information would be great.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (TOMAHAWK-922) JSF-1.2: JspTilesViewHandlerImpl
Posted by "Jean-Marc Seigneur (JIRA)" <de...@myfaces.apache.org>.
[ https://issues.apache.org/jira/browse/TOMAHAWK-922?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12587732#action_12587732 ]
Jean-Marc Seigneur commented on TOMAHAWK-922:
---------------------------------------------
I've also voted for this issue to be fixed. I was surprised to see a blank page when upgrading from MyFaces 1.1.5 that works with Tiles to 1.2.2 that doesn't work with Tiles.
> JSF-1.2: JspTilesViewHandlerImpl
> --------------------------------
>
> Key: TOMAHAWK-922
> URL: https://issues.apache.org/jira/browse/TOMAHAWK-922
> Project: MyFaces Tomahawk
> Issue Type: Bug
> Components: Tiles
> Affects Versions: 1.1.5-SNAPSHOT
> Environment: MyFaces Tomahawk SVN HEAD + JSF-1.2_03 (Reference implementation) + JDK-1.5.0_11 + Tomcat-6.0.10
> Reporter: Jesper Pedersen
>
> The JspTilesViewHandlerImpl doesn't work under JSF-1.2 (RI) as it doesn't deliver any output.
> Steps:
> 1) Get myfaces-example-tiles-1.1.5-SNAPSHOT.war
> 2) Replace MyFaces-Core with JSF-1.2 (RI) in WEB-INF/lib
> 3) Deploy on Tomcat-6.0.10
> 4) Go to http://localhost:8080/myfaces-example-tiles-1.1.5-SNAPSHOT/
> Generated HTML:
> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
> <head>
> <meta http-equiv="Content-Type" content="text/html;CHARSET=iso-8859-1" />
> <title>Myfaces - Tiles</title>
> <link rel="stylesheet" type="text/css" href="css/tiles.css" />
> </head>
> </html>
> Basically I'm unable to use Tomahawk under JSF-1.2 currently, so any pointers on how to fix this issue or to provide more information would be great.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (TOMAHAWK-922) JSF-1.2: JspTilesViewHandlerImpl
Posted by "Jesper Pedersen (JIRA)" <de...@myfaces.apache.org>.
[ https://issues.apache.org/jira/browse/TOMAHAWK-922?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12499498 ]
Jesper Pedersen commented on TOMAHAWK-922:
------------------------------------------
The JspTilesViewHandlerImpl should be based on Tiles-2.0 from http://tiles.apache.org, since it is maintained.
> JSF-1.2: JspTilesViewHandlerImpl
> --------------------------------
>
> Key: TOMAHAWK-922
> URL: https://issues.apache.org/jira/browse/TOMAHAWK-922
> Project: MyFaces Tomahawk
> Issue Type: Bug
> Components: Tiles
> Affects Versions: 1.1.5-SNAPSHOT
> Environment: MyFaces Tomahawk SVN HEAD + JSF-1.2_03 (Reference implementation) + JDK-1.5.0_11 + Tomcat-6.0.10
> Reporter: Jesper Pedersen
>
> The JspTilesViewHandlerImpl doesn't work under JSF-1.2 (RI) as it doesn't deliver any output.
> Steps:
> 1) Get myfaces-example-tiles-1.1.5-SNAPSHOT.war
> 2) Replace MyFaces-Core with JSF-1.2 (RI) in WEB-INF/lib
> 3) Deploy on Tomcat-6.0.10
> 4) Go to http://localhost:8080/myfaces-example-tiles-1.1.5-SNAPSHOT/
> Generated HTML:
> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
> <head>
> <meta http-equiv="Content-Type" content="text/html;CHARSET=iso-8859-1" />
> <title>Myfaces - Tiles</title>
> <link rel="stylesheet" type="text/css" href="css/tiles.css" />
> </head>
> </html>
> Basically I'm unable to use Tomahawk under JSF-1.2 currently, so any pointers on how to fix this issue or to provide more information would be great.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (TOMAHAWK-922) JSF-1.2: JspTilesViewHandlerImpl
Posted by "Rafael Fernández (JIRA)" <de...@myfaces.apache.org>.
[ https://issues.apache.org/jira/browse/TOMAHAWK-922?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Rafael Fernández updated TOMAHAWK-922:
--------------------------------------
Status: Patch Available (was: Open)
> JSF-1.2: JspTilesViewHandlerImpl
> --------------------------------
>
> Key: TOMAHAWK-922
> URL: https://issues.apache.org/jira/browse/TOMAHAWK-922
> Project: MyFaces Tomahawk
> Issue Type: Bug
> Components: Tiles
> Affects Versions: 1.1.5-SNAPSHOT
> Environment: MyFaces Tomahawk SVN HEAD + JSF-1.2_03 (Reference implementation) + JDK-1.5.0_11 + Tomcat-6.0.10
> Reporter: Jesper Pedersen
>
> The JspTilesViewHandlerImpl doesn't work under JSF-1.2 (RI) as it doesn't deliver any output.
> Steps:
> 1) Get myfaces-example-tiles-1.1.5-SNAPSHOT.war
> 2) Replace MyFaces-Core with JSF-1.2 (RI) in WEB-INF/lib
> 3) Deploy on Tomcat-6.0.10
> 4) Go to http://localhost:8080/myfaces-example-tiles-1.1.5-SNAPSHOT/
> Generated HTML:
> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
> <head>
> <meta http-equiv="Content-Type" content="text/html;CHARSET=iso-8859-1" />
> <title>Myfaces - Tiles</title>
> <link rel="stylesheet" type="text/css" href="css/tiles.css" />
> </head>
> </html>
> Basically I'm unable to use Tomahawk under JSF-1.2 currently, so any pointers on how to fix this issue or to provide more information would be great.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (TOMAHAWK-922) JSF-1.2: JspTilesViewHandlerImpl
Posted by "alexander ruben (JIRA)" <de...@myfaces.apache.org>.
[ https://issues.apache.org/jira/browse/TOMAHAWK-922?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12587106#action_12587106 ]
alexander ruben commented on TOMAHAWK-922:
------------------------------------------
Unfortunately is there still no solution for this problem and i cant´t believe that there are only 3 people with this issue.
Will the myfaces team find a solution for this bug in the near future because it´s important that this bug will be fixed so that the migration to jsf 1.2 will work !
> JSF-1.2: JspTilesViewHandlerImpl
> --------------------------------
>
> Key: TOMAHAWK-922
> URL: https://issues.apache.org/jira/browse/TOMAHAWK-922
> Project: MyFaces Tomahawk
> Issue Type: Bug
> Components: Tiles
> Affects Versions: 1.1.5-SNAPSHOT
> Environment: MyFaces Tomahawk SVN HEAD + JSF-1.2_03 (Reference implementation) + JDK-1.5.0_11 + Tomcat-6.0.10
> Reporter: Jesper Pedersen
>
> The JspTilesViewHandlerImpl doesn't work under JSF-1.2 (RI) as it doesn't deliver any output.
> Steps:
> 1) Get myfaces-example-tiles-1.1.5-SNAPSHOT.war
> 2) Replace MyFaces-Core with JSF-1.2 (RI) in WEB-INF/lib
> 3) Deploy on Tomcat-6.0.10
> 4) Go to http://localhost:8080/myfaces-example-tiles-1.1.5-SNAPSHOT/
> Generated HTML:
> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
> <head>
> <meta http-equiv="Content-Type" content="text/html;CHARSET=iso-8859-1" />
> <title>Myfaces - Tiles</title>
> <link rel="stylesheet" type="text/css" href="css/tiles.css" />
> </head>
> </html>
> Basically I'm unable to use Tomahawk under JSF-1.2 currently, so any pointers on how to fix this issue or to provide more information would be great.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (TOMAHAWK-922) JSF-1.2: JspTilesViewHandlerImpl
Posted by "alexander ruben (JIRA)" <de...@myfaces.apache.org>.
[ https://issues.apache.org/jira/browse/TOMAHAWK-922?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12575263#action_12575263 ]
alexander ruben commented on TOMAHAWK-922:
------------------------------------------
Hello, i migrated my web application a few days ago running in the same problem as described below.
I dont see the output inside the f:view tag.
The application worked fine with the previous version 1.5 of myfaces.
The libaries of the WEB-INF/lib , Tomcat version 6.0.16 is used:
activation_1.1.jar
antlr-2.7.6.jar
asm_1.5.3.jar
c3p0-0.9.0.jar
cglib-2.1.3.jar
commons-beanutils-1.7.0.jar
commons-codec-1.3.jar
commons-collections-3.2.jar
commons-dbcp-1.2.2.jar
commons-digester-1.8.jar
commons-discovery-0.4.jar
commons-el-1.0.jar
commons-email-1.0.jar
commons-fileupload-1.2.jar
commons-io-1.3.2.jar
commons-lang-2.1.jar
commons-logging-1.1.1.jar
commons-pool-1.3.jar
commons-validator-1.3.1.jar
dom4j-1.6.1.jar
dto-beanprocessor-0.2.jar
ehcache-1.3.0.jar
ejb3-persistence_3.0.jar
hibernate-annotations_3.0.0.ga.jar
hibernate-commons-annotations_3.3.0.ga.jar
hibernate-entitymanager_3.3.0.ga.jar
hibernate3_3.2.4.ga.jar
jaf-1_1-fr.zip
jakarta-oro-2.0.8.jar
jenia4faces_1.2.1.jar
jstl-1.2.jar
jta_1.1.jar
junit_3.8.1.jar
log4j-1.2.14.jar
mail_1.3.jar
myfaces-api-1.2.2.jar
myfaces-impl-1.2.2.jar
mysql-connector-java-5.0.8-bin.jar
richfaces-api-3.1.4.GA.jar
richfaces-impl-3.1.4.GA.jar
richfaces-ui-3.1.4.GA.jar
spring-2.0.jar
spring-aspects-2.0.jar
spring-mock-2.0.jar
struts-1.2.8.jar
tomahawk-1.1.6.jar
Is it possible that this bug would be fixed in the near future?
There must be many people who use myfaces 1.2 in combination with tiles without problems or ?
thanks for your help
> JSF-1.2: JspTilesViewHandlerImpl
> --------------------------------
>
> Key: TOMAHAWK-922
> URL: https://issues.apache.org/jira/browse/TOMAHAWK-922
> Project: MyFaces Tomahawk
> Issue Type: Bug
> Components: Tiles
> Affects Versions: 1.1.5-SNAPSHOT
> Environment: MyFaces Tomahawk SVN HEAD + JSF-1.2_03 (Reference implementation) + JDK-1.5.0_11 + Tomcat-6.0.10
> Reporter: Jesper Pedersen
>
> The JspTilesViewHandlerImpl doesn't work under JSF-1.2 (RI) as it doesn't deliver any output.
> Steps:
> 1) Get myfaces-example-tiles-1.1.5-SNAPSHOT.war
> 2) Replace MyFaces-Core with JSF-1.2 (RI) in WEB-INF/lib
> 3) Deploy on Tomcat-6.0.10
> 4) Go to http://localhost:8080/myfaces-example-tiles-1.1.5-SNAPSHOT/
> Generated HTML:
> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
> <head>
> <meta http-equiv="Content-Type" content="text/html;CHARSET=iso-8859-1" />
> <title>Myfaces - Tiles</title>
> <link rel="stylesheet" type="text/css" href="css/tiles.css" />
> </head>
> </html>
> Basically I'm unable to use Tomahawk under JSF-1.2 currently, so any pointers on how to fix this issue or to provide more information would be great.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (TOMAHAWK-922) JSF-1.2: JspTilesViewHandlerImpl
Posted by "Martin Marinschek (JIRA)" <de...@myfaces.apache.org>.
[ https://issues.apache.org/jira/browse/TOMAHAWK-922?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12577621#action_12577621 ]
Martin Marinschek commented on TOMAHAWK-922:
--------------------------------------------
I don't get these comments. There is two versions of the JspTilesViewHandler, one for Tiles (old) and one for Tiles 2. The old handler won't work with the RI (the new one should). There is a tiles-example checked in to the MyFaces sources which show this is working.
What refactoring on this should be done?
regards,
Martin
> JSF-1.2: JspTilesViewHandlerImpl
> --------------------------------
>
> Key: TOMAHAWK-922
> URL: https://issues.apache.org/jira/browse/TOMAHAWK-922
> Project: MyFaces Tomahawk
> Issue Type: Bug
> Components: Tiles
> Affects Versions: 1.1.5-SNAPSHOT
> Environment: MyFaces Tomahawk SVN HEAD + JSF-1.2_03 (Reference implementation) + JDK-1.5.0_11 + Tomcat-6.0.10
> Reporter: Jesper Pedersen
>
> The JspTilesViewHandlerImpl doesn't work under JSF-1.2 (RI) as it doesn't deliver any output.
> Steps:
> 1) Get myfaces-example-tiles-1.1.5-SNAPSHOT.war
> 2) Replace MyFaces-Core with JSF-1.2 (RI) in WEB-INF/lib
> 3) Deploy on Tomcat-6.0.10
> 4) Go to http://localhost:8080/myfaces-example-tiles-1.1.5-SNAPSHOT/
> Generated HTML:
> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
> <head>
> <meta http-equiv="Content-Type" content="text/html;CHARSET=iso-8859-1" />
> <title>Myfaces - Tiles</title>
> <link rel="stylesheet" type="text/css" href="css/tiles.css" />
> </head>
> </html>
> Basically I'm unable to use Tomahawk under JSF-1.2 currently, so any pointers on how to fix this issue or to provide more information would be great.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (TOMAHAWK-922) JSF-1.2: JspTilesViewHandlerImpl
Posted by "Leonardo Uribe (JIRA)" <de...@myfaces.apache.org>.
[ https://issues.apache.org/jira/browse/TOMAHAWK-922?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12607842#action_12607842 ]
Leonardo Uribe commented on TOMAHAWK-922:
-----------------------------------------
I have committed on core12 the changes suggested for JspTilesTwoViewHandlerImpl.
The problem with this handler is the changes done in ViewHandler interface between 1.1 and 1.2.
This code unfortunately does not work with jsf ri 1.2, because not everything could be delegated (renderTilesView).
I have tested myfaces-example-tiles example inside tomahawk examples module, using the following command
mvn -Djsf=12 -Dtomahawk=12 clean jetty:run
and the proposed solution works well.
This works with myfaces 1.2.4-SNAPSHOT (latest code) and tomahawk12 1.1.7-SNAPSHOT (latest code)
suggestions, patches, updates and everything you want to contribute are welcome!
> JSF-1.2: JspTilesViewHandlerImpl
> --------------------------------
>
> Key: TOMAHAWK-922
> URL: https://issues.apache.org/jira/browse/TOMAHAWK-922
> Project: MyFaces Tomahawk
> Issue Type: Bug
> Components: Tiles
> Affects Versions: 1.1.5-SNAPSHOT
> Environment: MyFaces Tomahawk SVN HEAD + JSF-1.2_03 (Reference implementation) + JDK-1.5.0_11 + Tomcat-6.0.10
> Reporter: Jesper Pedersen
>
> The JspTilesViewHandlerImpl doesn't work under JSF-1.2 (RI) as it doesn't deliver any output.
> Steps:
> 1) Get myfaces-example-tiles-1.1.5-SNAPSHOT.war
> 2) Replace MyFaces-Core with JSF-1.2 (RI) in WEB-INF/lib
> 3) Deploy on Tomcat-6.0.10
> 4) Go to http://localhost:8080/myfaces-example-tiles-1.1.5-SNAPSHOT/
> Generated HTML:
> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
> <head>
> <meta http-equiv="Content-Type" content="text/html;CHARSET=iso-8859-1" />
> <title>Myfaces - Tiles</title>
> <link rel="stylesheet" type="text/css" href="css/tiles.css" />
> </head>
> </html>
> Basically I'm unable to use Tomahawk under JSF-1.2 currently, so any pointers on how to fix this issue or to provide more information would be great.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (TOMAHAWK-922) JSF-1.2: JspTilesViewHandlerImpl
Posted by "Neal Haggard (JIRA)" <de...@myfaces.apache.org>.
[ https://issues.apache.org/jira/browse/TOMAHAWK-922?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12605743#action_12605743 ]
Neal Haggard commented on TOMAHAWK-922:
---------------------------------------
We similarly are trying to move from MyFaces 1.1 to 1.2 to get JSF 1.2 support for RichFaces 3.2. Was also very surprised to find blank pages when I finally got everything configured up. Took quite a bit of googling to realize it was Tiles not properly being set up. I'm behind a firewall, so I'm getting an I/O error when I try and use the JspTilesTwoViewHandlerImpl given above.
> JSF-1.2: JspTilesViewHandlerImpl
> --------------------------------
>
> Key: TOMAHAWK-922
> URL: https://issues.apache.org/jira/browse/TOMAHAWK-922
> Project: MyFaces Tomahawk
> Issue Type: Bug
> Components: Tiles
> Affects Versions: 1.1.5-SNAPSHOT
> Environment: MyFaces Tomahawk SVN HEAD + JSF-1.2_03 (Reference implementation) + JDK-1.5.0_11 + Tomcat-6.0.10
> Reporter: Jesper Pedersen
>
> The JspTilesViewHandlerImpl doesn't work under JSF-1.2 (RI) as it doesn't deliver any output.
> Steps:
> 1) Get myfaces-example-tiles-1.1.5-SNAPSHOT.war
> 2) Replace MyFaces-Core with JSF-1.2 (RI) in WEB-INF/lib
> 3) Deploy on Tomcat-6.0.10
> 4) Go to http://localhost:8080/myfaces-example-tiles-1.1.5-SNAPSHOT/
> Generated HTML:
> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
> <head>
> <meta http-equiv="Content-Type" content="text/html;CHARSET=iso-8859-1" />
> <title>Myfaces - Tiles</title>
> <link rel="stylesheet" type="text/css" href="css/tiles.css" />
> </head>
> </html>
> Basically I'm unable to use Tomahawk under JSF-1.2 currently, so any pointers on how to fix this issue or to provide more information would be great.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (TOMAHAWK-922) JSF-1.2: JspTilesViewHandlerImpl
Posted by "Darshan Jawalebhoi (JIRA)" <de...@myfaces.apache.org>.
[ https://issues.apache.org/jira/browse/TOMAHAWK-922?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12592445#action_12592445 ]
Darshan Jawalebhoi commented on TOMAHAWK-922:
---------------------------------------------
I too was getting a blank page after upgrading to MyFaces 1.2.2. Had no option but to put the upgrade plans on hold for now :(
> JSF-1.2: JspTilesViewHandlerImpl
> --------------------------------
>
> Key: TOMAHAWK-922
> URL: https://issues.apache.org/jira/browse/TOMAHAWK-922
> Project: MyFaces Tomahawk
> Issue Type: Bug
> Components: Tiles
> Affects Versions: 1.1.5-SNAPSHOT
> Environment: MyFaces Tomahawk SVN HEAD + JSF-1.2_03 (Reference implementation) + JDK-1.5.0_11 + Tomcat-6.0.10
> Reporter: Jesper Pedersen
>
> The JspTilesViewHandlerImpl doesn't work under JSF-1.2 (RI) as it doesn't deliver any output.
> Steps:
> 1) Get myfaces-example-tiles-1.1.5-SNAPSHOT.war
> 2) Replace MyFaces-Core with JSF-1.2 (RI) in WEB-INF/lib
> 3) Deploy on Tomcat-6.0.10
> 4) Go to http://localhost:8080/myfaces-example-tiles-1.1.5-SNAPSHOT/
> Generated HTML:
> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
> <head>
> <meta http-equiv="Content-Type" content="text/html;CHARSET=iso-8859-1" />
> <title>Myfaces - Tiles</title>
> <link rel="stylesheet" type="text/css" href="css/tiles.css" />
> </head>
> </html>
> Basically I'm unable to use Tomahawk under JSF-1.2 currently, so any pointers on how to fix this issue or to provide more information would be great.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (TOMAHAWK-922) JSF-1.2: JspTilesViewHandlerImpl
Posted by "Christian Küppers (JIRA)" <de...@myfaces.apache.org>.
[ https://issues.apache.org/jira/browse/TOMAHAWK-922?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12577436#action_12577436 ]
Christian Küppers commented on TOMAHAWK-922:
--------------------------------------------
Hello, I migrated my web application a few days ago running in the same problems.
I have adjusted the JspTilesTwoViewHandlerImpl for JSF1.2 and it works for me.
Maybe it should be refactured anymore.
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.tiles.access.TilesAccess;
import org.apache.tiles.context.BasicAttributeContext;
import org.apache.tiles.context.TilesRequestContext;
import org.apache.tiles.definition.NoSuchDefinitionException;
import org.apache.tiles.factory.TilesContainerFactory;
import org.apache.tiles.impl.BasicTilesContainer;
import org.apache.tiles.preparer.NoSuchPreparerException;
import org.apache.tiles.preparer.ViewPreparer;
import org.apache.tiles.servlet.context.ServletTilesApplicationContext;
import org.apache.tiles.servlet.context.ServletTilesRequestContext;
import org.apache.tiles.AttributeContext;
import org.apache.tiles.Definition;
import org.apache.tiles.TilesContainer;
import org.apache.tiles.TilesException;
import org.apache.myfaces.application.jsp.JspViewHandlerImpl;
import org.apache.myfaces.application.jsp.ViewResponseWrapper;
import org.apache.myfaces.shared_impl.config.MyfacesConfig;
import org.apache.myfaces.shared_impl.renderkit.html.util.JavascriptUtils;
import org.apache.myfaces.shared_tomahawk.webapp.webxml.ServletMapping;
import org.apache.myfaces.shared_tomahawk.webapp.webxml.WebXml;
import javax.faces.application.StateManager;
import javax.faces.application.ViewHandler;
import javax.faces.context.ExternalContext;
import javax.faces.context.FacesContext;
import javax.faces.context.ResponseWriter;
import javax.faces.FacesException;
import javax.faces.FactoryFinder;
import javax.faces.component.UIViewRoot;
import javax.faces.render.RenderKit;
import javax.faces.render.RenderKitFactory;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import javax.servlet.ServletResponse;
import java.io.IOException;
import java.io.StringWriter;
import java.io.Writer;
import java.util.List;
import java.util.Locale;
import java.util.StringTokenizer;
/**
* @author Martin Marinschek
* @version $Revision: 472792 $ $Date: 2006-11-09 07:34:47 +0100 (Do, 09 Nov 2006) $
*/
public class JspTilesTwoViewHandlerImpl extends ViewHandler {
private ViewHandler _viewHandler;
private static final Log log = LogFactory.getLog(JspTilesTwoViewHandlerImpl.class);
private static final String TILES_DEF_EXT = ".tiles";
private String tilesExtension = TILES_DEF_EXT;
private static final String AFTER_VIEW_TAG_CONTENT_PARAM = JspViewHandlerImpl.class + ".AFTER_VIEW_TAG_CONTENT";
public JspTilesTwoViewHandlerImpl(ViewHandler viewHandler) {
_viewHandler = viewHandler;
}
private void initContainer(ExternalContext context) {
if(TilesAccess.getContainer(context.getContext())==null) {
try {
TilesContainerFactory factory = TilesContainerFactory.getFactory(context.getContext());
TilesContainer container = factory.createTilesContainer(context.getContext());
TilesAccess.setContainer(context.getContext(),container);
} catch (Exception e) {
throw new FacesException("Error reading tiles definitions : " + e.getMessage(), e);
}
}
}
public void renderView(FacesContext facesContext, UIViewRoot viewToRender) throws IOException, FacesException {
if (viewToRender == null) {
log.fatal("viewToRender must not be null");
throw new NullPointerException("viewToRender must not be null");
}
ExternalContext externalContext = facesContext.getExternalContext();
String viewId = deriveViewId(externalContext, viewToRender.getViewId());
if(viewId==null) {
//deriving view-id made clear we are not responsible for this view-id - call the delegate
_viewHandler.renderView(facesContext, viewToRender);
return;
}
initContainer(externalContext);
String tilesId = deriveTileFromViewId(viewId);
TilesContainer container = TilesAccess.getContainer(externalContext.getContext());
Object[] requestObjects = {externalContext.getRequest(), externalContext.getResponse()};
if(container.isValidDefinition(tilesId, requestObjects)) {
//propagate our new view-id to wherever it makes sense
setViewId(viewToRender, viewId, facesContext);
renderTilesView(facesContext, requestObjects, container, viewToRender, viewId, tilesId);
} else {
//we're not using tiles as no valid definition has been found
//just call the delegate view-handler to let it do its thing
_viewHandler.renderView(facesContext, viewToRender);
}
}
private String deriveTileFromViewId(String viewId) {
String tilesId = viewId;
int idx = tilesId.lastIndexOf('.');
if (idx > 0) {
tilesId = tilesId.substring(0, idx) + tilesExtension;
} else {
tilesId = tilesId + tilesExtension;
}
return tilesId;
}
private String deriveViewId(ExternalContext externalContext, String viewId) {
ServletMapping servletMapping = getServletMapping(externalContext);
String defaultSuffix = externalContext.getInitParameter(ViewHandler.DEFAULT_SUFFIX_PARAM_NAME);
String suffix = defaultSuffix != null ? defaultSuffix : ViewHandler.DEFAULT_SUFFIX;
if (servletMapping.isExtensionMapping()) {
if (!viewId.endsWith(suffix)) {
int dot = viewId.lastIndexOf('.');
if (dot == -1) {
if (log.isTraceEnabled()) log.trace("Current viewId has no extension, appending default suffix " + suffix);
return viewId + suffix;
} else {
if (log.isTraceEnabled()) log.trace("Replacing extension of current viewId by suffix " + suffix);
return viewId.substring(0, dot) + suffix;
}
}
//extension-mapped page ends with proper suffix - all ok
return viewId;
} else if (!viewId.endsWith(suffix)) {
// path-mapping used, but suffix is no default-suffix
return null;
} else {
//path-mapping used, suffix is default-suffix - all ok
return viewId;
}
}
private void renderTilesView(FacesContext facesContext, Object[] requestObjects, TilesContainer container, UIViewRoot viewToRender, String viewId, String tilesId) throws IOException {
ExternalContext externalContext = facesContext.getExternalContext();
handleCharacterEncoding(viewId, externalContext, viewToRender);
container.startContext(requestObjects);
try {
//container.render(tilesId,requestObjects);
buildTilesViewLikeContainer(externalContext, container, tilesId, requestObjects);
} catch (TilesException e) {
throw new FacesException(e);
}
finally {
container.endContext(requestObjects);
}
handleCharacterEncodingPostDispatch(externalContext);
// render the view in this method (since JSF 1.2)
RenderKitFactory renderFactory = (RenderKitFactory) FactoryFinder.getFactory(FactoryFinder.RENDER_KIT_FACTORY);
RenderKit renderKit = renderFactory.getRenderKit(facesContext, viewToRender.getRenderKitId());
ServletResponse response = (ServletResponse) requestObjects[1];
ResponseWriter responseWriter = facesContext.getResponseWriter();
if (responseWriter == null) {
responseWriter = renderKit.createResponseWriter(response.getWriter(), null,
((HttpServletRequest) externalContext.getRequest()).getCharacterEncoding());
facesContext.setResponseWriter(responseWriter);
}
ResponseWriter oldResponseWriter = responseWriter;
StateMarkerAwareWriter stateAwareWriter = null;
StateManager stateManager = facesContext.getApplication().getStateManager();
if (stateManager.isSavingStateInClient(facesContext)) {
stateAwareWriter = new StateMarkerAwareWriter();
// Create a new response-writer using as an underlying writer the stateAwareWriter
// Effectively, all output will be buffered in the stateAwareWriter so that later
// this writer can replace the state-markers with the actual state.
responseWriter = oldResponseWriter.cloneWithWriter(stateAwareWriter);
facesContext.setResponseWriter(responseWriter);
}
actuallyRenderView(facesContext, viewToRender);
//We're done with the document - now we can write all content
//to the response, properly replacing the state-markers on the way out
//by using the stateAwareWriter
if (stateManager.isSavingStateInClient(facesContext)) {
stateAwareWriter.flushToWriter(response.getWriter());
} else {
stateManager.saveView(facesContext);
}
// Final step - we output any content in the wrappedResponse response from above to the response,
// removing the wrappedResponse response from the request, we don't need it anymore
ViewResponseWrapper afterViewTagResponse = (ViewResponseWrapper) externalContext.getRequestMap().get(AFTER_VIEW_TAG_CONTENT_PARAM);
externalContext.getRequestMap().remove(AFTER_VIEW_TAG_CONTENT_PARAM);
if (afterViewTagResponse != null) {
afterViewTagResponse.flushToWriter(response.getWriter());
}
response.flushBuffer();
}
private void handleCharacterEncodingPostDispatch(ExternalContext externalContext) {
// handle character encoding as of section 2.5.2.2 of JSF 1.1
if (externalContext.getRequest() instanceof HttpServletRequest) {
HttpServletResponse response = (HttpServletResponse) externalContext.getResponse();
HttpServletRequest request = (HttpServletRequest) externalContext.getRequest();
HttpSession session = request.getSession(false);
if (session != null) {
session.setAttribute(ViewHandler.CHARACTER_ENCODING_KEY, response.getCharacterEncoding());
}
}
}
private void handleCharacterEncoding(String viewId, ExternalContext externalContext, UIViewRoot viewToRender) {
if (log.isTraceEnabled()) log.trace("Dispatching to " + viewId);
// handle character encoding as of section 2.5.2.2 of JSF 1.1
if (externalContext.getResponse() instanceof ServletResponse) {
ServletResponse response = (ServletResponse) externalContext.getResponse();
response.setLocale(viewToRender.getLocale());
}
}
private void buildTilesViewLikeContainer(ExternalContext externalContext, TilesContainer container, String definitionName, Object... requestItems) throws TilesException {
if (log.isDebugEnabled()) {
log.debug("Render request recieved for definition '" + definitionName + "'");
}
TilesRequestContext tilesRequest = ((BasicTilesContainer)container).getContextFactory().createRequestContext(container.getApplicationContext(), requestItems);
Definition definition = ((BasicTilesContainer)container).getDefinitionsFactory().getDefinition(definitionName, tilesRequest);
if (definition == null) {
if (log.isWarnEnabled()) {
String message = "Unable to find the definition '" + definitionName + "'";
log.warn(message);
}
throw new NoSuchDefinitionException(definitionName);
}
if (!isPermitted(tilesRequest, definition.getRole())) {
log.info("Access to definition '" + definitionName + "' denied. User not in role '" + definition.getRole());
return;
}
AttributeContext originalContext = container.getAttributeContext(requestItems);
BasicAttributeContext subContext = new BasicAttributeContext(originalContext);
subContext.addMissing(definition.getAttributes());
BasicAttributeContext.pushContext(subContext, tilesRequest);
try {
if (definition.getPreparer() != null) {
prepare(container, tilesRequest, definition.getPreparer(), true);
}
String dispatchPath = definition.getTemplate();
if (log.isDebugEnabled()) {
log.debug("Dispatching to definition path '" + definition.getTemplate() + " '");
}
if (!buildView(container, tilesRequest, externalContext, dispatchPath)) {
//building the view was unsuccessful - an exception occurred during rendering
//we need to jump out
return;
}
// tiles exception so that it doesn't need to be rethrown.
} catch (TilesException e) {
throw e;
} catch (Exception e) {
log.error("Error rendering tile", e);
throw new TilesException(e.getMessage(), e);
} finally {
BasicAttributeContext.popContext(tilesRequest);
}
}
/**
* Checks if the current user is in one of the comma-separated roles
* specified in the <code>role</code> parameter.
*
* @param request The request context.
* @param role The comma-separated list of roles.
* @return <code>true</code> if the current user is in one of those roles.
*/
private boolean isPermitted(TilesRequestContext request, String role) {
if (role == null) {
return true;
}
StringTokenizer st = new StringTokenizer(role, ",");
while (st.hasMoreTokens()) {
if (request.isUserInRole(st.nextToken())) {
return true;
}
}
return false;
}
/**
* Execute a preparer.
*
* @param context The request context.
* @param preparerName The name of the preparer.
* @param ignoreMissing If <code>true</code> if the preparer is not found,
* it ignores the problem.
* @throws TilesException If the preparer is not found (and
* <code>ignoreMissing</code> is not set) or if the preparer itself threw an
* exception.
*/
private void prepare(TilesContainer container, TilesRequestContext context, String preparerName, boolean ignoreMissing) throws TilesException {
if (log.isDebugEnabled()) {
log.debug("Prepare request received for '" + preparerName);
}
ViewPreparer preparer = ((BasicTilesContainer)container).getPreparerFactory().getPreparer(preparerName, context);
if (preparer == null && ignoreMissing) {
return;
}
if (preparer == null) {
throw new NoSuchPreparerException("Preparer '" + preparerName + " not found");
}
AttributeContext attributeContext = BasicAttributeContext.getContext(context);
preparer.execute(context, attributeContext);
}
/**Build the view-tree before rendering.
* This is done by dispatching to the underlying JSP-page, effectively processing it, creating
* components out of any text in between JSF components (not rendering the text to the output of course, this
* will happen later while rendering), attaching these components
* to the component tree, and buffering any content after the view-root.
*
* @param container The current TilesContainer
* @param tilesRequest The current TilesRequestContext - its response will be replaced while the view-building happens (we want the text in the component tree, not on the actual servlet output stream)
* @param externalContext The external context where the response will be replaced while building
* @param viewId The view-id to dispatch to
* @return true if successfull, false if an error occurred during rendering
* @throws IOException
*/
private boolean buildView(TilesContainer container, TilesRequestContext tilesRequest, ExternalContext externalContext, String viewId) throws IOException {
HttpServletResponse response = (HttpServletResponse) tilesRequest.getResponse();
ViewResponseWrapper wrappedResponse = new ViewResponseWrapper(response);
tilesRequest = new ServletTilesRequestContext(((ServletTilesApplicationContext)container.getApplicationContext()).getServletContext(),
(HttpServletRequest)tilesRequest.getRequest(),
wrappedResponse);
tilesRequest.dispatch(viewId);
tilesRequest = new ServletTilesRequestContext(((ServletTilesApplicationContext)container.getApplicationContext()).getServletContext(),
(HttpServletRequest)tilesRequest.getRequest(),
response);
boolean errorResponse = wrappedResponse.getStatus() < 200 || wrappedResponse.getStatus() > 299;
if (errorResponse) {
wrappedResponse.flushToWrappedResponse();
return false;
}
// store the wrapped response in the request, so it is thread-safe
externalContext.getRequestMap().put(AFTER_VIEW_TAG_CONTENT_PARAM, wrappedResponse);
return true;
}
/**
* Render the view now - properly setting and resetting the response writer
*/
private void actuallyRenderView(FacesContext facesContext, UIViewRoot viewToRender) throws IOException {
// Set the new ResponseWriter into the FacesContext, saving the old one aside.
ResponseWriter responseWriter = facesContext.getResponseWriter();
//Now we actually render the document
// Call startDocument() on the ResponseWriter.
responseWriter.startDocument();
// Call encodeAll() on the UIViewRoot
viewToRender.encodeAll(facesContext);
// Call endDocument() on the ResponseWriter
responseWriter.endDocument();
responseWriter.flush();
}
private void setViewId(UIViewRoot viewToRender, String viewId, FacesContext facesContext) {
viewToRender.setViewId(viewId);
if(facesContext.getViewRoot()!=null) {
facesContext.getViewRoot().setViewId(viewId);
}
}
private static ServletMapping getServletMapping(ExternalContext externalContext) {
String servletPath = externalContext.getRequestServletPath();
String requestPathInfo = externalContext.getRequestPathInfo();
WebXml webxml = WebXml.getWebXml(externalContext);
List<?> mappings = webxml.getFacesServletMappings();
boolean isExtensionMapping = requestPathInfo == null;
for (int i = 0, size = mappings.size(); i < size; i++)
{
ServletMapping servletMapping = (ServletMapping) mappings.get(i);
if (servletMapping.isExtensionMapping() == isExtensionMapping)
{
String urlpattern = servletMapping.getUrlPattern();
if (isExtensionMapping)
{
String extension = urlpattern.substring(1, urlpattern.length());
if (servletPath.endsWith(extension))
{
return servletMapping;
}
}
else
{
urlpattern = urlpattern.substring(0, urlpattern.length() - 2);
// servletPath starts with "/" except in the case where the
// request is matched with the "/*" pattern, in which case
// it is the empty string (see Servlet Sepc 2.3 SRV4.4)
if (servletPath.equals(urlpattern))
{
return servletMapping;
}
}
}
}
log.error("could not find pathMapping for servletPath = " + servletPath +
" requestPathInfo = " + requestPathInfo);
throw new IllegalArgumentException("could not find pathMapping for servletPath = " + servletPath +
" requestPathInfo = " + requestPathInfo);
}
public Locale calculateLocale(FacesContext context) {
return _viewHandler.calculateLocale(context);
}
public String calculateRenderKitId(FacesContext context) {
return _viewHandler.calculateRenderKitId(context);
}
public UIViewRoot createView(FacesContext context, String viewId) {
return _viewHandler.createView(context, viewId);
}
public String getActionURL(FacesContext context, String viewId) {
return _viewHandler.getActionURL(context, viewId);
}
public String getResourceURL(FacesContext context, String path) {
return _viewHandler.getResourceURL(context, path);
}
public UIViewRoot restoreView(FacesContext context, String viewId) {
return _viewHandler.restoreView(context, viewId);
}
public void writeState(FacesContext context) throws IOException {
_viewHandler.writeState(context);
}
/**
* Writes the response and replaces the state marker tags with the state information for the current context
*/
private static class StateMarkerAwareWriter extends Writer
{
private StringBuilder buf;
public StateMarkerAwareWriter()
{
this.buf = new StringBuilder();
}
@Override
public void close() throws IOException
{
}
@Override
public void flush() throws IOException
{
}
@Override
public void write(char[] cbuf, int off, int len) throws IOException
{
if ((off < 0) || (off > cbuf.length) || (len < 0) ||
((off + len) > cbuf.length) || ((off + len) < 0)) {
throw new IndexOutOfBoundsException();
} else if (len == 0) {
return;
}
buf.append(cbuf, off, len);
}
public StringBuilder getStringBuilder()
{
return buf;
}
public void flushToWriter(Writer writer) throws IOException
{
FacesContext facesContext = FacesContext.getCurrentInstance();
StateManager stateManager = facesContext.getApplication().getStateManager();
StringWriter stateWriter = new StringWriter();
ResponseWriter realWriter = facesContext.getResponseWriter();
facesContext.setResponseWriter(realWriter.cloneWithWriter(stateWriter));
Object serializedView = stateManager.saveView(facesContext);
stateManager.writeState(facesContext, serializedView);
facesContext.setResponseWriter(realWriter);
StringBuilder contentBuffer = getStringBuilder();
String state = stateWriter.getBuffer().toString();
ExternalContext extContext = facesContext.getExternalContext();
if (JavascriptUtils.isJavascriptAllowed(extContext) && MyfacesConfig.getCurrentInstance(extContext).isViewStateJavascript()) {
// If javascript viewstate is enabled no state markers were written
write(contentBuffer, 0, contentBuffer.length(), writer);
writer.write(state);
} else {
// If javascript viewstate is disabled state markers must be replaced
int lastFormMarkerPos = 0;
int formMarkerPos = 0;
// Find all state markers and write out actual state instead
while ((formMarkerPos = contentBuffer.indexOf(JspViewHandlerImpl.FORM_STATE_MARKER, formMarkerPos)) > -1)
{
// Write content before state marker
write(contentBuffer, lastFormMarkerPos, formMarkerPos, writer);
// Write state and move position in buffer after marker
writer.write(state);
formMarkerPos += JspViewHandlerImpl.FORM_STATE_MARKER_LEN;
lastFormMarkerPos = formMarkerPos;
}
// Write content after last state marker
if (lastFormMarkerPos < contentBuffer.length()) {
write(contentBuffer, lastFormMarkerPos, contentBuffer.length(), writer);
}
}
}
/**
* Writes the content of the specified StringBuffer from index
* <code>beginIndex</code> to index <code>endIndex - 1</code>.
*
* @param contentBuffer the <code>StringBuffer</code> to copy content from
* @param begin the beginning index, inclusive.
* @param end the ending index, exclusive
* @param writer the <code>Writer</code> to write to
* @throws IOException if an error occurs writing to specified <code>Writer</code>
*/
private void write(StringBuilder contentBuffer, int beginIndex, int endIndex, Writer writer) throws IOException {
int index = beginIndex;
int bufferSize = 2048;
char[] bufToWrite = new char[bufferSize];
while (index < endIndex)
{
int maxSize = Math.min(bufferSize, endIndex - index);
contentBuffer.getChars(index, index + maxSize, bufToWrite, 0);
writer.write(bufToWrite, 0, maxSize);
index += bufferSize;
}
}
}
}
> JSF-1.2: JspTilesViewHandlerImpl
> --------------------------------
>
> Key: TOMAHAWK-922
> URL: https://issues.apache.org/jira/browse/TOMAHAWK-922
> Project: MyFaces Tomahawk
> Issue Type: Bug
> Components: Tiles
> Affects Versions: 1.1.5-SNAPSHOT
> Environment: MyFaces Tomahawk SVN HEAD + JSF-1.2_03 (Reference implementation) + JDK-1.5.0_11 + Tomcat-6.0.10
> Reporter: Jesper Pedersen
>
> The JspTilesViewHandlerImpl doesn't work under JSF-1.2 (RI) as it doesn't deliver any output.
> Steps:
> 1) Get myfaces-example-tiles-1.1.5-SNAPSHOT.war
> 2) Replace MyFaces-Core with JSF-1.2 (RI) in WEB-INF/lib
> 3) Deploy on Tomcat-6.0.10
> 4) Go to http://localhost:8080/myfaces-example-tiles-1.1.5-SNAPSHOT/
> Generated HTML:
> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
> <head>
> <meta http-equiv="Content-Type" content="text/html;CHARSET=iso-8859-1" />
> <title>Myfaces - Tiles</title>
> <link rel="stylesheet" type="text/css" href="css/tiles.css" />
> </head>
> </html>
> Basically I'm unable to use Tomahawk under JSF-1.2 currently, so any pointers on how to fix this issue or to provide more information would be great.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (TOMAHAWK-922) JSF-1.2: JspTilesViewHandlerImpl
Posted by "Leonardo Uribe (JIRA)" <de...@myfaces.apache.org>.
[ https://issues.apache.org/jira/browse/TOMAHAWK-922?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12626721#action_12626721 ]
Leonardo Uribe commented on TOMAHAWK-922:
-----------------------------------------
Since the solution proposed works I'll close this issue as fixed (after release of myfaces 1.2.4)
> JSF-1.2: JspTilesViewHandlerImpl
> --------------------------------
>
> Key: TOMAHAWK-922
> URL: https://issues.apache.org/jira/browse/TOMAHAWK-922
> Project: MyFaces Tomahawk
> Issue Type: Bug
> Components: Tiles
> Affects Versions: 1.1.5-SNAPSHOT
> Environment: MyFaces Tomahawk SVN HEAD + JSF-1.2_03 (Reference implementation) + JDK-1.5.0_11 + Tomcat-6.0.10
> Reporter: Jesper Pedersen
>
> The JspTilesViewHandlerImpl doesn't work under JSF-1.2 (RI) as it doesn't deliver any output.
> Steps:
> 1) Get myfaces-example-tiles-1.1.5-SNAPSHOT.war
> 2) Replace MyFaces-Core with JSF-1.2 (RI) in WEB-INF/lib
> 3) Deploy on Tomcat-6.0.10
> 4) Go to http://localhost:8080/myfaces-example-tiles-1.1.5-SNAPSHOT/
> Generated HTML:
> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
> <head>
> <meta http-equiv="Content-Type" content="text/html;CHARSET=iso-8859-1" />
> <title>Myfaces - Tiles</title>
> <link rel="stylesheet" type="text/css" href="css/tiles.css" />
> </head>
> </html>
> Basically I'm unable to use Tomahawk under JSF-1.2 currently, so any pointers on how to fix this issue or to provide more information would be great.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (TOMAHAWK-922) JSF-1.2: JspTilesViewHandlerImpl
Posted by "Christian Küppers (JIRA)" <de...@myfaces.apache.org>.
[ https://issues.apache.org/jira/browse/TOMAHAWK-922?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12577742#action_12577742 ]
Christian Küppers commented on TOMAHAWK-922:
--------------------------------------------
My adjustments should be refactored, perhaps.
Because I have only copied the corresponding methods (and private class) from the defaultviewhandler (myfaces-core-1.2.2) and placed in this
handler.
Regards,
Christian
> JSF-1.2: JspTilesViewHandlerImpl
> --------------------------------
>
> Key: TOMAHAWK-922
> URL: https://issues.apache.org/jira/browse/TOMAHAWK-922
> Project: MyFaces Tomahawk
> Issue Type: Bug
> Components: Tiles
> Affects Versions: 1.1.5-SNAPSHOT
> Environment: MyFaces Tomahawk SVN HEAD + JSF-1.2_03 (Reference implementation) + JDK-1.5.0_11 + Tomcat-6.0.10
> Reporter: Jesper Pedersen
>
> The JspTilesViewHandlerImpl doesn't work under JSF-1.2 (RI) as it doesn't deliver any output.
> Steps:
> 1) Get myfaces-example-tiles-1.1.5-SNAPSHOT.war
> 2) Replace MyFaces-Core with JSF-1.2 (RI) in WEB-INF/lib
> 3) Deploy on Tomcat-6.0.10
> 4) Go to http://localhost:8080/myfaces-example-tiles-1.1.5-SNAPSHOT/
> Generated HTML:
> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
> <head>
> <meta http-equiv="Content-Type" content="text/html;CHARSET=iso-8859-1" />
> <title>Myfaces - Tiles</title>
> <link rel="stylesheet" type="text/css" href="css/tiles.css" />
> </head>
> </html>
> Basically I'm unable to use Tomahawk under JSF-1.2 currently, so any pointers on how to fix this issue or to provide more information would be great.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (TOMAHAWK-922) JSF-1.2: JspTilesViewHandlerImpl
Posted by "Jesper Pedersen (JIRA)" <de...@myfaces.apache.org>.
[ https://issues.apache.org/jira/browse/TOMAHAWK-922?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12513506 ]
Jesper Pedersen commented on TOMAHAWK-922:
------------------------------------------
Using MyFaces-1.2.0 as the JSF implementation and Tomahawk-1.1.7-SNAPSHOT (20070717) gives:
SEVERE: Servlet.service() for servlet jsp threw exception
org.apache.jasper.JasperException: /common/navigation.jsp(15,4) According to TLD or attribute directive in tag file, attribute action does not accept any e
xpressions
at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:301)
at org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatch(ServletExternalContextImpl.java:334)
at org.apache.myfaces.tomahawk.application.jsp.JspTilesViewHandlerImpl.dispatch(JspTilesViewHandlerImpl.java:236)
at org.apache.myfaces.tomahawk.application.jsp.JspTilesViewHandlerImpl.renderView(JspTilesViewHandlerImpl.java:222)
at org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:41)
at org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:132)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:138)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:147)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
> JSF-1.2: JspTilesViewHandlerImpl
> --------------------------------
>
> Key: TOMAHAWK-922
> URL: https://issues.apache.org/jira/browse/TOMAHAWK-922
> Project: MyFaces Tomahawk
> Issue Type: Bug
> Components: Tiles
> Affects Versions: 1.1.5-SNAPSHOT
> Environment: MyFaces Tomahawk SVN HEAD + JSF-1.2_03 (Reference implementation) + JDK-1.5.0_11 + Tomcat-6.0.10
> Reporter: Jesper Pedersen
>
> The JspTilesViewHandlerImpl doesn't work under JSF-1.2 (RI) as it doesn't deliver any output.
> Steps:
> 1) Get myfaces-example-tiles-1.1.5-SNAPSHOT.war
> 2) Replace MyFaces-Core with JSF-1.2 (RI) in WEB-INF/lib
> 3) Deploy on Tomcat-6.0.10
> 4) Go to http://localhost:8080/myfaces-example-tiles-1.1.5-SNAPSHOT/
> Generated HTML:
> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
> <head>
> <meta http-equiv="Content-Type" content="text/html;CHARSET=iso-8859-1" />
> <title>Myfaces - Tiles</title>
> <link rel="stylesheet" type="text/css" href="css/tiles.css" />
> </head>
> </html>
> Basically I'm unable to use Tomahawk under JSF-1.2 currently, so any pointers on how to fix this issue or to provide more information would be great.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (TOMAHAWK-922) JSF-1.2: JspTilesViewHandlerImpl
Posted by "Hal Deadman (JIRA)" <de...@myfaces.apache.org>.
[ https://issues.apache.org/jira/browse/TOMAHAWK-922?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12583489#action_12583489 ]
Hal Deadman commented on TOMAHAWK-922:
--------------------------------------
Regarding the comment above: "There is a tiles-example checked in to the MyFaces sources which show this is working. ".
That example uses Myfaces 1.1, if you try the example with Myfaces 1.2 then it won't work.
Tiles 2.0.5 and the JspTilesTwoViewHandler don't work with MyFaces 1.2.2 because the f:view and f:subview tags expect the request to be wrapped in a ViewResponseWrapper. If the request isn't an instance of ViewResponseWrapper then those tags silently render none of their body content. Christian's version posted above,seems to work although I am still working through other upgrade issues and haven't used it much yet.
The JSF->Tiles story is fairly confusing at this time. From what I gather, there are three streams of tiles: struts-tiles, stand-alone shale tiles, and tiles 2.x. Shale still list tiles support as a feature on their website but the shale-tiles code seems to have moved into the sandbox because it was holding up a future release and I don't think it works with Tiles 2.x and probably doesn't work with Myfaces 1.2 either. I don't think the Myfaces site says anywhere that Tomahawk's tiles2 support doesn't work with Myfaces 1.2. Combine the tiles confusion with two versions of JSF (1.1&1.2) from two different implementations (RI and Myfaces) and trying to figure out what works where is tricky.
> JSF-1.2: JspTilesViewHandlerImpl
> --------------------------------
>
> Key: TOMAHAWK-922
> URL: https://issues.apache.org/jira/browse/TOMAHAWK-922
> Project: MyFaces Tomahawk
> Issue Type: Bug
> Components: Tiles
> Affects Versions: 1.1.5-SNAPSHOT
> Environment: MyFaces Tomahawk SVN HEAD + JSF-1.2_03 (Reference implementation) + JDK-1.5.0_11 + Tomcat-6.0.10
> Reporter: Jesper Pedersen
>
> The JspTilesViewHandlerImpl doesn't work under JSF-1.2 (RI) as it doesn't deliver any output.
> Steps:
> 1) Get myfaces-example-tiles-1.1.5-SNAPSHOT.war
> 2) Replace MyFaces-Core with JSF-1.2 (RI) in WEB-INF/lib
> 3) Deploy on Tomcat-6.0.10
> 4) Go to http://localhost:8080/myfaces-example-tiles-1.1.5-SNAPSHOT/
> Generated HTML:
> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
> <head>
> <meta http-equiv="Content-Type" content="text/html;CHARSET=iso-8859-1" />
> <title>Myfaces - Tiles</title>
> <link rel="stylesheet" type="text/css" href="css/tiles.css" />
> </head>
> </html>
> Basically I'm unable to use Tomahawk under JSF-1.2 currently, so any pointers on how to fix this issue or to provide more information would be great.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.