Thread: [Jsf4portlets-devel] SF.net SVN: jsf4portlets:[43] trunk
Status: Alpha
Brought to you by:
alonsoft
From: <alo...@us...> - 2008-10-19 13:31:42
|
Revision: 43 http://jsf4portlets.svn.sourceforge.net/jsf4portlets/?rev=43&view=rev Author: alonsoft Date: 2008-10-19 13:31:32 +0000 (Sun, 19 Oct 2008) Log Message: ----------- Modified Paths: -------------- trunk/jsf4portlets/pom.xml trunk/jsf4portlets-ext/pom.xml trunk/pom.xml Modified: trunk/jsf4portlets/pom.xml =================================================================== --- trunk/jsf4portlets/pom.xml 2008-06-19 16:22:30 UTC (rev 42) +++ trunk/jsf4portlets/pom.xml 2008-10-19 13:31:32 UTC (rev 43) @@ -65,7 +65,7 @@ <artifactId>servlet-api</artifactId> </dependency> <dependency> - <groupId>javax.servlet</groupId> + <groupId>javax.servlet.jsp</groupId> <artifactId>jsp-api</artifactId> </dependency> <dependency> Modified: trunk/jsf4portlets-ext/pom.xml =================================================================== --- trunk/jsf4portlets-ext/pom.xml 2008-06-19 16:22:30 UTC (rev 42) +++ trunk/jsf4portlets-ext/pom.xml 2008-10-19 13:31:32 UTC (rev 43) @@ -51,7 +51,7 @@ <artifactId>servlet-api</artifactId> </dependency> <dependency> - <groupId>javax.servlet</groupId> + <groupId>javax.servlet.jsp</groupId> <artifactId>jsp-api</artifactId> </dependency> <dependency> Modified: trunk/pom.xml =================================================================== --- trunk/pom.xml 2008-06-19 16:22:30 UTC (rev 42) +++ trunk/pom.xml 2008-10-19 13:31:32 UTC (rev 43) @@ -191,7 +191,7 @@ <scope>provided</scope> </dependency> <dependency> - <groupId>javax.servlet</groupId> + <groupId>javax.servlet.jsp</groupId> <artifactId>jsp-api</artifactId> <version>2.1</version> <scope>provided</scope> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <alo...@us...> - 2012-05-21 08:51:07
|
Revision: 83 http://jsf4portlets.svn.sourceforge.net/jsf4portlets/?rev=83&view=rev Author: alonsoft Date: 2012-05-21 08:50:58 +0000 (Mon, 21 May 2012) Log Message: ----------- Fixing maven build Modified Paths: -------------- trunk/jsf4portlets-api/pom.xml trunk/jsf4portlets-ext/pom.xml trunk/jsf4portlets-impl/pom.xml trunk/pom.xml Property Changed: ---------------- trunk/ trunk/jsf4portlets-api/ trunk/jsf4portlets-ext/ trunk/jsf4portlets-impl/ Property changes on: trunk ___________________________________________________________________ Modified: svn:ignore - .settings .classpath .project + .settings .classpath .project atlassian-ide-plugin.xml jsf4portlets-project.iml .idea Property changes on: trunk/jsf4portlets-api ___________________________________________________________________ Modified: svn:ignore - .settings* target* .classpath .project + .settings* target* .classpath .project jsf4portlets-api.iml Modified: trunk/jsf4portlets-api/pom.xml =================================================================== --- trunk/jsf4portlets-api/pom.xml 2011-04-04 09:42:54 UTC (rev 82) +++ trunk/jsf4portlets-api/pom.xml 2012-05-21 08:50:58 UTC (rev 83) @@ -22,6 +22,7 @@ <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> + <version>2.4</version> <configuration> <archive> <manifest> Property changes on: trunk/jsf4portlets-ext ___________________________________________________________________ Modified: svn:ignore - .settings* target* .classpath .project + .settings* target* .classpath .project jsf4portlets-ext.iml Modified: trunk/jsf4portlets-ext/pom.xml =================================================================== --- trunk/jsf4portlets-ext/pom.xml 2011-04-04 09:42:54 UTC (rev 82) +++ trunk/jsf4portlets-ext/pom.xml 2012-05-21 08:50:58 UTC (rev 83) @@ -1,27 +1,27 @@ -<?xml version="1.0" encoding="ISO-8859-1"?> - -<!-- - JSF 4 Portlets - JSF Portlet Bridge (JSR-301) - Copyright (C) 2008 A. Alonso Dominguez - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - - A. Alonso Dominguez - alo...@us... ---> - +<?xml version="1.0" encoding="ISO-8859-1"?> + +<!-- + JSF 4 Portlets - JSF Portlet Bridge (JSR-301) + Copyright (C) 2008 A. Alonso Dominguez + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + + A. Alonso Dominguez + alo...@us... +--> + <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> @@ -89,25 +89,27 @@ <artifactId>portletappengine</artifactId> <groupId>com.sun.portal.portletcontainer</groupId> </dependency> - - <dependency> - <groupId>jsf-extensions</groupId> - <artifactId>jsf-extensions-run-time</artifactId> - </dependency> + + <!-- + <dependency> + <groupId>jsf-extensions</groupId> + <artifactId>jsf-extensions-run-time</artifactId> + </dependency> + --> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> - </dependency> - - <dependency> - <groupId>net.sf.jsf4portlets</groupId> - <artifactId>jsf4portlets-api</artifactId> - </dependency> - <dependency> - <groupId>net.sf.jsf4portlets</groupId> - <artifactId>jsf4portlets-impl</artifactId> </dependency> + + <dependency> + <groupId>net.sf.jsf4portlets</groupId> + <artifactId>jsf4portlets-api</artifactId> + </dependency> + <dependency> + <groupId>net.sf.jsf4portlets</groupId> + <artifactId>jsf4portlets-impl</artifactId> + </dependency> </dependencies> <reporting> @@ -115,28 +117,34 @@ <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-project-info-reports-plugin</artifactId> + <version>2.4</version> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> - </plugin> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-checkstyle-plugin</artifactId> + <version>2.8.1</version> </plugin> <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-checkstyle-plugin</artifactId> + <version>2.9.1</version> + </plugin> + <plugin> <groupId>net.sourceforge.maven-taglib</groupId> <artifactId>maven-taglib-plugin</artifactId> - </plugin> - <plugin> - <groupId>org.codehaus.mojo</groupId> - <artifactId>jdepend-maven-plugin</artifactId> - </plugin> - <plugin> - <groupId>org.codehaus.mojo</groupId> - <artifactId>findbugs-maven-plugin</artifactId> + <version>2.4</version> </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>jdepend-maven-plugin</artifactId> + <version>2.0-beta-2</version> + </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>findbugs-maven-plugin</artifactId> + <version>2.4.0</version> + </plugin> </plugins> - </reporting> + </reporting> -</project> +</project> Property changes on: trunk/jsf4portlets-impl ___________________________________________________________________ Modified: svn:ignore - .settings* target* .classpath .project + .settings* target* .classpath .project jsf4portlets-impl.iml Modified: trunk/jsf4portlets-impl/pom.xml =================================================================== --- trunk/jsf4portlets-impl/pom.xml 2011-04-04 09:42:54 UTC (rev 82) +++ trunk/jsf4portlets-impl/pom.xml 2012-05-21 08:50:58 UTC (rev 83) @@ -1,29 +1,29 @@ -<?xml version="1.0" encoding="ISO-8859-1"?> - -<!-- - JSF 4 Portlets - JSF Portlet Bridge (JSR-301) - Copyright (C) 2010 A. Alonso Dominguez - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - - A. Alonso Dominguez - alo...@us... ---> - -<project xmlns="http://maven.apache.org/POM/4.0.0" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" +<?xml version="1.0" encoding="ISO-8859-1"?> + +<!-- + JSF 4 Portlets - JSF Portlet Bridge (JSR-301) + Copyright (C) 2010 A. Alonso Dominguez + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + + A. Alonso Dominguez + alo...@us... +--> + +<project xmlns="http://maven.apache.org/POM/4.0.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> @@ -41,22 +41,23 @@ <description> This is the main module of JSF 4 Portlets. This module brings an implementation of the JSF Portlet Bridge (JSR-301) which allows JSR-168 Portlets running as JSF applications. - </description> - - <build> - <plugins> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-jar-plugin</artifactId> - <configuration> - <archive> - <index>true</index> - </archive> - </configuration> - </plugin> - </plugins> - </build> + </description> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-jar-plugin</artifactId> + <version>2.4</version> + <configuration> + <archive> + <index>true</index> + </archive> + </configuration> + </plugin> + </plugins> + </build> + <dependencies> <dependency> <groupId>javax.el</groupId> @@ -83,12 +84,12 @@ <artifactId>portlet-api</artifactId> </dependency> - <dependency> - <groupId>commons-digester</groupId> - <artifactId>commons-digester</artifactId> - </dependency> - <dependency> + <groupId>commons-digester</groupId> + <artifactId>commons-digester</artifactId> + </dependency> + + <dependency> <groupId>org.apache.tomcat</groupId> <artifactId>catalina</artifactId> </dependency> @@ -100,12 +101,12 @@ <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> - </dependency> - <dependency> - <groupId>net.sf.jsf4portlets</groupId> - <artifactId>jsf4portlets-api</artifactId> - <scope>provided</scope> </dependency> + <dependency> + <groupId>net.sf.jsf4portlets</groupId> + <artifactId>jsf4portlets-api</artifactId> + <scope>provided</scope> + </dependency> </dependencies> <reporting> @@ -113,28 +114,34 @@ <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-project-info-reports-plugin</artifactId> + <version>2.4</version> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> - </plugin> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-checkstyle-plugin</artifactId> + <version>2.8.1</version> </plugin> <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-checkstyle-plugin</artifactId> + <version>2.9.1</version> + </plugin> + <plugin> <groupId>net.sourceforge.maven-taglib</groupId> <artifactId>maven-taglib-plugin</artifactId> - </plugin> - <plugin> - <groupId>org.codehaus.mojo</groupId> - <artifactId>jdepend-maven-plugin</artifactId> - </plugin> - <plugin> - <groupId>org.codehaus.mojo</groupId> - <artifactId>findbugs-maven-plugin</artifactId> + <version>2.4</version> </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>jdepend-maven-plugin</artifactId> + <version>2.0-beta-2</version> + </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>findbugs-maven-plugin</artifactId> + <version>2.4.0</version> + </plugin> </plugins> </reporting> -</project> +</project> Modified: trunk/pom.xml =================================================================== --- trunk/pom.xml 2011-04-04 09:42:54 UTC (rev 82) +++ trunk/pom.xml 2012-05-21 08:50:58 UTC (rev 83) @@ -1,27 +1,27 @@ -<?xml version="1.0" encoding="ISO-8859-1"?> - -<!-- - JSF 4 Portlets - JSF Portlet Bridge (JSR-301) - Copyright (C) 2008 A. Alonso Dominguez - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - - A. Alonso Dominguez - alo...@us... ---> - +<?xml version="1.0" encoding="ISO-8859-1"?> + +<!-- + JSF 4 Portlets - JSF Portlet Bridge (JSR-301) + Copyright (C) 2008 A. Alonso Dominguez + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + + A. Alonso Dominguez + alo...@us... +--> + <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> @@ -96,30 +96,30 @@ <layout>default</layout> </snapshotRepository> </distributionManagement> - - <repositories> - <repository> - <id>maven1-java.net</id> - <name>Java.NET Maven 1 Repository</name> - <url>http://download.java.net/maven/1</url> - <layout>legacy</layout> - </repository> - <repository> - <id>maven2-java.net</id> - <name>Java.NET Maven 2 Repository</name> - <url>http://download.java.net/maven/2</url> - </repository> - </repositories> - <modules> - <module>jsf4portlets-api</module> - <module>jsf4portlets-impl</module> - <!--module>jsf4portlets-ext</module--> - </modules> - - <organization> - <name>SourceForge.net</name> - <url>http://www.sourceforge.net</url> + <repositories> + <repository> + <id>maven1-java.net</id> + <name>Java.NET Maven 1 Repository</name> + <url>http://download.java.net/maven/1</url> + <layout>legacy</layout> + </repository> + <repository> + <id>maven2-java.net</id> + <name>Java.NET Maven 2 Repository</name> + <url>http://download.java.net/maven/2</url> + </repository> + </repositories> + + <modules> + <module>jsf4portlets-api</module> + <module>jsf4portlets-impl</module> + <module>jsf4portlets-ext</module> + </modules> + + <organization> + <name>SourceForge.net</name> + <url>http://www.sourceforge.net</url> </organization> <build> @@ -129,25 +129,28 @@ <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> + <version>2.4</version> <configuration> <source>1.5</source> <target>1.5</target> </configuration> </plugin> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-eclipse-plugin</artifactId> - <configuration> - <downloadSources>true</downloadSources> - <downloadJavadocs>true</downloadJavadocs> - </configuration> - </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-eclipse-plugin</artifactId> + <version>2.9</version> + <configuration> + <downloadSources>true</downloadSources> + <downloadJavadocs>true</downloadJavadocs> + </configuration> + </plugin> </plugins> </pluginManagement> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-assembly-plugin</artifactId> + <version>2.3</version> <configuration> <descriptors> <descriptor>src/assembly/bin.xml</descriptor> @@ -163,21 +166,25 @@ <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-project-info-reports-plugin</artifactId> + <version>2.4</version> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-javadoc-plugin</artifactId> - <configuration> - <aggregate>true</aggregate> + <artifactId>maven-javadoc-plugin</artifactId> + <version>2.8.1</version> + <configuration> + <aggregate>true</aggregate> </configuration> </plugin> <plugin> <groupId>net.sourceforge.maven-taglib</groupId> <artifactId>maven-taglib-plugin</artifactId> + <version>2.4</version> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-changelog-plugin</artifactId> + <version>2.2</version> </plugin> </plugins> </reporting> @@ -305,41 +312,43 @@ <scope>provided</scope> <optional>true</optional> </dependency> - + + <!-- <dependency> <groupId>jsf-extensions</groupId> <artifactId>jsf-extensions-run-time</artifactId> <version>0.1alpha4</version> - <scope>compile</scope> + <scope>compile</scope> <optional>true</optional> </dependency> + --> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> - </dependency> - - <dependency> - <groupId>net.sf.jsf4portlets</groupId> - <artifactId>jsf4portlets-api</artifactId> - <version>${pom.version}</version> - <scope>provided</scope> - </dependency> - <dependency> - <groupId>net.sf.jsf4portlets</groupId> - <artifactId>jsf4portlets-impl</artifactId> - <version>${pom.version}</version> - <scope>compile</scope> </dependency> + + <dependency> + <groupId>net.sf.jsf4portlets</groupId> + <artifactId>jsf4portlets-api</artifactId> + <version>${project.version}</version> + <scope>provided</scope> + </dependency> + <dependency> + <groupId>net.sf.jsf4portlets</groupId> + <artifactId>jsf4portlets-impl</artifactId> + <version>${project.version}</version> + <scope>compile</scope> + </dependency> </dependencies> </dependencyManagement> - <properties> - <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> - - <openportal.version>2.0-m4</openportal.version> - <openportal-container.version>1.1-m4</openportal-container.version> - </properties> -</project> + <properties> + <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> + + <openportal.version>2.0-m4</openportal.version> + <openportal-container.version>1.1-m4</openportal-container.version> + </properties> +</project> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <alo...@us...> - 2012-06-23 16:24:17
|
Revision: 85 http://jsf4portlets.svn.sourceforge.net/jsf4portlets/?rev=85&view=rev Author: alonsoft Date: 2012-06-23 16:24:11 +0000 (Sat, 23 Jun 2012) Log Message: ----------- initial tck Modified Paths: -------------- trunk/pom.xml Added Paths: ----------- trunk/jsf4portlets-tck/ trunk/jsf4portlets-tck/pom.xml trunk/jsf4portlets-tck/src/ trunk/jsf4portlets-tck/src/main/ trunk/jsf4portlets-tck/src/main/java/ trunk/jsf4portlets-tck/src/main/java/net/ trunk/jsf4portlets-tck/src/main/java/net/sf/ trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/ trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/ trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/TCKConstants.java trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/ trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/application/ trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/application/TCKApplication.java trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/application/TCKApplicationFactory.java trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/application/TCKLifecycle.java trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/application/TCKLifecycleFactory.java trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/application/TCKViewHandler.java trunk/jsf4portlets-tck/src/test/ trunk/jsf4portlets-tck/src/test/java/ trunk/jsf4portlets-tck/src/test/java/net/ trunk/jsf4portlets-tck/src/test/java/net/sf/ trunk/jsf4portlets-tck/src/test/java/net/sf/jsf4portlets/ trunk/jsf4portlets-tck/src/test/java/net/sf/jsf4portlets/tck/ trunk/jsf4portlets-tck/src/test/java/net/sf/jsf4portlets/tck/Chapter3_1Test.java Property changes on: trunk/jsf4portlets-tck ___________________________________________________________________ Added: svn:ignore + jsf4portlets-tck.iml Added: trunk/jsf4portlets-tck/pom.xml =================================================================== --- trunk/jsf4portlets-tck/pom.xml (rev 0) +++ trunk/jsf4portlets-tck/pom.xml 2012-06-23 16:24:11 UTC (rev 85) @@ -0,0 +1,75 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project xmlns="http://maven.apache.org/POM/4.0.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> + <parent> + <artifactId>jsf4portlets-project</artifactId> + <groupId>net.sf.jsf4portlets</groupId> + <version>1.0-alpha-3-SNAPSHOT</version> + </parent> + <modelVersion>4.0.0</modelVersion> + + <name>JSF 4 Portlets TCK</name> + <artifactId>jsf4portlets-tck</artifactId> + + <dependencies> + <dependency> + <groupId>javax.el</groupId> + <artifactId>el-api</artifactId> + <scope>compile</scope> + </dependency> + <dependency> + <groupId>javax.servlet</groupId> + <artifactId>servlet-api</artifactId> + <scope>compile</scope> + </dependency> + <dependency> + <groupId>javax.servlet.jsp</groupId> + <artifactId>jsp-api</artifactId> + <scope>compile</scope> + </dependency> + <dependency> + <groupId>javax.faces</groupId> + <artifactId>jsf-api</artifactId> + <scope>compile</scope> + </dependency> + <dependency> + <groupId>javax.annotation</groupId> + <artifactId>jsr250-api</artifactId> + <scope>compile</scope> + </dependency> + <dependency> + <groupId>javax.portlet</groupId> + <artifactId>portlet-api</artifactId> + <scope>compile</scope> + </dependency> + + <dependency> + <groupId>net.sf.jsf4portlets</groupId> + <artifactId>jsf4portlets-api</artifactId> + </dependency> + <dependency> + <groupId>net.sf.jsf4portlets</groupId> + <artifactId>jsf4portlets-impl</artifactId> + </dependency> + <dependency> + <groupId>net.sf.jsf4portlets</groupId> + <artifactId>jsf4portlets-ext</artifactId> + </dependency> + + <dependency> + <groupId>org.mortbay.jetty</groupId> + <artifactId>jetty</artifactId> + <version>${jetty.version}</version> + <scope>test</scope> + </dependency> + <dependency> + <groupId>junit</groupId> + <artifactId>junit</artifactId> + </dependency> + <dependency> + <groupId>org.hamcrest</groupId> + <artifactId>hamcrest-all</artifactId> + </dependency> + </dependencies> +</project> \ No newline at end of file Added: trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/TCKConstants.java =================================================================== --- trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/TCKConstants.java (rev 0) +++ trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/TCKConstants.java 2012-06-23 16:24:11 UTC (rev 85) @@ -0,0 +1,7 @@ +package net.sf.jsf4portlets.tck; + +public final class TCKConstants { + + private TCKConstants() { } + +} Added: trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/application/TCKApplication.java =================================================================== --- trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/application/TCKApplication.java (rev 0) +++ trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/application/TCKApplication.java 2012-06-23 16:24:11 UTC (rev 85) @@ -0,0 +1,255 @@ +package net.sf.jsf4portlets.tck.faces.application; + +import javax.el.*; +import javax.faces.FacesException; +import javax.faces.application.Application; +import javax.faces.application.NavigationHandler; +import javax.faces.application.StateManager; +import javax.faces.application.ViewHandler; +import javax.faces.component.UIComponent; +import javax.faces.context.FacesContext; +import javax.faces.convert.Converter; +import javax.faces.el.*; +import javax.faces.event.ActionListener; +import javax.faces.validator.Validator; +import java.util.Collection; +import java.util.Iterator; +import java.util.Locale; +import java.util.ResourceBundle; + +public class TCKApplication extends Application { + + private Application delegate; + private boolean addedViewHandler = false; + private TCKViewHandler tckViewHandler; + + public TCKApplication(Application delegate) { + this.delegate = delegate; + } + + @Override + public ActionListener getActionListener() { + return delegate.getActionListener(); + } + + @Override + public void setActionListener(ActionListener listener) { + delegate.setActionListener(listener); + } + + @Override + public Locale getDefaultLocale() { + return delegate.getDefaultLocale(); + } + + @Override + public void setDefaultLocale(Locale locale) { + delegate.setDefaultLocale(locale); + } + + @Override + public String getDefaultRenderKitId() { + return delegate.getDefaultRenderKitId(); + } + + @Override + public void setDefaultRenderKitId(String renderKitId) { + delegate.setDefaultRenderKitId(renderKitId); + } + + @Override + public String getMessageBundle() { + return delegate.getMessageBundle(); + } + + @Override + public void setMessageBundle(String bundle) { + delegate.setMessageBundle(bundle); + } + + @Override + public NavigationHandler getNavigationHandler() { + return delegate.getNavigationHandler(); + } + + @Override + public void setNavigationHandler(NavigationHandler handler) { + delegate.setNavigationHandler(handler); + } + + @Override + public PropertyResolver getPropertyResolver() { + return delegate.getPropertyResolver(); + } + + @Override + public void setPropertyResolver(PropertyResolver resolver) { + delegate.setPropertyResolver(resolver); + } + + @Override + public ResourceBundle getResourceBundle(FacesContext ctx, String name) { + return delegate.getResourceBundle(ctx, name); + } + + @Override + public VariableResolver getVariableResolver() { + return delegate.getVariableResolver(); + } + + @Override + public void setVariableResolver(VariableResolver resolver) { + delegate.setVariableResolver(resolver); + } + + @Override + public void addELResolver(ELResolver resolver) { + delegate.addELResolver(resolver); + } + + @Override + public ELResolver getELResolver() { + return delegate.getELResolver(); + } + + @Override + public ViewHandler getViewHandler() { + return delegate.getViewHandler(); + } + + @Override + public void setViewHandler(ViewHandler handler) { + if (!addedViewHandler) { + tckViewHandler = new TCKViewHandler(handler); + delegate.setViewHandler(tckViewHandler); + addedViewHandler = true; + } else { + delegate.setViewHandler(handler); + } + } + + @Override + public StateManager getStateManager() { + return delegate.getStateManager(); + } + + @Override + public void setStateManager(StateManager manager) { + delegate.setStateManager(manager); + } + + @Override + public void addComponent(String componentType, String componentClass) { + delegate.addComponent(componentType, componentClass); + } + + @Override + public UIComponent createComponent(String componentType) throws FacesException { + return delegate.createComponent(componentType); + } + + @Override + public UIComponent createComponent(ValueBinding componentBinding, FacesContext context, String componentType) throws FacesException { + return delegate.createComponent(componentBinding, context, componentType); + } + + @Override + public UIComponent createComponent(ValueExpression componentExpression, FacesContext context, String componentType) throws FacesException { + return delegate.createComponent(componentExpression, context, componentType); + } + + @Override + public Iterator<String> getComponentTypes() { + return delegate.getComponentTypes(); + } + + @Override + public void addConverter(String converterId, String converterClass) { + delegate.addConverter(converterId, converterClass); + } + + @Override + public void addConverter(Class targetClass, String converterClass) { + delegate.addConverter(targetClass, converterClass); + } + + @Override + public Converter createConverter(String converterId) { + return delegate.createConverter(converterId); + } + + @Override + public Converter createConverter(Class targetClass) { + return delegate.createConverter(targetClass); + } + + @Override + public Iterator<String> getConverterIds() { + return delegate.getConverterIds(); + } + + @Override + public Iterator<Class> getConverterTypes() { + return delegate.getConverterTypes(); + } + + @Override + public ExpressionFactory getExpressionFactory() { + return delegate.getExpressionFactory(); + } + + @Override + public Object evaluateExpressionGet(FacesContext context, String expression, Class expectedType) throws ELException { + return delegate.evaluateExpressionGet(context, expression, expectedType); + } + + @Override + public MethodBinding createMethodBinding(String ref, Class[] params) throws ReferenceSyntaxException { + return delegate.createMethodBinding(ref, params); + } + + @Override + public Iterator<Locale> getSupportedLocales() { + return delegate.getSupportedLocales(); + } + + @Override + public void setSupportedLocales(Collection<Locale> locales) { + delegate.setSupportedLocales(locales); + } + + @Override + public void addELContextListener(ELContextListener listener) { + delegate.addELContextListener(listener); + } + + @Override + public void removeELContextListener(ELContextListener listener) { + delegate.removeELContextListener(listener); + } + + @Override + public ELContextListener[] getELContextListeners() { + return delegate.getELContextListeners(); + } + + @Override + public void addValidator(String validatorId, String validatorClass) { + delegate.addValidator(validatorId, validatorClass); + } + + @Override + public Validator createValidator(String validatorId) throws FacesException { + return delegate.createValidator(validatorId); + } + + @Override + public Iterator<String> getValidatorIds() { + return delegate.getValidatorIds(); + } + + @Override + public ValueBinding createValueBinding(String ref) throws ReferenceSyntaxException { + return delegate.createValueBinding(ref); + } +} Added: trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/application/TCKApplicationFactory.java =================================================================== --- trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/application/TCKApplicationFactory.java (rev 0) +++ trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/application/TCKApplicationFactory.java 2012-06-23 16:24:11 UTC (rev 85) @@ -0,0 +1,28 @@ +package net.sf.jsf4portlets.tck.faces.application; + +import javax.faces.application.Application; +import javax.faces.application.ApplicationFactory; + +public class TCKApplicationFactory extends ApplicationFactory { + + private ApplicationFactory delegate; + private TCKApplication tckApplication; + + public TCKApplicationFactory(ApplicationFactory delegate) { + this.delegate = delegate; + } + + @Override + public Application getApplication() { + if (tckApplication == null) { + tckApplication = new TCKApplication(delegate.getApplication()); + } + return tckApplication; + } + + @Override + public void setApplication(Application application) { + delegate.setApplication(application); + this.tckApplication = null; + } +} Added: trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/application/TCKLifecycle.java =================================================================== --- trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/application/TCKLifecycle.java (rev 0) +++ trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/application/TCKLifecycle.java 2012-06-23 16:24:11 UTC (rev 85) @@ -0,0 +1,40 @@ +package net.sf.jsf4portlets.tck.faces.application; + +import javax.faces.FacesException; +import javax.faces.context.FacesContext; +import javax.faces.event.PhaseListener; +import javax.faces.lifecycle.Lifecycle; + +public class TCKLifecycle extends Lifecycle { + + private Lifecycle delegate; + + public TCKLifecycle(Lifecycle delegate) { + this.delegate = delegate; + } + + @Override + public void addPhaseListener(PhaseListener listener) { + delegate.addPhaseListener(listener); + } + + @Override + public void execute(FacesContext context) throws FacesException { + delegate.execute(context); + } + + @Override + public PhaseListener[] getPhaseListeners() { + return delegate.getPhaseListeners(); + } + + @Override + public void removePhaseListener(PhaseListener listener) { + delegate.removePhaseListener(listener); + } + + @Override + public void render(FacesContext context) throws FacesException { + delegate.render(context); + } +} Added: trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/application/TCKLifecycleFactory.java =================================================================== --- trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/application/TCKLifecycleFactory.java (rev 0) +++ trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/application/TCKLifecycleFactory.java 2012-06-23 16:24:11 UTC (rev 85) @@ -0,0 +1,25 @@ +package net.sf.jsf4portlets.tck.faces.application; + +import javax.faces.lifecycle.Lifecycle; +import javax.faces.lifecycle.LifecycleFactory; +import java.util.Iterator; + +public class TCKLifecycleFactory extends LifecycleFactory { + + private LifecycleFactory delegate; + + @Override + public void addLifecycle(String lifecycleId, Lifecycle lifecycle) { + delegate.addLifecycle(lifecycleId, lifecycle); + } + + @Override + public Lifecycle getLifecycle(String lifecycleId) { + return delegate.getLifecycle(lifecycleId); + } + + @Override + public Iterator<String> getLifecycleIds() { + return delegate.getLifecycleIds(); + } +} Added: trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/application/TCKViewHandler.java =================================================================== --- trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/application/TCKViewHandler.java (rev 0) +++ trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/application/TCKViewHandler.java 2012-06-23 16:24:11 UTC (rev 85) @@ -0,0 +1,18 @@ +package net.sf.jsf4portlets.tck.faces.application; + +import javax.faces.application.ViewHandler; +import javax.faces.application.ViewHandlerWrapper; + +public class TCKViewHandler extends ViewHandlerWrapper { + + private ViewHandler delegate; + + public TCKViewHandler(ViewHandler delegate) { + this.delegate = delegate; + } + + @Override + protected ViewHandler getWrapped() { + return delegate; + } +} Added: trunk/jsf4portlets-tck/src/test/java/net/sf/jsf4portlets/tck/Chapter3_1Test.java =================================================================== --- trunk/jsf4portlets-tck/src/test/java/net/sf/jsf4portlets/tck/Chapter3_1Test.java (rev 0) +++ trunk/jsf4portlets-tck/src/test/java/net/sf/jsf4portlets/tck/Chapter3_1Test.java 2012-06-23 16:24:11 UTC (rev 85) @@ -0,0 +1,21 @@ +package net.sf.jsf4portlets.tck; + +import org.junit.Test; + +import javax.portlet.faces.GenericFacesPortlet; + +import static org.junit.Assert.*; +import static org.hamcrest.Matchers.*; + +public class Chapter3_1Test { + + private static final String SPECIFICATION_TITLE = "Portlet 1.0 Bridge for JavaServer Faces 1.2"; + + @Test + public void checkSpecificationTitle() { + GenericFacesPortlet portlet = new GenericFacesPortlet(); + Package pack = portlet.getClass().getPackage(); + assertThat(pack.getSpecificationTitle(), equalTo(SPECIFICATION_TITLE)); + } + +} Modified: trunk/pom.xml =================================================================== --- trunk/pom.xml 2012-06-23 10:56:33 UTC (rev 84) +++ trunk/pom.xml 2012-06-23 16:24:11 UTC (rev 85) @@ -115,6 +115,7 @@ <module>jsf4portlets-api</module> <module>jsf4portlets-impl</module> <module>jsf4portlets-ext</module> + <module>jsf4portlets-tck</module> </modules> <organization> @@ -252,7 +253,7 @@ </exclusion> </exclusions> </dependency> - + <dependency> <groupId>org.apache.tomcat</groupId> <artifactId>catalina</artifactId> @@ -264,7 +265,7 @@ <dependency> <groupId>org.mortbay.jetty</groupId> <artifactId>jetty-plus</artifactId> - <version>6.1.2</version> + <version>${jetty.version}</version> <scope>provided</scope> <optional>true</optional> <exclusions> @@ -326,9 +327,15 @@ <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> - <version>3.8.1</version> + <version>4.8.1</version> <scope>test</scope> </dependency> + <dependency> + <groupId>org.hamcrest</groupId> + <artifactId>hamcrest-all</artifactId> + <version>1.1</version> + <scope>test</scope> + </dependency> <dependency> <groupId>net.sf.jsf4portlets</groupId> @@ -342,12 +349,20 @@ <version>${project.version}</version> <scope>compile</scope> </dependency> + <dependency> + <groupId>net.sf.jsf4portlets</groupId> + <artifactId>jsf4portlets-ext</artifactId> + <version>${project.version}</version> + <scope>compile</scope> + </dependency> </dependencies> </dependencyManagement> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> - + + <jetty.version>6.1.25</jetty.version> + <openportal.version>2.0-m4</openportal.version> <openportal-container.version>1.1-m4</openportal-container.version> </properties> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <alo...@us...> - 2012-06-24 13:05:36
|
Revision: 87 http://jsf4portlets.svn.sourceforge.net/jsf4portlets/?rev=87&view=rev Author: alonsoft Date: 2012-06-24 13:05:29 +0000 (Sun, 24 Jun 2012) Log Message: ----------- aligning with spec on getFacesBridge preparing tck webapp Modified Paths: -------------- trunk/jsf4portlets-api/src/main/java/javax/portlet/faces/GenericFacesPortlet.java trunk/jsf4portlets-tck/pom.xml trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/TCKConstants.java Added Paths: ----------- trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/context/ trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/context/TCKFacesContextFactory.java trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/lifecycle/ trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/lifecycle/TCKLifecycle.java trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/lifecycle/TCKLifecycleFactory.java trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/portlet/ trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/portlet/TCKFacesPortlet.java trunk/jsf4portlets-tck/src/main/resources/ trunk/jsf4portlets-tck/src/test/resources/ trunk/jsf4portlets-tck/src/test/webapp/ trunk/jsf4portlets-tck/src/test/webapp/WEB-INF/ trunk/jsf4portlets-tck/src/test/webapp/WEB-INF/faces-config.xml trunk/jsf4portlets-tck/src/test/webapp/WEB-INF/portlet.xml trunk/jsf4portlets-tck/src/test/webapp/WEB-INF/web.xml Removed Paths: ------------- trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/application/TCKLifecycle.java trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/application/TCKLifecycleFactory.java Modified: trunk/jsf4portlets-api/src/main/java/javax/portlet/faces/GenericFacesPortlet.java =================================================================== --- trunk/jsf4portlets-api/src/main/java/javax/portlet/faces/GenericFacesPortlet.java 2012-06-24 11:39:38 UTC (rev 86) +++ trunk/jsf4portlets-api/src/main/java/javax/portlet/faces/GenericFacesPortlet.java 2012-06-24 13:05:29 UTC (rev 87) @@ -273,7 +273,17 @@ return result; } - public Bridge getFacesBridge() { + public Bridge getFacesBridge(PortletRequest request, PortletResponse response) throws PortletException { + if (facesBridge == null) { + try { + facesBridge = facesBridgeClass.newInstance(); + facesBridge.init(this.getPortletConfig()); + } catch (final Exception e) { + throw new PortletException( + "getFacesBridge: error instantiating the bridge class", + e); + } + } return facesBridge; } @@ -340,14 +350,14 @@ private void doBridgeDispatch(final RenderRequest request, final RenderResponse response) throws PortletException { // initial Bridge if not already active - initBridge(); + Bridge bridge = getFacesBridge(request, response); // Push information for Bridge into request attributes setBridgeRequestContext(request); setResponseContentType(response, getResponseContentType(request), getResponseCharacterSetEncoding(request)); try { - facesBridge.doFacesRequest(request, response); + bridge.doFacesRequest(request, response); } catch (final BridgeException e) { throw new PortletException( "doBridgeDispatch failed: error from Bridge in executing the request", @@ -359,11 +369,11 @@ private void doBridgeDispatch(final ActionRequest request, final ActionResponse response) throws PortletException { // initial Bridge if not already active - initBridge(); + Bridge bridge = getFacesBridge(request, response); // Push information for Bridge into request attributes setBridgeRequestContext(request); try { - facesBridge.doFacesRequest(request, response); + bridge.doFacesRequest(request, response); } catch (final BridgeException e) { throw new PortletException( "doBridgeDispatch failed: error from Bridge in executing the request", @@ -400,19 +410,6 @@ } } - private void initBridge() throws PortletException { - if (facesBridge == null) { - try { - facesBridge = facesBridgeClass.newInstance(); - facesBridge.init(this.getPortletConfig()); - } catch (final Exception e) { - throw new PortletException( - "doBridgeDisptach: error instantiating the bridge class", - e); - } - } - } - private boolean isNonFacesRequest(final PortletRequest request, final PortletResponse response) { if (null != request.getParameter(Bridge.NONFACES_TARGET_PATH_PARAMETER)) { Modified: trunk/jsf4portlets-tck/pom.xml =================================================================== --- trunk/jsf4portlets-tck/pom.xml 2012-06-24 11:39:38 UTC (rev 86) +++ trunk/jsf4portlets-tck/pom.xml 2012-06-24 13:05:29 UTC (rev 87) @@ -12,6 +12,56 @@ <name>JSF 4 Portlets TCK</name> <artifactId>jsf4portlets-tck</artifactId> + <properties> + <test.webapp.source>${basedir}/src/test/webapp</test.webapp.source> + <test.webapp.runtime>${project.build.directory}/${project.artifactId}</test.webapp.runtime> + </properties> + + <build> + <plugins> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>build-helper-maven-plugin</artifactId> + <version>1.7</version> + <executions> + <execution> + <id>add-test-webapp-resource</id> + <phase>generate-test-resources</phase> + <goals> + <goal>add-test-resource</goal> + </goals> + <configuration> + <resources> + <resource>${test.webapp.source}</resource> + </resources> + </configuration> + </execution> + </executions> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-antrun-plugin</artifactId> + <version>1.7</version> + <executions> + <execution> + <phase>process-test-resources</phase> + <goals> + <goal>run</goal> + </goals> + <configuration> + <target> + <mkdir dir="${test.webapp.runtime}" /> + <copy todir="${test.webapp.runtime}"> + <fileset dir="${test.webapp.source}" /> + </copy> + </target> + </configuration> + </execution> + </executions> + </plugin> + </plugins> + </build> + <dependencies> <dependency> <groupId>javax.el</groupId> Modified: trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/TCKConstants.java =================================================================== --- trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/TCKConstants.java 2012-06-24 11:39:38 UTC (rev 86) +++ trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/TCKConstants.java 2012-06-24 13:05:29 UTC (rev 87) @@ -2,6 +2,10 @@ public final class TCKConstants { + public static final String TCK_TEST_BEAN_NAME = "net.sf.jsf4portlets.tck.testBeanName"; + + public static final String TCK_TEST_NAME = "net.sf.jsf4portlets.tck.testName"; + private TCKConstants() { } } Deleted: trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/application/TCKLifecycle.java =================================================================== --- trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/application/TCKLifecycle.java 2012-06-24 11:39:38 UTC (rev 86) +++ trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/application/TCKLifecycle.java 2012-06-24 13:05:29 UTC (rev 87) @@ -1,40 +0,0 @@ -package net.sf.jsf4portlets.tck.faces.application; - -import javax.faces.FacesException; -import javax.faces.context.FacesContext; -import javax.faces.event.PhaseListener; -import javax.faces.lifecycle.Lifecycle; - -public class TCKLifecycle extends Lifecycle { - - private Lifecycle delegate; - - public TCKLifecycle(Lifecycle delegate) { - this.delegate = delegate; - } - - @Override - public void addPhaseListener(PhaseListener listener) { - delegate.addPhaseListener(listener); - } - - @Override - public void execute(FacesContext context) throws FacesException { - delegate.execute(context); - } - - @Override - public PhaseListener[] getPhaseListeners() { - return delegate.getPhaseListeners(); - } - - @Override - public void removePhaseListener(PhaseListener listener) { - delegate.removePhaseListener(listener); - } - - @Override - public void render(FacesContext context) throws FacesException { - delegate.render(context); - } -} Deleted: trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/application/TCKLifecycleFactory.java =================================================================== --- trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/application/TCKLifecycleFactory.java 2012-06-24 11:39:38 UTC (rev 86) +++ trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/application/TCKLifecycleFactory.java 2012-06-24 13:05:29 UTC (rev 87) @@ -1,25 +0,0 @@ -package net.sf.jsf4portlets.tck.faces.application; - -import javax.faces.lifecycle.Lifecycle; -import javax.faces.lifecycle.LifecycleFactory; -import java.util.Iterator; - -public class TCKLifecycleFactory extends LifecycleFactory { - - private LifecycleFactory delegate; - - @Override - public void addLifecycle(String lifecycleId, Lifecycle lifecycle) { - delegate.addLifecycle(lifecycleId, lifecycle); - } - - @Override - public Lifecycle getLifecycle(String lifecycleId) { - return delegate.getLifecycle(lifecycleId); - } - - @Override - public Iterator<String> getLifecycleIds() { - return delegate.getLifecycleIds(); - } -} Added: trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/context/TCKFacesContextFactory.java =================================================================== --- trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/context/TCKFacesContextFactory.java (rev 0) +++ trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/context/TCKFacesContextFactory.java 2012-06-24 13:05:29 UTC (rev 87) @@ -0,0 +1,21 @@ +package net.sf.jsf4portlets.tck.faces.context; + +import javax.faces.FacesException; +import javax.faces.context.FacesContext; +import javax.faces.context.FacesContextFactory; +import javax.faces.lifecycle.Lifecycle; + +public class TCKFacesContextFactory extends FacesContextFactory { + + private FacesContextFactory delegate; + + public TCKFacesContextFactory(FacesContextFactory delegate) { + this.delegate = delegate; + } + + @Override + public FacesContext getFacesContext(Object context, Object request, Object response, Lifecycle lifecycle) + throws FacesException { + return delegate.getFacesContext(context, request, response, lifecycle); + } +} Copied: trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/lifecycle/TCKLifecycle.java (from rev 85, trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/application/TCKLifecycle.java) =================================================================== --- trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/lifecycle/TCKLifecycle.java (rev 0) +++ trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/lifecycle/TCKLifecycle.java 2012-06-24 13:05:29 UTC (rev 87) @@ -0,0 +1,40 @@ +package net.sf.jsf4portlets.tck.faces.lifecycle; + +import javax.faces.FacesException; +import javax.faces.context.FacesContext; +import javax.faces.event.PhaseListener; +import javax.faces.lifecycle.Lifecycle; + +public class TCKLifecycle extends Lifecycle { + + private Lifecycle delegate; + + public TCKLifecycle(Lifecycle delegate) { + this.delegate = delegate; + } + + @Override + public void addPhaseListener(PhaseListener listener) { + delegate.addPhaseListener(listener); + } + + @Override + public void execute(FacesContext context) throws FacesException { + delegate.execute(context); + } + + @Override + public PhaseListener[] getPhaseListeners() { + return delegate.getPhaseListeners(); + } + + @Override + public void removePhaseListener(PhaseListener listener) { + delegate.removePhaseListener(listener); + } + + @Override + public void render(FacesContext context) throws FacesException { + delegate.render(context); + } +} Copied: trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/lifecycle/TCKLifecycleFactory.java (from rev 85, trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/application/TCKLifecycleFactory.java) =================================================================== --- trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/lifecycle/TCKLifecycleFactory.java (rev 0) +++ trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/lifecycle/TCKLifecycleFactory.java 2012-06-24 13:05:29 UTC (rev 87) @@ -0,0 +1,25 @@ +package net.sf.jsf4portlets.tck.faces.lifecycle; + +import javax.faces.lifecycle.Lifecycle; +import javax.faces.lifecycle.LifecycleFactory; +import java.util.Iterator; + +public class TCKLifecycleFactory extends LifecycleFactory { + + private LifecycleFactory delegate; + + @Override + public void addLifecycle(String lifecycleId, Lifecycle lifecycle) { + delegate.addLifecycle(lifecycleId, lifecycle); + } + + @Override + public Lifecycle getLifecycle(String lifecycleId) { + return delegate.getLifecycle(lifecycleId); + } + + @Override + public Iterator<String> getLifecycleIds() { + return delegate.getLifecycleIds(); + } +} Added: trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/portlet/TCKFacesPortlet.java =================================================================== --- trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/portlet/TCKFacesPortlet.java (rev 0) +++ trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/portlet/TCKFacesPortlet.java 2012-06-24 13:05:29 UTC (rev 87) @@ -0,0 +1,65 @@ +package net.sf.jsf4portlets.tck.portlet; + +import net.sf.jsf4portlets.tck.TCKConstants; + +import javax.portlet.*; +import javax.portlet.faces.Bridge; +import javax.portlet.faces.GenericFacesPortlet; +import java.io.IOException; + +public class TCKFacesPortlet extends GenericFacesPortlet { + + public static final String SEPARATOR = "_"; + + private String testBeanName; + private String testName; + + @Override + public void init(PortletConfig portletConfig) throws PortletException { + super.init(portletConfig); + + String portletName = portletConfig.getPortletName(); + if (portletName.indexOf(SEPARATOR) < 0) { + throw new UnavailableException("Invalid portlet name."); + } + + String[] parts = portletName.split(SEPARATOR); + testBeanName = parts[1]; + if (parts.length > 2) { + testName = parts[2]; + } else { + testName = parts[1]; + if (!testName.endsWith("Test")) { + testName = testName.concat("Test"); + } + } + } + + @Override + public void doDispatch(RenderRequest request, RenderResponse response) throws PortletException, IOException { + initTestRequest(request); + super.doDispatch(request, response); + } + + @Override + public void processAction(ActionRequest request, ActionResponse response) throws PortletException, IOException { + initTestRequest(request); + super.processAction(request, response); + } + + @Override + public Bridge getFacesBridge(PortletRequest request, PortletResponse response) throws PortletException { + initTestRequest(request); + return super.getFacesBridge(request, response); + } + + public String getTestName() { + return testName; + } + + private void initTestRequest(PortletRequest request) { + request.setAttribute(TCKConstants.TCK_TEST_BEAN_NAME, testBeanName); + request.setAttribute(TCKConstants.TCK_TEST_NAME, testName); + } + +} Added: trunk/jsf4portlets-tck/src/test/webapp/WEB-INF/faces-config.xml =================================================================== --- trunk/jsf4portlets-tck/src/test/webapp/WEB-INF/faces-config.xml (rev 0) +++ trunk/jsf4portlets-tck/src/test/webapp/WEB-INF/faces-config.xml 2012-06-24 13:05:29 UTC (rev 87) @@ -0,0 +1,13 @@ +<?xml version="1.0" encoding="UTF-8"?> +<faces-config version="1.2" xmlns="http://java.sun.com/xml/ns/javaee" + xmlns:bridge="http://jsf4portlets.sf.net/jsfportlet" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_1_2.xsd"> + + <factory> + <application-factory>net.sf.jsf4portlets.tck.faces.application.TCKApplicationFactory</application-factory> + <faces-context-factory>net.sf.jsf4portlets.tck.faces.context.TCKFacesContextFactory</faces-context-factory> + <lifecycle-factory>net.sf.jsf4portlets.tck.faces.lifecycle.TCKLifecycleFactory</lifecycle-factory> + </factory> + +</faces-config> Added: trunk/jsf4portlets-tck/src/test/webapp/WEB-INF/portlet.xml =================================================================== --- trunk/jsf4portlets-tck/src/test/webapp/WEB-INF/portlet.xml (rev 0) +++ trunk/jsf4portlets-tck/src/test/webapp/WEB-INF/portlet.xml 2012-06-24 13:05:29 UTC (rev 87) @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<portlet-app version="1.0" + xmlns="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"> + + +</portlet-app> Added: trunk/jsf4portlets-tck/src/test/webapp/WEB-INF/web.xml =================================================================== --- trunk/jsf4portlets-tck/src/test/webapp/WEB-INF/web.xml (rev 0) +++ trunk/jsf4portlets-tck/src/test/webapp/WEB-INF/web.xml 2012-06-24 13:05:29 UTC (rev 87) @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!DOCTYPE web-app PUBLIC '-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN' 'http://java.sun.com/dtd/web-app_2_3.dtd'> +<web-app> + <display-name>JSR-301 - TCK Web</display-name> + + <context-param> + <param-name>javax.faces.DEFAULT_SUFFIX</param-name> + <param-value>.jsp</param-value> + </context-param> + <context-param> + <param-name>javax.portlet.faces.LIFECYCLE_ID</param-name> + <param-value>TCKLifecycle</param-value> + </context-param> + + + <!-- Faces Servlet --> + <servlet> + <servlet-name>faces</servlet-name> + <servlet-class>javax.faces.webapp.FacesServlet</servlet-class> + </servlet> + + + <!-- Faces Servlet Mappings --> + <!-- + In this demo application, I chose to use suffix mapping. I did this because it makes urls + in the portlet world look nicer in the source. The portlet url should be the same + reguardless. + --> + <servlet-mapping> + <servlet-name>faces</servlet-name> + <url-pattern>*.jsf</url-pattern> + </servlet-mapping> +</web-app> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <alo...@us...> - 2012-06-24 18:04:34
|
Revision: 92 http://jsf4portlets.svn.sourceforge.net/jsf4portlets/?rev=92&view=rev Author: alonsoft Date: 2012-06-24 18:04:28 +0000 (Sun, 24 Jun 2012) Log Message: ----------- tck splitted for ease development Modified Paths: -------------- trunk/pom.xml Added Paths: ----------- trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/ trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/ trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/ trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/ trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/ trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/ Modified: trunk/pom.xml =================================================================== --- trunk/pom.xml 2012-06-24 17:55:12 UTC (rev 91) +++ trunk/pom.xml 2012-06-24 18:04:28 UTC (rev 92) @@ -132,8 +132,8 @@ <artifactId>maven-compiler-plugin</artifactId> <version>2.4</version> <configuration> - <source>1.5</source> - <target>1.5</target> + <source>${jdk.version}</source> + <target>${jdk.version}</target> </configuration> </plugin> <plugin> @@ -361,6 +361,7 @@ <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> + <jdk.version>1.5</jdk.version> <jetty.version>6.1.25</jetty.version> <openportal.version>2.0-m4</openportal.version> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <alo...@us...> - 2012-06-23 10:56:41
|
Revision: 84 http://jsf4portlets.svn.sourceforge.net/jsf4portlets/?rev=84&view=rev Author: alonsoft Date: 2012-06-23 10:56:33 +0000 (Sat, 23 Jun 2012) Log Message: ----------- some minor changes Modified Paths: -------------- trunk/jsf4portlets-ext/src/main/java/net/sf/jsf4portlets/ext/config/BridgeListenersProcessor.java trunk/jsf4portlets-ext/src/main/java/net/sf/jsf4portlets/ext/event/EventFacesPortlet.java trunk/jsf4portlets-ext/src/main/java/net/sf/jsf4portlets/ext/event/PortletEventHelper.java trunk/jsf4portlets-ext/src/main/java/net/sf/jsf4portlets/ext/facelets/FaceletPortletViewHandler.java trunk/jsf4portlets-impl/src/main/java/net/sf/jsf4portlets/config/ConfigurationFactory.java trunk/jsf4portlets-impl/src/main/java/net/sf/jsf4portlets/context/ExternalContextImpl.java trunk/jsf4portlets-impl/src/main/java/net/sf/jsf4portlets/el/PortletELResolver.java trunk/jsf4portlets-impl/src/main/java/net/sf/jsf4portlets/url/QueryString.java Added Paths: ----------- trunk/jsf4portlets-impl/src/main/java/net/sf/jsf4portlets/context/LocalesIterator.java Property Changed: ---------------- trunk/ Property changes on: trunk ___________________________________________________________________ Modified: svn:ignore - .settings .classpath .project atlassian-ide-plugin.xml jsf4portlets-project.iml .idea + .settings .classpath .project .idea jsf4portlets-project.iml Modified: trunk/jsf4portlets-ext/src/main/java/net/sf/jsf4portlets/ext/config/BridgeListenersProcessor.java =================================================================== --- trunk/jsf4portlets-ext/src/main/java/net/sf/jsf4portlets/ext/config/BridgeListenersProcessor.java 2012-05-21 08:50:58 UTC (rev 83) +++ trunk/jsf4portlets-ext/src/main/java/net/sf/jsf4portlets/ext/config/BridgeListenersProcessor.java 2012-06-23 10:56:33 UTC (rev 84) @@ -22,73 +22,72 @@ public class BridgeListenersProcessor implements ConfigurationProcessor { - private static final Logger logger = Logger.getLogger( - BridgeListenersProcessor.class.getPackage().getName(), - "net.sf.jsf4portlets.ext.LogMessages"); - - private static final String BRIDGE_EXT_NAMESPACE = - "http://jsf4portlets.sf.net/jsfportlet-ext"; - - public boolean acceptsResource(String resourceName) { - return (-1 != resourceName.indexOf("faces-config.xml")); - } + private static final Logger logger = Logger.getLogger( + BridgeListenersProcessor.class.getPackage().getName(), + "net.sf.jsf4portlets.ext.LogMessages"); - @SuppressWarnings("unchecked") - public void process(ExternalContext context, Document facesConfig) - throws IOException, SAXException { - - PortletContext portletContext = (PortletContext) context.getContext(); - RequestScopeManager rsm = RequestScopeManagerFactory.getInstance() - .getRequestScopeManager(portletContext); - - Element listeners = getBridgeListenersElement(facesConfig); - if(listeners != null) { - List<Element> list = XmlHelper.getChildElements(listeners, - BRIDGE_EXT_NAMESPACE, "bridge-listener"); - RequestScopeListener listener = null; - for(Element listenerElem : list) { - String listenerClassName = XmlHelper.getText(listenerElem); - Class<RequestScopeListener> listenerClass; - try { - listenerClass = (Class<RequestScopeListener>) Util.loadClass( - listenerClassName, this); - } catch (ClassNotFoundException e) { - if(logger.isLoggable(Level.SEVERE)) { - logger.log(Level.SEVERE, "J4PE_000004", listenerClassName); - } - continue; - } - - try { - listener = listenerClass.newInstance(); - } catch (Exception e) { - if(logger.isLoggable(Level.SEVERE)) { - LogRecord logRecord = new LogRecord(Level.SEVERE, "J4PE_000005"); - logRecord.setParameters(new Object[]{ listenerClassName }); - logRecord.setThrown(e); - logger.log(logRecord); - } - continue; - } - - rsm.addRequestScopeListener(listener); - } - } - } + private static final String BRIDGE_EXT_NAMESPACE = + "http://jsf4portlets.sf.net/jsfportlet-ext"; - private Element getBridgeListenersElement(Document facesConfig) { - final Element application = XmlHelper.getChildElement(facesConfig - .getDocumentElement(), "lifecycle"); - if (application == null) { - return null; - } - final Element extension = XmlHelper.getChildElement(application, - "lifecycle-extension"); - if (extension == null) { - return null; - } - return XmlHelper.getChildElement(extension, BRIDGE_EXT_NAMESPACE, - "bridge-listeners"); - } - + public boolean acceptsResource(String resourceName) { + return (-1 != resourceName.indexOf("faces-config.xml")); + } + + @SuppressWarnings("unchecked") + public void process(ExternalContext context, Document facesConfig) + throws IOException, SAXException { + + PortletContext portletContext = (PortletContext) context.getContext(); + RequestScopeManager rsm = RequestScopeManagerFactory.getInstance() + .getRequestScopeManager(portletContext); + + Element listeners = getBridgeListenersElement(facesConfig); + if (listeners != null) { + List<Element> list = XmlHelper.getChildElements(listeners, + BRIDGE_EXT_NAMESPACE, "bridge-listener"); + RequestScopeListener listener = null; + for (Element listenerElem : list) { + String listenerClassName = XmlHelper.getText(listenerElem); + Class<RequestScopeListener> listenerClass; + try { + listenerClass = (Class<RequestScopeListener>) Util.loadClass( + listenerClassName, this); + } catch (ClassNotFoundException e) { + if (logger.isLoggable(Level.SEVERE)) { + logger.log(Level.SEVERE, "J4PE_000004", listenerClassName); + } + continue; + } + + try { + listener = listenerClass.newInstance(); + } catch (Exception e) { + if (logger.isLoggable(Level.SEVERE)) { + LogRecord logRecord = new LogRecord(Level.SEVERE, "J4PE_000005"); + logRecord.setParameters(new Object[]{listenerClassName}); + logRecord.setThrown(e); + logger.log(logRecord); + } + continue; + } + + rsm.addRequestScopeListener(listener); + } + } + } + + private Element getBridgeListenersElement(Document facesConfig) { + final Element application = XmlHelper.getChildElement( + facesConfig.getDocumentElement(), "lifecycle"); + if (application == null) { + return null; + } + final Element extension = XmlHelper.getChildElement(application, + "lifecycle-extension"); + if (extension == null) { + return null; + } + return XmlHelper.getChildElement(extension, BRIDGE_EXT_NAMESPACE, + "bridge-listeners"); + } } Modified: trunk/jsf4portlets-ext/src/main/java/net/sf/jsf4portlets/ext/event/EventFacesPortlet.java =================================================================== --- trunk/jsf4portlets-ext/src/main/java/net/sf/jsf4portlets/ext/event/EventFacesPortlet.java 2012-05-21 08:50:58 UTC (rev 83) +++ trunk/jsf4portlets-ext/src/main/java/net/sf/jsf4portlets/ext/event/EventFacesPortlet.java 2012-06-23 10:56:33 UTC (rev 84) @@ -33,44 +33,43 @@ import com.sun.portal.portletappengine.ipc.PortletEventListener; public class EventFacesPortlet extends GenericFacesPortlet implements - PortletEventListener { + PortletEventListener { - protected static final String QUEUED_EVENTS = "javax.portlet.faces.extension.jsf4portlets.QUEUED_EVENTS"; + protected static final String QUEUED_EVENTS = + "javax.portlet.faces.extension.jsf4portlets.QUEUED_EVENTS"; + private static final Logger logger = Logger.getLogger( + EventFacesPortlet.class.getPackage().getName(), + "net.sf.jsf4portlets.ext.LogMessages"); - private static final Logger logger = Logger.getLogger( - EventFacesPortlet.class.getPackage().getName(), - "net.sf.jsf4portlets.ext.LogMessages"); + public void handleEvent(final EventRequest request, + final EventResponse response) { + final Queue<PortletEvent> queue = getEventQueue(request); + final PortletEvent event = new PortletEvent(this, + request.getEventName(), request.getEventData()); + queue.add(event); + if (logger.isLoggable(Level.FINER)) { + logger.log(Level.FINER, "J4PE_000001", new Object[]{ + event.getEventName(), getPortletName()}); + } + } - public void handleEvent(final EventRequest request, - final EventResponse response) { - final Queue<PortletEvent> queue = getEventQueue(request); - final PortletEvent event = new PortletEvent(this, request - .getEventName(), request.getEventData()); - queue.add(event); - if (logger.isLoggable(Level.FINER)) { - logger.log(Level.FINER, "J4PE_000001", new Object[] { - event.getEventName(), getPortletName() }); - } - } - - /** - * Obtains an event queue from the portlet session scope related to the - * given <code>EventRequest</code>. - * - * @param request - * the <code>EventRequest</code> - * @return an event queue - */ - @SuppressWarnings("unchecked") - private Queue<PortletEvent> getEventQueue(final EventRequest request) { - final PortletSession session = request.getPortletSession(true); - Queue<PortletEvent> queue = (Queue<PortletEvent>) session - .getAttribute(QUEUED_EVENTS); - if (queue == null) { - queue = new LinkedList<PortletEvent>(); - session.setAttribute(QUEUED_EVENTS, queue); - } - return queue; - } - + /** + * Obtains an event queue from the portlet session scope related to the + * given <code>EventRequest</code>. + * + * @param request + * the <code>EventRequest</code> + * @return an event queue + */ + @SuppressWarnings("unchecked") + private Queue<PortletEvent> getEventQueue(final EventRequest request) { + final PortletSession session = request.getPortletSession(true); + Queue<PortletEvent> queue = (Queue<PortletEvent>) + session.getAttribute(QUEUED_EVENTS); + if (queue == null) { + queue = new LinkedList<PortletEvent>(); + session.setAttribute(QUEUED_EVENTS, queue); + } + return queue; + } } Modified: trunk/jsf4portlets-ext/src/main/java/net/sf/jsf4portlets/ext/event/PortletEventHelper.java =================================================================== --- trunk/jsf4portlets-ext/src/main/java/net/sf/jsf4portlets/ext/event/PortletEventHelper.java 2012-05-21 08:50:58 UTC (rev 83) +++ trunk/jsf4portlets-ext/src/main/java/net/sf/jsf4portlets/ext/event/PortletEventHelper.java 2012-06-23 10:56:33 UTC (rev 84) @@ -31,9 +31,13 @@ public final class PortletEventHelper { + public static PortletEventHelper getInstance(FacesContext context) { + return new PortletEventHelper(context); + } + private final FacesContext context; - public PortletEventHelper(final FacesContext context) { + private PortletEventHelper(final FacesContext context) { this.context = context; } Modified: trunk/jsf4portlets-ext/src/main/java/net/sf/jsf4portlets/ext/facelets/FaceletPortletViewHandler.java =================================================================== --- trunk/jsf4portlets-ext/src/main/java/net/sf/jsf4portlets/ext/facelets/FaceletPortletViewHandler.java 2012-05-21 08:50:58 UTC (rev 83) +++ trunk/jsf4portlets-ext/src/main/java/net/sf/jsf4portlets/ext/facelets/FaceletPortletViewHandler.java 2012-06-23 10:56:33 UTC (rev 84) @@ -1,5 +1,5 @@ /* JSF 4 Portlets - JSF Portlet Bridge (JSR-301) - * Copyright (C) 2009 A. Alonso Dominguez + * Copyright (C) 2010 A. Alonso Dominguez * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -36,37 +36,35 @@ public class FaceletPortletViewHandler extends FaceletViewHandler { - public FaceletPortletViewHandler(final ViewHandler parent) { - super(parent); - } + public FaceletPortletViewHandler(final ViewHandler parent) { + super(parent); + } - @Override - protected ResponseWriter createResponseWriter(final FacesContext context) - throws FacesException, IOException { - final ExternalContext extContext = context.getExternalContext(); - final RenderKit renderKit = context.getRenderKit(); + @Override + protected ResponseWriter createResponseWriter(final FacesContext context) + throws FacesException, IOException { + final ExternalContext extContext = context.getExternalContext(); + final RenderKit renderKit = context.getRenderKit(); - final RenderRequest request = (RenderRequest) extContext.getRequest(); - final RenderResponse response = (RenderResponse) extContext - .getResponse(); + final RenderRequest request = (RenderRequest) extContext.getRequest(); + final RenderResponse response = (RenderResponse) extContext.getResponse(); - String contentType = request.getResponseContentType(); - if (contentType == null) { - contentType = "text/html"; - } + String contentType = request.getResponseContentType(); + if (contentType == null) { + contentType = "text/html"; + } - String encoding = response.getCharacterEncoding(); - if (encoding == null) { - encoding = "ISO-8859-1"; - } + String encoding = response.getCharacterEncoding(); + if (encoding == null) { + encoding = "ISO-8859-1"; + } - ResponseWriter writer = renderKit.createResponseWriter( - new StringWriter(), contentType, encoding); - contentType = writer.getContentType(); - response.setContentType(contentType); + ResponseWriter writer = renderKit.createResponseWriter( + new StringWriter(), contentType, encoding); + contentType = writer.getContentType(); + response.setContentType(contentType); - writer = writer.cloneWithWriter(response.getWriter()); - return writer; - } - -} \ No newline at end of file + writer = writer.cloneWithWriter(response.getWriter()); + return writer; + } +} Modified: trunk/jsf4portlets-impl/src/main/java/net/sf/jsf4portlets/config/ConfigurationFactory.java =================================================================== --- trunk/jsf4portlets-impl/src/main/java/net/sf/jsf4portlets/config/ConfigurationFactory.java 2012-05-21 08:50:58 UTC (rev 83) +++ trunk/jsf4portlets-impl/src/main/java/net/sf/jsf4portlets/config/ConfigurationFactory.java 2012-06-23 10:56:33 UTC (rev 84) @@ -1,5 +1,5 @@ /* JSF 4 Portlets - JSF Portlet Bridge (JSR-301) - * Copyright (C) 2009 A. Alonso Dominguez + * Copyright (C) 2010 A. Alonso Dominguez * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -44,155 +44,150 @@ public final class ConfigurationFactory { - public static final String INSTANCE_KEY = ConfigurationFactory.class - .getPackage().getName(); + public static final String INSTANCE_KEY = + ConfigurationFactory.class.getPackage().getName(); - private static final Logger logger = Logger.getLogger( - ConfigurationFactory.class.getPackage().getName(), - "net.sf.jsf4portlets.LogMessages"); + private static final Logger logger = Logger.getLogger( + ConfigurationFactory.class.getPackage().getName(), + "net.sf.jsf4portlets.LogMessages"); - private static final String META_INF = "META-INF"; - private static final String WEB_INF = "/WEB-INF"; + private static final String META_INF = "META-INF"; + private static final String WEB_INF = "/WEB-INF"; + private static final String CLASSPATH_FACES_CONFIG_XML = META_INF + + "/faces-config.xml"; + private static final String WEB_FACES_CONFIG_XML = WEB_INF + + "/faces-config.xml"; + private static final String PORTLET_XML = WEB_INF + "/portlet.xml"; + private static final String WEB_XML = WEB_INF + "/web.xml"; - private static final String CLASSPATH_FACES_CONFIG_XML = META_INF - + "/faces-config.xml"; - private static final String WEB_FACES_CONFIG_XML = WEB_INF - + "/faces-config.xml"; - private static final String PORTLET_XML = WEB_INF + "/portlet.xml"; - private static final String WEB_XML = WEB_INF + "/web.xml"; + public static Configuration getConfiguration(final ExternalContext context) { + Configuration config = (Configuration) context.getApplicationMap().get( + INSTANCE_KEY); + if (config == null) { + try { + config = new Configuration(); + context.getApplicationMap().put(INSTANCE_KEY, config); - public static Configuration getConfiguration(final ExternalContext context) { - Configuration config = (Configuration) context.getApplicationMap().get( - INSTANCE_KEY); - if (config == null) { - try { - config = new Configuration(); - context.getApplicationMap().put(INSTANCE_KEY, config); - - if (loadApplicationConfiguration(context)) { - loadClasspathConfiguration(context); - config.makeReadOnly(); - } else { - context.getApplicationMap().remove(INSTANCE_KEY); - } - } catch (final ParserConfigurationException e) { - throw new BridgeException("Bad XML parser configuration.", e); - } catch (final SAXException e) { - throw new BridgeException("Error parsing configuration.", e); - } catch (final IOException e) { - throw new BridgeException("Error loading configuration.", e); - } - } - return config; - } - - private static boolean loadApplicationConfiguration(final ExternalContext context) - throws BridgeException, ParserConfigurationException, SAXException, - IOException { - InputStream stream = context.getResourceAsStream(PORTLET_XML); - if (stream == null) { - // Not a portlet application - return false; - } else { - try { - stream.close(); - } catch (final IOException e) { - } - } + if (loadApplicationConfiguration(context)) { + loadClasspathConfiguration(context); + config.makeReadOnly(); + } else { + context.getApplicationMap().remove(INSTANCE_KEY); + } + } catch (final ParserConfigurationException e) { + throw new BridgeException("Bad XML parser configuration.", e); + } catch (final SAXException e) { + throw new BridgeException("Error parsing configuration.", e); + } catch (final IOException e) { + throw new BridgeException("Error loading configuration.", e); + } + } + return config; + } - stream = context.getResourceAsStream(WEB_FACES_CONFIG_XML); - if (stream == null) { - // Not a faces application - return false; - } + private static boolean loadApplicationConfiguration(final ExternalContext context) + throws BridgeException, ParserConfigurationException, SAXException, + IOException { + InputStream stream = context.getResourceAsStream(PORTLET_XML); + if (stream == null) { + // Not a portlet application + return false; + } else { + try { + stream.close(); + } catch (final IOException e) { + } + } - final PortletContext portletContext = (PortletContext) context.getContext(); - if (logger.isLoggable(Level.CONFIG)) { - logger.log(Level.CONFIG, "J4P_000059", portletContext - .getPortletContextName()); - } - Document facesConfig = null, webXml = null; - final DocumentBuilderFactory builderFactory = createDocumentBuilderFactory(context); - final DocumentBuilder builder = builderFactory.newDocumentBuilder(); + stream = context.getResourceAsStream(WEB_FACES_CONFIG_XML); + if (stream == null) { + // Not a faces application + return false; + } - try { - facesConfig = builder.parse(stream); - } finally { - try { - stream.close(); - } catch (final IOException e) { - } - } + final PortletContext portletContext = (PortletContext) context.getContext(); + if (logger.isLoggable(Level.CONFIG)) { + logger.log(Level.CONFIG, "J4P_000059", portletContext.getPortletContextName()); + } + Document facesConfig = null, webXml = null; + final DocumentBuilderFactory builderFactory = createDocumentBuilderFactory(context); + final DocumentBuilder builder = builderFactory.newDocumentBuilder(); - stream = context.getResourceAsStream(WEB_XML); - if (stream == null) { - throw new BridgeException("Couldn't find file: " + WEB_XML); - } - try { - webXml = builder.parse(stream); - } finally { - try { - stream.close(); - } catch (final IOException e) { - } - } + try { + facesConfig = builder.parse(stream); + } finally { + try { + stream.close(); + } catch (final IOException e) { + } + } - readWebXml(context, webXml); - readFacesConfigXml(context, WEB_FACES_CONFIG_XML, facesConfig); - return true; - } + stream = context.getResourceAsStream(WEB_XML); + if (stream == null) { + throw new BridgeException("Couldn't find file: " + WEB_XML); + } + try { + webXml = builder.parse(stream); + } finally { + try { + stream.close(); + } catch (final IOException e) { + } + } - private static void loadClasspathConfiguration(final ExternalContext context) - throws IOException, ParserConfigurationException, SAXException { - final ClassLoader classLoader = Util.getClassLoader(context); - final DocumentBuilderFactory builderFactory = createDocumentBuilderFactory(context); - final DocumentBuilder builder = builderFactory.newDocumentBuilder(); + readWebXml(context, webXml); + readFacesConfigXml(context, WEB_FACES_CONFIG_XML, facesConfig); + return true; + } - final Enumeration<URL> resources = classLoader - .getResources(CLASSPATH_FACES_CONFIG_XML); - while (resources.hasMoreElements()) { - final URL facesConfigUrl = resources.nextElement(); - logger.log(Level.CONFIG, "J4P_000060", facesConfigUrl); - final InputStream facesConfigStream = facesConfigUrl.openStream(); - try { - final Document facesConfig = builder.parse(facesConfigStream); - readFacesConfigXml(context, CLASSPATH_FACES_CONFIG_XML, facesConfig); - } finally { - try { - facesConfigStream.close(); - } catch (final IOException e) { - } - } - } - } + private static void loadClasspathConfiguration(final ExternalContext context) + throws IOException, ParserConfigurationException, SAXException { + final ClassLoader classLoader = Util.getClassLoader(context); + final DocumentBuilderFactory builderFactory = createDocumentBuilderFactory(context); + final DocumentBuilder builder = builderFactory.newDocumentBuilder(); - private static void readFacesConfigXml(final ExternalContext context, - final String resourceName, final Document facesConfig) - throws IOException, SAXException { - ConfigurationProcessor[] processors = ConfigurationProcessorFactory.getProcessors(resourceName); - for(ConfigurationProcessor processor : processors) { - processor.process(context, facesConfig); - } - } + final Enumeration<URL> resources = classLoader.getResources(CLASSPATH_FACES_CONFIG_XML); + while (resources.hasMoreElements()) { + final URL facesConfigUrl = resources.nextElement(); + logger.log(Level.CONFIG, "J4P_000060", facesConfigUrl); + final InputStream facesConfigStream = facesConfigUrl.openStream(); + try { + final Document facesConfig = builder.parse(facesConfigStream); + readFacesConfigXml(context, CLASSPATH_FACES_CONFIG_XML, facesConfig); + } finally { + try { + facesConfigStream.close(); + } catch (final IOException e) { + } + } + } + } - private static void readWebXml(final ExternalContext context, - final Document webXml) - throws IOException, SAXException { - ConfigurationProcessor[] processors = ConfigurationProcessorFactory.getProcessors(WEB_XML); - for(ConfigurationProcessor processor : processors) { - processor.process(context, webXml); - } - } + private static void readFacesConfigXml(final ExternalContext context, + final String resourceName, final Document facesConfig) + throws IOException, SAXException { + ConfigurationProcessor[] processors = ConfigurationProcessorFactory.getProcessors(resourceName); + for (ConfigurationProcessor processor : processors) { + processor.process(context, facesConfig); + } + } - private static DocumentBuilderFactory createDocumentBuilderFactory(ExternalContext context) { - DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); - factory.setNamespaceAware(true); - factory.setValidating("true".equalsIgnoreCase(context - .getInitParameter(BridgeConstants.VALIDATE_CONFIG))); - return factory; - } - - private ConfigurationFactory() { - } + private static void readWebXml(final ExternalContext context, + final Document webXml) + throws IOException, SAXException { + ConfigurationProcessor[] processors = ConfigurationProcessorFactory.getProcessors(WEB_XML); + for (ConfigurationProcessor processor : processors) { + processor.process(context, webXml); + } + } + private static DocumentBuilderFactory createDocumentBuilderFactory(ExternalContext context) { + DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); + factory.setNamespaceAware(true); + factory.setValidating("true".equalsIgnoreCase(context.getInitParameter(BridgeConstants.VALIDATE_CONFIG))); + return factory; + } + + private ConfigurationFactory() { + } } Modified: trunk/jsf4portlets-impl/src/main/java/net/sf/jsf4portlets/context/ExternalContextImpl.java =================================================================== --- trunk/jsf4portlets-impl/src/main/java/net/sf/jsf4portlets/context/ExternalContextImpl.java 2012-05-21 08:50:58 UTC (rev 83) +++ trunk/jsf4portlets-impl/src/main/java/net/sf/jsf4portlets/context/ExternalContextImpl.java 2012-06-23 10:56:33 UTC (rev 84) @@ -1,5 +1,5 @@ /* JSF 4 Portlets - JSF Portlet Bridge (JSR-301) - * Copyright (C) 2009 A. Alonso Dominguez + * Copyright (C) 2010 A. Alonso Dominguez * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -82,816 +82,771 @@ */ class ExternalContextImpl extends ExternalContext { - private static final Logger logger = Logger.getLogger( - ExternalContextImpl.class.getPackage().getName(), - "net.sf.jsf4portlets.LogMessages"); + private static final Logger logger = Logger.getLogger( + ExternalContextImpl.class.getPackage().getName(), + "net.sf.jsf4portlets.LogMessages"); - // ------------------------------------------------------------ Constructors + // ------------------------------------------------------------ Constructors + /** + * <p> + * Create a new instance wrapping the specified Portlet API objects. + * </p> + * + * @param context + * The <code>PortletContext</code> for this application + * @param request + * The <code>PortletRequest</code> for this request + * @param response + * The <code>PortletResponse</code> for this response + */ + public ExternalContextImpl(final PortletContext context, + final PortletRequest request, final PortletResponse response) { + if (context == null || request == null || response == null) { + throw new NullPointerException(); + } + this.context = context; + this.request = origRequest = request; + this.response = origResponse = response; - /** - * <p> - * Create a new instance wrapping the specified Portlet API objects. - * </p> - * - * @param context - * The <code>PortletContext</code> for this application - * @param request - * The <code>PortletRequest</code> for this request - * @param response - * The <code>PortletResponse</code> for this response - */ - public ExternalContextImpl(final PortletContext context, - final PortletRequest request, final PortletResponse response) { - if (context == null || request == null || response == null) { - throw new NullPointerException(); - } - this.context = context; - this.request = origRequest = request; - this.response = origResponse = response; + guessViewId(false); + if (logger.isLoggable(Level.FINEST)) { + logger.log(Level.FINEST, "J4P_000020", this); + } + } + // ------------------------------------------------------ Instance Variables + // The Portlet API objects we are wrapping + private final PortletContext context; + private PortletRequest request; + private PortletResponse response; + private PortletRequest origRequest; + private PortletResponse origResponse; + // Our private map implementations (lazily instantiated) + private Map<String, Object> applicationMap = null; + private Map<String, String> initParameterMap = null; + private Map<String, String> requestHeaderMap = null; + private Map<String, String[]> requestHeaderValuesMap = null; + private Map<String, Object> requestMap = null; + private Map<String, String> requestParameterMap = null; + private Map<String, String[]> requestParameterValuesMap = null; + private Map<String, Object> sessionMap = null; + private Map<String, String> internalRequestParameterMap = null; + private Map<String, String[]> internalRequestParameterValuesMap = null; + private String servletPath = null; + private String pathInfo = null; + private String viewId = null; - guessViewId(false); - if (logger.isLoggable(Level.FINEST)) { - logger.log(Level.FINEST, "J4P_000020", this); - } - } + // ---------------------------------------------------------- Public Methods + @Override + public void dispatch(final String path) throws IOException { + logger.entering(ExternalContextImpl.class.getName(), "dispatch", path); - // ------------------------------------------------------ Instance Variables + if (path == null || path.length() == 0) { + throw new IllegalArgumentException("path can't be empty or null"); + } - // The Portlet API objects we are wrapping - private final PortletContext context; - private PortletRequest request; - private PortletResponse response; + if (!(origRequest instanceof RenderRequest) + || !(origResponse instanceof RenderResponse)) { + throw new IllegalStateException(path); + } + logger.log(Level.INFO, "J4P_000021", ((RenderResponse) origResponse).getContentType()); - private PortletRequest origRequest; - private PortletResponse origResponse; + final PortletRequestDispatcher prd = context.getRequestDispatcher(path); + if (prd == null) { + throw new IllegalArgumentException(path); + } + try { + if (logger.isLoggable(Level.FINEST)) { + logger.log(Level.FINEST, "J4P_000022", path); + } + prd.include((RenderRequest) origRequest, + (RenderResponse) origResponse); + } catch (final PortletException e) { + throw new FacesException(e); + } + logger.exiting(ExternalContextImpl.class.getName(), "dispatch"); + } - // Our private map implementations (lazily instantiated) - private Map<String, Object> applicationMap = null; - private Map<String, String> initParameterMap = null; - private Map<String, String> requestHeaderMap = null; - private Map<String, String[]> requestHeaderValuesMap = null; - private Map<String, Object> requestMap = null; - private Map<String, String> requestParameterMap = null; - private Map<String, String[]> requestParameterValuesMap = null; - private Map<String, Object> sessionMap = null; + @Override + public String encodeActionURL(final String url) { + logger.entering(ExternalContextImpl.class.getName(), "encodeActionURL", + url); - private Map<String, String> internalRequestParameterMap = null; - private Map<String, String[]> internalRequestParameterValuesMap = null; + if (url == null || url.length() == 0) { + throw new IllegalArgumentException("url can't be empty or null"); + } - private String servletPath = null; - private String pathInfo = null; - private String viewId = null; + final BridgeURL bridgeUrl = BridgeURLFactory.createBridgeURL(this, url); + if (url.startsWith("#") || bridgeUrl.isExternal()) { + return url; + } - // ---------------------------------------------------------- Public Methods + if (bridgeUrl instanceof HttpBridgeURL) { + final String directLink = bridgeUrl.getQueryString().getParameter( + Bridge.DIRECT_LINK); + if (directLink != null) { + if ("true".equalsIgnoreCase(directLink)) { + return bridgeUrl.toString(); + } else { + bridgeUrl.getQueryString().removeParameter( + Bridge.DIRECT_LINK); + } + } - @Override - public void dispatch(final String path) throws IOException { - logger.entering(ExternalContextImpl.class.getName(), "dispatch", path); - - if (path == null || path.length() == 0) { - throw new IllegalArgumentException("path can't be empty or null"); - } - - if (!(origRequest instanceof RenderRequest) - || !(origResponse instanceof RenderResponse)) { - throw new IllegalStateException(path); - } - logger.log(Level.INFO, "J4P_000021", ((RenderResponse) origResponse) - .getContentType()); - - final PortletRequestDispatcher prd = context.getRequestDispatcher(path); - if (prd == null) { - throw new IllegalArgumentException(path); - } - try { - if (logger.isLoggable(Level.FINEST)) { - logger.log(Level.FINEST, "J4P_000022", path); - } - prd.include((RenderRequest) origRequest, - (RenderResponse) origResponse); - } catch (final PortletException e) { - throw new FacesException(e); - } - logger.exiting(ExternalContextImpl.class.getName(), "dispatch"); - } + final String viewId = bridgeUrl.getViewId(); + if (viewId == null) { + encodeNonFacesActionTarget(bridgeUrl.getQueryString(), + ((HttpBridgeURL) bridgeUrl).getPath()); + } else { + encodeFacesActionTarget(bridgeUrl.getQueryString(), viewId); + } + } - @Override - public String encodeActionURL(final String url) { - logger.entering(ExternalContextImpl.class.getName(), "encodeActionURL", - url); - - if (url == null || url.length() == 0) { - throw new IllegalArgumentException("url can't be empty or null"); - } + String result = null; + final PortletPhase phase = getPortletLifecyclePhase(); + if (PortletPhase.RENDER_PHASE.equals(phase)) { + final RenderResponse response = (RenderResponse) this.response; + PortletURL portletURL; + if (bridgeUrl instanceof PortletBridgeURL) { + final PortletBridgeURL pbURL = (PortletBridgeURL) bridgeUrl; + if (URLType.ACTION.equals(pbURL.getURLType())) { + portletURL = response.createActionURL(); + } else { + portletURL = response.createRenderURL(); + } + } else { + portletURL = response.createActionURL(); + } - final BridgeURL bridgeUrl = BridgeURLFactory.createBridgeURL(this, url); - if (url.startsWith("#") || bridgeUrl.isExternal()) { - return url; - } + final Enumeration<String> paramNames = bridgeUrl.getQueryString().getParameterNames(); + while (paramNames.hasMoreElements()) { + final String param = paramNames.nextElement(); + if (Bridge.PORTLET_MODE_PARAMETER.equals(param)) { + final PortletMode portletMode = new PortletMode( + bridgeUrl.getQueryString().getParameter(param)); + try { + portletURL.setPortletMode(portletMode); + } catch (final PortletModeException e) { + // do nothing as per spec + logger.log(Level.WARNING, "J4P_000052", portletMode); + } + } else if (Bridge.PORTLET_WINDOWSTATE_PARAMETER.equals(param)) { + final WindowState windowState = new WindowState( + bridgeUrl.getQueryString().getParameter(param)); + try { + portletURL.setWindowState(windowState); + } catch (final WindowStateException e) { + // do nothing as per spec + logger.log(Level.WARNING, "J4P_000053", windowState); + } + } else if (Bridge.PORTLET_SECURE_PARAMETER.equals(param)) { + final boolean secure = Boolean.parseBoolean( + bridgeUrl.getQueryString().getParameter(param)); + try { + portletURL.setSecure(secure); + } catch (final PortletSecurityException e) { + // do nothing as per spec + logger.log(Level.WARNING, "J4P_000054", secure); + } + } else { + portletURL.setParameter(param, bridgeUrl.getQueryString() + .getParameterValues(param)); + } + bridgeUrl.getQueryString().removeParameter(param); + } - if (bridgeUrl instanceof HttpBridgeURL) { - final String directLink = bridgeUrl.getQueryString().getParameter( - Bridge.DIRECT_LINK); - if (directLink != null) { - if ("true".equalsIgnoreCase(directLink)) { - return bridgeUrl.toString(); - } else { - bridgeUrl.getQueryString().removeParameter( - Bridge.DIRECT_LINK); - } - } + result = portletURL.toString(); + } else if (PortletPhase.ACTION_PHASE.equals(phase)) { + final ActionResponse response = (ActionResponse) this.response; + final Enumeration<String> paramNames = bridgeUrl.getQueryString() + .getParameterNames(); + while (paramNames.hasMoreElements()) { + final String param = paramNames.nextElement(); + if (Bridge.PORTLET_MODE_PARAMETER.equals(param)) { + final PortletMode portletMode = new PortletMode( + bridgeUrl.getQueryString().getParameter(param)); + try { + response.setPortletMode(portletMode); + } catch (final PortletModeException e) { + // do nothing as per spec + logger.log(Level.WARNING, "J4P_000052", portletMode); + } + bridgeUrl.getQueryString().removeParameter(param); + } else if (Bridge.PORTLET_WINDOWSTATE_PARAMETER.equals(param)) { + final WindowState windowState = new WindowState( + bridgeUrl.getQueryString().getParameter(param)); + try { + response.setWindowState(windowState); + } catch (final WindowStateException e) { + // do nothing as per spec + logger.log(Level.WARNING, "J4P_000053", windowState); + } + bridgeUrl.getQueryString().removeParameter(param); + } else if (Bridge.PORTLET_SECURE_PARAMETER.equals(param)) { + // Can't change the security now + logger.log(Level.WARNING, "J4P_000073"); + bridgeUrl.getQueryString().removeParameter(param); + } else { + response.setRenderParameter(param, bridgeUrl + .getQueryString().getParameter(param)); + } + } - final String viewId = bridgeUrl.getViewId(); - if (viewId == null) { - encodeNonFacesActionTarget(bridgeUrl.getQueryString(), - ((HttpBridgeURL) bridgeUrl).getPath()); - } else { - encodeFacesActionTarget(bridgeUrl.getQueryString(), viewId); - } - } + result = bridgeUrl.toString(); + } else { + throw new IllegalStateException(); + } - String result = null; - final PortletPhase phase = getPortletLifecyclePhase(); - if (PortletPhase.RENDER_PHASE.equals(phase)) { - final RenderResponse response = (RenderResponse) this.response; - PortletURL portletURL; - if (bridgeUrl instanceof PortletBridgeURL) { - final PortletBridgeURL pbURL = (PortletBridgeURL) bridgeUrl; - if (URLType.ACTION.equals(pbURL.getURLType())) { - portletURL = response.createActionURL(); - } else { - portletURL = response.createRenderURL(); - } - } else { - portletURL = response.createActionURL(); - } + result = result.replaceAll("\\&\\;", "&"); + logger.exiting(ExternalContextImpl.class.getName(), "encodeActionURL", + result); + return result; + } - final Enumeration<String> paramNames = bridgeUrl.getQueryString() - .getParameterNames(); - while (paramNames.hasMoreElements()) { - final String param = paramNames.nextElement(); - if (Bridge.PORTLET_MODE_PARAMETER.equals(param)) { - final PortletMode portletMode = new PortletMode(bridgeUrl - .getQueryString().getParameter(param)); - try { - portletURL.setPortletMode(portletMode); - } catch (final PortletModeException e) { - // do nothing as per spec - logger.log(Level.WARNING, "J4P_000052", portletMode); - } - } else if (Bridge.PORTLET_WINDOWSTATE_PARAMETER.equals(param)) { - final WindowState windowState = new WindowState(bridgeUrl - .getQueryString().getParameter(param)); - try { - portletURL.setWindowState(windowState); - } catch (final WindowStateException e) { - // do nothing as per spec - logger.log(Level.WARNING, "J4P_000053", windowState); - } - } else if (Bridge.PORTLET_SECURE_PARAMETER.equals(param)) { - final boolean secure = Boolean.parseBoolean(bridgeUrl - .getQueryString().getParameter(param)); - try { - portletURL.setSecure(secure); - } catch (final PortletSecurityException e) { - // do nothing as per spec - logger.log(Level.WARNING, "J4P_000054", secure); - } - } else { - portletURL.setParameter(param, bridgeUrl.getQueryString() - .getParameterValues(param)); - } - bridgeUrl.getQueryString().removeParameter(param); - } + @Override + public String encodeNamespace(final String name) { + if (!(response instanceof RenderResponse)) { + throw new IllegalStateException(); + } + return (((RenderResponse) response).getNamespace() + name); + } - result = portletURL.toString(); - } else if (PortletPhase.ACTION_PHASE.equals(phase)) { - final ActionResponse response = (ActionResponse) this.response; - final Enumeration<String> paramNames = bridgeUrl.getQueryString() - .getParameterNames(); - while (paramNames.hasMoreElements()) { - final String param = paramNames.nextElement(); - if (Bridge.PORTLET_MODE_PARAMETER.equals(param)) { - final PortletMode portletMode = new PortletMode(bridgeUrl - .getQueryString().getParameter(param)); - try { - response.setPortletMode(portletMode); - } catch (final PortletModeException e) { - // do nothing as per spec - logger.log(Level.WARNING, "J4P_000052", portletMode); - } - bridgeUrl.getQueryString().removeParameter(param); - } else if (Bridge.PORTLET_WINDOWSTATE_PARAMETER.equals(param)) { - final WindowState windowState = new WindowState(bridgeUrl - .getQueryString().getParameter(param)); - try { - response.setWindowState(windowState); - } catch (final WindowStateException e) { - // do nothing as per spec - logger.log(Level.WARNING, "J4P_000053", windowState); - } - bridgeUrl.getQueryString().removeParameter(param); - } else if (Bridge.PORTLET_SECURE_PARAMETER.equals(param)) { - // Can't change the security now - logger.log(Level.WARNING, "J4P_000073"); - bridgeUrl.getQueryString().removeParameter(param); - } else { - response.setRenderParameter(param, bridgeUrl - .getQueryString().getParameter(param)); - } - } + @Override + public String encodeResourceURL(final String url) { + logger.entering(ExternalContextImpl.class.getName(), + "encodeResourceURL", url); - result = bridgeUrl.toString(); - } else { - throw new IllegalStateException(); - } + if (url == null || url.length() == 0) { + throw new IllegalArgumentException("url can't be empty or null"); + } - result = result.replaceAll("\\&\\;", "&"); - logger.exiting(ExternalContextImpl.class.getName(), "encodeActionURL", - result); - return result; - } + final BridgeURL bridgeUrl = BridgeURLFactory.createBridgeURL(this, url); + if (bridgeUrl instanceof PortletBridgeURL) { + throw new IllegalArgumentException( + "Portlet URL's can't be encoded as resource URL's"); + } - @Override - public String encodeNamespace(final String name) { - if (!(response instanceof RenderResponse)) { - throw new IllegalStateException(); - } - return (((RenderResponse) response).getNamespace() + name); - } + String backLink; + if (null != (backLink = bridgeUrl.getQueryString().getParameter( + Bridge.BACK_LINK))) { + bridgeUrl.getQueryString().removeParameter(Bridge.BACK_LINK); + final FacesContext facesContext = FacesContext.getCurrentInstance(); + final ViewHandler handler = facesContext.getApplication().getViewHandler(); - @Override - public String encodeResourceURL(final String url) { - logger.entering(ExternalContextImpl.class.getName(), - "encodeResourceURL", url); + logger.log(Level.FINER, "J4P_000074", viewId); + final String backLinkValue = encodeActionURL(handler.getActionURL( + facesContext, viewId)); + bridgeUrl.getQueryString().setParameter(backLink, backLinkValue); + } - if (url == null || url.length() == 0) { - throw new IllegalArgumentException("url can't be empty or null"); - } + String result = null; + if (!bridgeUrl.isExternal()) { + String viewLink; + if (null != (viewLink = bridgeUrl.getQueryString().getParameter( + Bridge.VIEW_LINK))) { + bridgeUrl.getQueryString().removeParameter(Bridge.VIEW_LINK); + if ("true".equalsIgnoreCase(viewLink)) { + result = encodeActionURL(bridgeUrl.toString()); + } + } + } - final BridgeURL bridgeUrl = BridgeURLFactory.createBridgeURL(this, url); - if (bridgeUrl instanceof PortletBridgeURL) { - throw new IllegalArgumentException( - "Portlet URL's can't be encoded as resource URL's"); - } + if (result == null) { + result = response.encodeURL(bridgeUrl.toString()); + } - String backLink; - if (null != (backLink = bridgeUrl.getQueryString().getParameter( - Bridge.BACK_LINK))) { - bridgeUrl.getQueryString().removeParameter(Bridge.BACK_LINK); - final FacesContext facesContext = FacesContext.getCurrentInstance(); - final ViewHandler handler = facesContext.getApplication() - .getViewHandler(); - - logger.log(Level.FINER, "J4P_000074", viewId); - final String backLinkValue = encodeActionURL(handler.getActionURL( - facesContext, viewId)); - bridgeUrl.getQueryString().setParameter(backLink, backLinkValue); - } + result = result.replaceAll("\\&\\;", "&"); + logger.exiting(ExternalContextImpl.class.getName(), + "encodeResourceURL", result); + return result; + } - String result = null; - if (!bridgeUrl.isExternal()) { - String viewLink; - if (null != (viewLink = bridgeUrl.getQueryString().getParameter( - Bridge.VIEW_LINK))) { - bridgeUrl.getQueryString().removeParameter(Bridge.VIEW_LINK); - if ("true".equalsIgnoreCase(viewLink)) { - result = encodeActionURL(bridgeUrl.toString()); - } - } - } + @Override + public Map<String, Object> getApplicationMap() { + if (applicationMap == null) { + applicationMap = new ApplicationMap(context); + } + return (applicationMap); + } - if (result == null) { - result = response.encodeURL(bridgeUrl.toString()); - } + @Override + public String getAuthType() { + return (request.getAuthType()); + } - result = result.replaceAll("\\&\\;", "&"); - logger.exiting(ExternalContextImpl.class.getName(), - "encodeResourceURL", result); - return result; - } + @Override + public Object getContext() { + return (context); + } - @Override - public Map<String, Object> getApplicationMap() { - if (applicationMap == null) { - applicationMap = new ApplicationMap(context); - } - return (applicationMap); - } + @Override + public String getInitParameter(final String name) { + if (name == null) { + throw new NullPointerException(); + } + return (context.getInitParameter(name)); + } - @Override - public String getAuthType() { - return (request.getAuthType()); - } + @Override + public Map<String, String> getInitParameterMap() { + if (initParameterMap == null) { + initParameterMap = new InitParameterMap(context); + } + return (initParameterMap); + } - @Override - public Object getContext() { - return (context); - } + @Override + public String getRemoteUser() { + return (request.getRemoteUser()); + } - @Override - public String getInitParameter(final String name) { - if (name == null) { - throw new NullPointerException(); - } - return (context.getInitParameter(name)); - } + @Override + public Object getRequest() { + return (request); + } - @Override - public Map<String, String> getInitParameterMap() { - if (initParameterMap == null) { - initParameterMap = new InitParameterMap(context); - } - return (initParameterMap); - } + @Override + public String getRequestCharacterEncoding() { + if (!PortletPhase.ACTION_PHASE.equals(Util.getPortletLifecyclePhase(this))) { + // Return null as per spec + return null; + } + return ((ActionRequest) request).getCharacterEncoding(); + } - @Override - public String getRemoteUser() { - return (request.getRemoteUser()); - } + @Override + public String getRequestContentType() { + if (!PortletPhase.ACTION_PHASE.equals(Util.getPortletLifecyclePhase(this))) { + // Return null as per spec + return null; + } + return ((ActionRequest) request).getContentType(); + } - @Override - public Object getRequest() { - return (request); - } + @Override + public String getRequestContextPath() { + return (request.getContextPath()); + } - @Override - public String getRequestCharacterEncoding() { - if (!PortletPhase.ACTION_PHASE.equals(Util - .getPortletLifecyclePhase(this))) { - // Return null as per spec - return null; - } - return ((ActionRequest) request).getCharacterEncoding(); - } + @Override + public Map<String, Object> getRequestCookieMap() { + return Collections.unmodifiableMap(Collections.<String, Object>emptyMap()); + } - @Override - public String getRequestContentType() { - if (!PortletPhase.ACTION_PHASE.equals(Util - .getPortletLifecyclePhase(this))) { - // Return null as per spec - return null; - } - return ((ActionRequest) request).getContentType(); - } + @Override + public Map<String, String> getRequestHeaderMap() { + if (requestHeaderMap == null) { + requestHeaderMap = new RequestHeaderMap(request); + } + return (requestHeaderMap); + } - @Override - public String getRequestContextPath() { - return (request.getContextPath()); - } + @Override + public Map<String, String[]> getRequestHeaderValuesMap() { + if (requestHeaderValuesMap == null) { + requestHeaderValuesMap = new RequestHeaderValuesMap(request); + } + return (requestHeaderValuesMap); + } - @Override - public Map<String, Object> getRequestCookieMap() { - return Collections.unmodifiableMap(Collections - .<String, Object> emptyMap()); - } + @Override + public Locale getRequestLocale() { + return (request.getLocale()); + } - @Override - public Map<String, String> getRequestHeaderMap() { - if (requestHeaderMap == null) { - requestHeaderMap = new RequestHeaderMap(request); - } - return (requestHeaderMap); - } + @Override + @SuppressWarnings("unchecked") + public Iterator<Locale> getRequestLocales() { + return (new LocalesIterator(request.getLocales())); + } - @Override - public Map<String, String[]> getRequestHeaderValuesMap() { - if (requestHeaderValuesMap == null) { - requestHeaderValuesMap = new RequestHeaderValuesMap(request); - } - return (requestHeaderValuesMap); - } + @Override + public Map<String, Object> getRequestMap() { + if (requestMap == null) { + requestMap = new RequestMap(request); + } + return (requestMap); + } - @Override - public Locale getRequestLocale() { - return (request.getLocale()); - } + @Override + public Map<String, String> getRequestParameterMap() { + if (requestParameterMap == null) { + requestParameterMap = new RequestParameterMap(request, + internalRequestParameterMap); + } + return requestParameterMap; + } - @Override - @SuppressWarnings("unchecked") - public Iterator<Locale> getRequestLocales() { - return (new LocalesIterator(request.getLocales())); - } + @Override + public Iterator<String> getRequestParameterNames() { + return (getRequestParameterMap().keySet().iterator()); + } - @Override - public Map<String, Object> getRequestMap() { - if (requestMap == null) { - requestMap = new RequestMap(request); - } - return (requestMap); - } + @Override + public Map<String, String[]> getRequestParameterValuesMap() { + if (requestParameterValuesMap == null) { + requestParameterValuesMap = new RequestParameterValuesMap(request, + internalRequestParameterValuesMap); + } + return requestParameterValuesMap; + } - @Override - public Map<String, String> getRequestParameterMap() { - if (requestParameterMap == null) { - requestParameterMap = new RequestParameterMap(request, - internalRequestParameterMap); - } - return requestParameterMap; - } + @Override + public String getRequestPathInfo() { + if (viewId == null) { + guessViewId(true); + } + return pathInfo; + } - @Override - public Iterator<String> getRequestParameterNames() { - return (getRequestParameterMap().keySet().iterator()); - } + @Override + public String getRequestServletPath() { + if (viewId == null) { + guessViewId(true); + } + return servletPath; + } - @Override - public Map<String, String[]> getRequestParameterValuesMap() { - if (requestParameterValuesMap == null) { - requestParameterValuesMap = new RequestParameterValuesMap(request, - internalRequestParameterValuesMap); - } - return requestParameterValuesMap; - } + @Override + public URL getResource(final String path) throws MalformedURLException { + if (path == null) { + throw new NullPointerException(); + } + return (context.getResource(path)); + } - @Override - public String getRequestPathInfo() { - if (viewId == null) { - guessViewId(true); - } - return pathInfo; - } + @Override + public InputStream getResourceAsStream(final String path) { + if (path == null) { + throw new NullPointerException(); + } + return (context.getResourceAsStream(path)); + } - @Override - public String getRequestServletPath() { - if (viewId == null) { - guessViewId(true); - } - return servletPath; - } + @Override + @SuppressWarnings("unchecked") + public Set<String> getResourcePaths(final String path) { + if (path == null) { + throw new NullPointerException(); + } + return (context.getResourcePaths(path)); + } - @Override - public URL getResource(final String path) throws MalformedURLException { - if (path == null) { - throw new NullPointerException(); - } - return (context.getResource(path)); - } + @Override + public Object getResponse() { + return (response); + } - @Override - public InputStream getResourceAsStream(final String path) { - if (path == null) { - throw new NullPointerException(); - } - return (context.getResourceAsStream(path)); - } + @Override + public String getResponseCharacterEncoding() { + if (!PortletPhase.RENDER_PHASE.equals(Util.getPortletLifecyclePhase(this))) { + throw new IllegalStateException(); + } + return ((RenderResponse) response).getCharacterEncoding(); + } - @Override - @SuppressWarnings("unchecked") - public Set<String> getResourcePaths(final String path) { - if (path == null) { - throw new NullPointerException(); - } - return (context.getResourcePaths(path)); - } + @Override + public String getResponseContentType() { + if (!PortletPhase.RENDER_PHASE.equals(Util.getPortletLifecyclePhase(this))) { + throw new IllegalStateException(); + } + return ((RenderResponse) response).getContentType(); + } - @Override - public Object getResponse() { - return (response); - } + public PortletPhase getPortletLifecyclePhase() { + return Util.getPortletLifecyclePhase(this); + } - @Override - public String getResponseCharacterEncoding() { - if (!PortletPhase.RENDER_PHASE.equals(Util - .getPortletLifecyclePhase(this))) { - throw new IllegalStateException(); - } - return ((RenderResponse) response).getCharacterEncoding(); - } + @Override + public Object getSession(final boolean create) { + return (request.getPortletSession(create)); + } - @Override - public String getResponseContentType() { - if (!PortletPhase.RENDER_PHASE.equals(Util - .getPortletLifecyclePhase(this))) { - throw new IllegalStateException(); - } - return ((RenderResponse) response).getContentType(); - } + @Override + public Map<String, Object> getSessionMap() { + if (sessionMap == null) { + sessionMap = new SessionMap(request); + } + return (sessionMap); + } - public PortletPhase getPortletLifecyclePhase() { - return Util.getPortletLifecyclePhase(this); - } + @Override + public Principal getUserPrincipal() { + return (request.getUserPrincipal()); + } - @Override - public Object getSession(final boolean create) { - return (request.getPortletSession(create)); - } + @Ove... [truncated message content] |
From: <alo...@us...> - 2012-06-24 16:24:42
|
Revision: 89 http://jsf4portlets.svn.sourceforge.net/jsf4portlets/?rev=89&view=rev Author: alonsoft Date: 2012-06-24 16:24:34 +0000 (Sun, 24 Jun 2012) Log Message: ----------- adding more test infrastructure Modified Paths: -------------- trunk/jsf4portlets-impl/src/main/java/net/sf/jsf4portlets/BridgeImpl.java trunk/jsf4portlets-impl/src/main/java/net/sf/jsf4portlets/application/ViewHandlerImpl.java trunk/jsf4portlets-tck/pom.xml trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/TCKConstants.java trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/context/TCKFacesContextFactory.java trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/lifecycle/TCKLifecycleFactory.java trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/portlet/TCKFacesPortlet.java trunk/jsf4portlets-tck/src/test/webapp/WEB-INF/faces-config.xml trunk/jsf4portlets-tck/src/test/webapp/WEB-INF/portlet.xml Added Paths: ----------- trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/common/ trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/common/TCKTestBean.java trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/context/ELResolveMap.java trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/context/TCKExternalContext.java trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/context/TCKFacesContext.java trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/util/ trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/util/ELUtil.java trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/util/StringUtil.java trunk/jsf4portlets-tck/src/test/java/net/sf/jsf4portlets/tck/beans/ trunk/jsf4portlets-tck/src/test/java/net/sf/jsf4portlets/tck/beans/Chapter3_2Bean.java trunk/jsf4portlets-tck/src/test/java/net/sf/jsf4portlets/tck/portlet/ trunk/jsf4portlets-tck/src/test/java/net/sf/jsf4portlets/tck/test/ trunk/jsf4portlets-tck/src/test/java/net/sf/jsf4portlets/tck/test/Chapter3_1Test.java trunk/jsf4portlets-tck/src/test/webapp/META-INF/ trunk/jsf4portlets-tck/src/test/webapp/META-INF/TCKPorletApplication.xml trunk/jsf4portlets-tck/src/test/webapp/test/ Removed Paths: ------------- trunk/jsf4portlets-tck/src/test/java/net/sf/jsf4portlets/tck/Chapter3_1Test.java Modified: trunk/jsf4portlets-impl/src/main/java/net/sf/jsf4portlets/BridgeImpl.java =================================================================== --- trunk/jsf4portlets-impl/src/main/java/net/sf/jsf4portlets/BridgeImpl.java 2012-06-24 13:41:15 UTC (rev 88) +++ trunk/jsf4portlets-impl/src/main/java/net/sf/jsf4portlets/BridgeImpl.java 2012-06-24 16:24:34 UTC (rev 89) @@ -69,8 +69,9 @@ */ public class BridgeImpl implements Bridge { - private static final Logger logger = Logger.getLogger(BridgeImpl.class - .getPackage().getName(), "net.sf.jsf4portlets.LogMessages"); + private static final Logger logger = Logger.getLogger( + BridgeImpl.class.getPackage().getName(), + "net.sf.jsf4portlets.LogMessages"); private PortletConfig portletConfig = null; @@ -100,8 +101,7 @@ logger.log(Level.FINEST, "J4P_000002", getPortletName()); } - public void init() throws BridgeException { - } + public void init() throws BridgeException { } public void destroy() { logger.log(Level.FINEST, "J4P_000003", getPortletName()); @@ -118,9 +118,6 @@ public void doFacesRequest(final ActionRequest request, final ActionResponse response) throws BridgeException { - logger.entering(BridgeImpl.class.getName(), "doFacesRequest", - new Object[] { request, response }); - if (!initialized) { throw new BridgeUninitializedException(); } @@ -157,16 +154,11 @@ } finally { context.release(); } - - logger.exiting(BridgeImpl.class.getName(), "doFacesResquest"); } @SuppressWarnings("unchecked") public void doFacesRequest(final RenderRequest request, final RenderResponse response) throws BridgeException { - logger.entering(BridgeImpl.class.getName(), "doFacesRequest", - new Object[] { request, response }); - if (!initialized) { throw new BridgeUninitializedException(); } @@ -208,8 +200,6 @@ context = FacesContext.getCurrentInstance(); context.release(); } - - logger.exiting(BridgeImpl.class.getName(), "doFacesResquest"); } public FacesContextFactory getFacesContextFactory() throws FacesException { @@ -292,12 +282,6 @@ private void doFacesRenderRequest(FacesContext context, final RenderRequest request, final RenderResponse response, final List<String> previousAttributeNames) throws FacesException { - if (logger.isLoggable(Level.FINEST)) { - logger.entering(BridgeImpl.class.getName(), "doFacesRenderRequest", - new Object[] { context, request, response, - previousAttributeNames }); - } - boolean redirectDuringRender = false; // Execute the render response phase for this request @@ -330,10 +314,6 @@ } else { getRequestScopeManager().save(context); } - - if (logger.isLoggable(Level.FINEST)) { - logger.exiting(BridgeImpl.class.getName(), "doFacesRenderRequest"); - } } @SuppressWarnings("unchecked") @@ -341,11 +321,6 @@ RenderRequest request, final RenderResponse response, final BridgeURL redirectURL, final List<String> previousAttributeNames) throws FacesException { - if (logger.isLoggable(Level.FINEST)) { - logger.entering(BridgeImpl.class.getName(), - "doFacesRenderRedirect", new Object[] { context, request, - response, redirectURL, previousAttributeNames }); - } context.release(); final List<String> names = new ArrayList<String>(); @@ -368,10 +343,6 @@ context.getExternalContext().getSessionMap().put( BridgeConstants.RENDER_REDIRECT_URL, redirectURL); - - if (logger.isLoggable(Level.FINEST)) { - logger.exiting(BridgeImpl.class.getName(), "doFacesRenderRedirect"); - } } private String encodePortletMode(final String viewId, Modified: trunk/jsf4portlets-impl/src/main/java/net/sf/jsf4portlets/application/ViewHandlerImpl.java =================================================================== --- trunk/jsf4portlets-impl/src/main/java/net/sf/jsf4portlets/application/ViewHandlerImpl.java 2012-06-24 13:41:15 UTC (rev 88) +++ trunk/jsf4portlets-impl/src/main/java/net/sf/jsf4portlets/application/ViewHandlerImpl.java 2012-06-24 16:24:34 UTC (rev 89) @@ -69,8 +69,9 @@ + "saveStateFieldMarker" + SAVESTATE_FIELD_DELIMITER; - private static final Logger logger = Logger.getLogger(ViewHandlerImpl.class - .getPackage().getName(), "net.sf.jsf4portlets.LogMessages"); + private static final Logger logger = Logger.getLogger( + ViewHandlerImpl.class.getPackage().getName(), + "net.sf.jsf4portlets.LogMessages"); private ViewHandler delegate = null; @@ -93,9 +94,6 @@ @Override public UIViewRoot createView(final FacesContext context, final String viewId) { - logger.entering(ViewHandlerImpl.class.getName(), "createView", - new Object[] { context, viewId }); - UIViewRoot viewRoot = super.createView(context, viewId); if (viewRoot != null) { if (UIViewRoot.class.getName() @@ -111,16 +109,11 @@ portletConfig.getPortletName() }); } } - - logger.exiting(ViewHandlerImpl.class.getName(), "createView", viewRoot); return viewRoot; } @Override public String getActionURL(final FacesContext context, String viewId) { - logger.entering(ViewHandlerImpl.class.getName(), "getActionURL", - new Object[] { context, viewId }); - if (context == null) { throw new NullPointerException("context"); } @@ -171,17 +164,12 @@ logger.log(Level.FINER, "J4P_000072", actionURL); } - logger.exiting(ViewHandlerImpl.class.getName(), "getActionURL", - actionURL); return actionURL.toString(); } @Override public void renderView(final FacesContext context, final UIViewRoot viewRoot) throws IOException, FacesException { - logger.entering(ViewHandlerImpl.class.getName(), "renderView", - new Object[] { context, viewRoot }); - if (context == null || viewRoot == null) { throw new NullPointerException(); } @@ -219,25 +207,16 @@ } } } - - logger.exiting(ViewHandlerImpl.class.getName(), "renderView"); } @Override public UIViewRoot restoreView(final FacesContext context, final String viewId) { - logger.entering(ViewHandlerImpl.class.getName(), "restoreView", - new Object[] { context, viewId }); - UIViewRoot viewRoot = (UIViewRoot) context.getExternalContext() .getSessionMap().remove(BridgeConstants.VIEW_ROOT); if (viewRoot == null) { viewRoot = super.restoreView(context, viewId); } - - logger - .exiting(ViewHandlerImpl.class.getName(), "restoreView", - viewRoot); return viewRoot; } @@ -259,8 +238,6 @@ private void renderViewInternal(final FacesContext context, final UIViewRoot viewRoot) throws IOException, FacesException { - logger.entering(ViewHandlerImpl.class.getName(), "renderViewInternal", - new Object[] { context, viewRoot }); final ExternalContext extContext = context.getExternalContext(); final RenderResponse response = (RenderResponse) extContext @@ -312,7 +289,6 @@ renderAfterViewContent(context); response.flushBuffer(); - logger.exiting(ViewHandlerImpl.class.getName(), "renderViewInternal"); } private boolean executePageToBuildView(final FacesContext context, @@ -399,7 +375,7 @@ * * @param context * the <code>FacesContext</code> for the current request - * @param initialCapcity + * @param initialCapacity * the StringBuilder's initial capacity */ public WriteBehindStringWriter(final FacesContext context, Modified: trunk/jsf4portlets-tck/pom.xml =================================================================== --- trunk/jsf4portlets-tck/pom.xml 2012-06-24 13:41:15 UTC (rev 88) +++ trunk/jsf4portlets-tck/pom.xml 2012-06-24 16:24:34 UTC (rev 89) @@ -15,9 +15,12 @@ <properties> <test.webapp.source>${basedir}/src/test/webapp</test.webapp.source> <test.webapp.runtime>${project.build.directory}/${project.artifactId}</test.webapp.runtime> + + <pluto.version>1.1.7</pluto.version> </properties> <build> + <finalName>${project.artifactId}</finalName> <plugins> <plugin> <groupId>org.codehaus.mojo</groupId> @@ -41,6 +44,23 @@ </executions> </plugin> <plugin> + <groupId>org.apache.pluto</groupId> + <artifactId>maven-pluto-plugin</artifactId> + <version>1.1.6</version> + <executions> + <execution> + <phase>generate-test-resources</phase> + <goals> + <goal>assemble</goal> + </goals> + <configuration> + <portletXml>${test.webapp.source}/WEB-INF/portlet.xml</portletXml> + <webXml>${test.webapp.source}/WEB-INF/web.xml</webXml> + </configuration> + </execution> + </executions> + </plugin> + <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-antrun-plugin</artifactId> <version>1.7</version> @@ -54,13 +74,41 @@ <target> <mkdir dir="${test.webapp.runtime}" /> <copy todir="${test.webapp.runtime}"> - <fileset dir="${test.webapp.source}" /> + <fileset dir="${test.webapp.source}"> + <exclude name="/WEB-INF/portlet.xml" /> + <exclude name="/WEB-INF/web.xml" /> + </fileset> </copy> </target> </configuration> </execution> </executions> </plugin> + <plugin> + <groupId>org.mortbay.jetty</groupId> + <artifactId>maven-jetty-plugin</artifactId> + <version>${jetty.version}</version> + <configuration> + <webXml>${project.build.directory}/pluto-resources/web.xml</webXml> + <webAppConfig> + <contextPath>/${project.artifactId}</contextPath> + </webAppConfig> + <systemProperties> + <systemProperty> + <name>org.apache.pluto.embedded.portletIds</name> + <value></value> + </systemProperty> + </systemProperties> + </configuration> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-war-plugin</artifactId> + <version>2.2</version> + <configuration> + <webXml>${project.build.directory}/pluto-resources/web.xml</webXml> + </configuration> + </plugin> </plugins> </build> @@ -116,6 +164,19 @@ <scope>test</scope> </dependency> <dependency> + <groupId>org.apache.pluto</groupId> + <artifactId>pluto-portal-driver</artifactId> + <version>${pluto.version}</version> + <scope>test</scope> + </dependency> + <dependency> + <groupId>com.bekk.boss</groupId> + <artifactId>maven-jetty-pluto-embedded</artifactId> + <version>1.0.1</version> + <scope>provided</scope> + </dependency> + + <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> </dependency> Modified: trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/TCKConstants.java =================================================================== --- trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/TCKConstants.java 2012-06-24 13:41:15 UTC (rev 88) +++ trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/TCKConstants.java 2012-06-24 16:24:34 UTC (rev 89) @@ -1,11 +1,17 @@ package net.sf.jsf4portlets.tck; +import net.sf.jsf4portlets.BridgeConstants; + public final class TCKConstants { - public static final String TCK_TEST_BEAN_NAME = "net.sf.jsf4portlets.tck.testBeanName"; + public static final String TCK_PREFIX = BridgeConstants.J4P_PREFIX + "tck."; - public static final String TCK_TEST_NAME = "net.sf.jsf4portlets.tck.testName"; + public static final String LIFECYCLE_ID = "TCKLifecycle"; + public static final String TEST_BEAN_NAME = TCK_PREFIX + "testBeanName"; + + public static final String TEST_NAME = TCK_PREFIX + "testName"; + private TCKConstants() { } } Added: trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/common/TCKTestBean.java =================================================================== --- trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/common/TCKTestBean.java (rev 0) +++ trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/common/TCKTestBean.java 2012-06-24 16:24:34 UTC (rev 89) @@ -0,0 +1,17 @@ +package net.sf.jsf4portlets.tck.common; + +import javax.portlet.faces.Bridge; +import javax.portlet.faces.Bridge.BridgeRenderPolicy; + +public class TCKTestBean { + + private BridgeRenderPolicy renderPolicy = BridgeRenderPolicy.DEFAULT; + + public BridgeRenderPolicy getRenderPolicy() { + return renderPolicy; + } + + public void setRenderPolicy(BridgeRenderPolicy renderPolicy) { + this.renderPolicy = renderPolicy; + } +} Added: trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/context/ELResolveMap.java =================================================================== --- trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/context/ELResolveMap.java (rev 0) +++ trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/context/ELResolveMap.java 2012-06-24 16:24:34 UTC (rev 89) @@ -0,0 +1,97 @@ +package net.sf.jsf4portlets.tck.faces.context; + +import net.sf.jsf4portlets.tck.util.ELUtil; +import net.sf.jsf4portlets.tck.util.StringUtil; + +import javax.portlet.PortletRequest; +import java.util.AbstractMap; +import java.util.Collection; +import java.util.Map; +import java.util.Set; + +final class ELResolveMap<V> extends AbstractMap<String, V> { + + private Map<String, V> delegate; + private PortletRequest request; + private Class<V> valueType; + + public ELResolveMap(PortletRequest request, Map<String, V> delegate, Class<V> valueType) { + this.delegate = delegate; + this.request = request; + this.valueType = valueType; + } + + @Override + public int size() { + return delegate.size(); + } + + @Override + public boolean isEmpty() { + return delegate.isEmpty(); + } + + @Override + public boolean containsKey(Object o) { + return delegate.containsKey(o); + } + + @Override + public boolean containsValue(Object o) { + return delegate.containsValue(o); + } + + @Override + public V get(Object o) { + V result = delegate.get(o); + if (result == null) { + result = ELUtil.resolveTestBeanProperty(request, + StringUtil.capitalize((String) o), valueType); + } + return result; + } + + public V put(String s, V v) { + return delegate.put(s, v); + } + + @Override + public V remove(Object o) { + return delegate.remove(o); + } + + public void putAll(Map<? extends String, ? extends V> map) { + delegate.putAll(map); + } + + @Override + public void clear() { + delegate.clear(); + } + + @Override + public Set<String> keySet() { + return delegate.keySet(); + } + + @Override + public Collection<V> values() { + return delegate.values(); + } + + @Override + public Set<Entry<String, V>> entrySet() { + return delegate.entrySet(); + } + + @Override + public boolean equals(Object o) { + return delegate.equals(o); + } + + @Override + public int hashCode() { + return delegate.hashCode(); + } + +} Added: trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/context/TCKExternalContext.java =================================================================== --- trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/context/TCKExternalContext.java (rev 0) +++ trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/context/TCKExternalContext.java 2012-06-24 16:24:34 UTC (rev 89) @@ -0,0 +1,259 @@ +package net.sf.jsf4portlets.tck.faces.context; + +import net.sf.jsf4portlets.tck.util.ELUtil; +import net.sf.jsf4portlets.tck.util.StringUtil; + +import javax.faces.context.ExternalContext; +import javax.portlet.PortletContext; +import javax.portlet.PortletRequest; +import javax.portlet.PortletResponse; +import java.io.IOException; +import java.io.InputStream; +import java.io.UnsupportedEncodingException; +import java.net.MalformedURLException; +import java.net.URL; +import java.security.Principal; +import java.util.Iterator; +import java.util.Locale; +import java.util.Map; +import java.util.Set; + +public class TCKExternalContext extends ExternalContext { + + private ExternalContext delegate; + + private Map<String, String> initParameterMap; + + private PortletRequest request; + + public TCKExternalContext(PortletContext context, PortletRequest request, + PortletResponse response, ExternalContext delegate) { + this.delegate = delegate; + this.request = request; + } + + @Override + public void dispatch(String path) throws IOException { + delegate.dispatch(path); + } + + @Override + public String encodeActionURL(String url) { + return delegate.encodeActionURL(url); + } + + @Override + public String encodeNamespace(String name) { + return delegate.encodeNamespace(name); + } + + @Override + public String encodeResourceURL(String url) { + return delegate.encodeResourceURL(url); + } + + @Override + public Map<String, Object> getApplicationMap() { + return delegate.getApplicationMap(); + } + + @Override + public String getAuthType() { + return delegate.getAuthType(); + } + + @Override + public Object getContext() { + return delegate.getContext(); + } + + @Override + public String getInitParameter(String name) { + String value = delegate.getInitParameter(name); + if (value == null) { + value = ELUtil.resolveTestBeanProperty(request, + StringUtil.capitalize(name), String.class); + } + return value; + } + + @Override + public Map getInitParameterMap() { + if (initParameterMap == null) { + initParameterMap = new ELResolveMap<String>(request, delegate.getInitParameterMap(), String.class); + } + return initParameterMap; + } + + @Override + public String getRemoteUser() { + return delegate.getRemoteUser(); + } + + @Override + public Object getRequest() { + return delegate.getRequest(); + } + + @Override + public void setRequest(Object request) { + delegate.setRequest(request); + } + + @Override + public void setRequestCharacterEncoding(String encoding) throws UnsupportedEncodingException { + delegate.setRequestCharacterEncoding(encoding); + } + + @Override + public String getRequestContextPath() { + return delegate.getRequestContextPath(); + } + + @Override + public Map<String, Object> getRequestCookieMap() { + return delegate.getRequestCookieMap(); + } + + @Override + public Map<String, String> getRequestHeaderMap() { + return delegate.getRequestHeaderMap(); + } + + @Override + public Map<String, String[]> getRequestHeaderValuesMap() { + return delegate.getRequestHeaderValuesMap(); + } + + @Override + public Locale getRequestLocale() { + return delegate.getRequestLocale(); + } + + @Override + public Iterator<Locale> getRequestLocales() { + return delegate.getRequestLocales(); + } + + @Override + public Map<String, Object> getRequestMap() { + return delegate.getRequestMap(); + } + + @Override + public Map<String, String> getRequestParameterMap() { + return delegate.getRequestParameterMap(); + } + + @Override + public Iterator<String> getRequestParameterNames() { + return delegate.getRequestParameterNames(); + } + + @Override + public Map<String, String[]> getRequestParameterValuesMap() { + return delegate.getRequestParameterValuesMap(); + } + + @Override + public String getRequestPathInfo() { + return delegate.getRequestPathInfo(); + } + + @Override + public String getRequestServletPath() { + return delegate.getRequestServletPath(); + } + + @Override + public String getRequestCharacterEncoding() { + return delegate.getRequestCharacterEncoding(); + } + + @Override + public String getRequestContentType() { + return delegate.getRequestContentType(); + } + + @Override + public String getResponseCharacterEncoding() { + return delegate.getResponseCharacterEncoding(); + } + + @Override + public String getResponseContentType() { + return delegate.getResponseContentType(); + } + + @Override + public URL getResource(String path) throws MalformedURLException { + return delegate.getResource(path); + } + + @Override + public InputStream getResourceAsStream(String path) { + return delegate.getResourceAsStream(path); + } + + @Override + public Set<String> getResourcePaths(String path) { + return delegate.getResourcePaths(path); + } + + @Override + public Object getResponse() { + return delegate.getResponse(); + } + + @Override + public void setResponse(Object response) { + delegate.setResponse(response); + } + + @Override + public void setResponseCharacterEncoding(String encoding) { + delegate.setResponseCharacterEncoding(encoding); + } + + @Override + public Object getSession(boolean create) { + return delegate.getSession(create); + } + + @Override + public Map<String, Object> getSessionMap() { + return delegate.getSessionMap(); + } + + @Override + public Principal getUserPrincipal() { + return delegate.getUserPrincipal(); + } + + @Override + public boolean isUserInRole(String role) { + return delegate.isUserInRole(role); + } + + @Override + public void log(String message) { + delegate.log(message); + } + + @Override + public void log(String message, Throwable exception) { + delegate.log(message, exception); + } + + @Override + public void redirect(String url) throws IOException { + delegate.redirect(url); + } + + public void release() { + delegate = null; + initParameterMap = null; + request = null; + } + +} Added: trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/context/TCKFacesContext.java =================================================================== --- trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/context/TCKFacesContext.java (rev 0) +++ trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/context/TCKFacesContext.java 2012-06-24 16:24:34 UTC (rev 89) @@ -0,0 +1,141 @@ +package net.sf.jsf4portlets.tck.faces.context; + +import javax.el.ELContext; +import javax.faces.application.Application; +import javax.faces.application.FacesMessage; +import javax.faces.component.UIViewRoot; +import javax.faces.context.ExternalContext; +import javax.faces.context.FacesContext; +import javax.faces.context.ResponseStream; +import javax.faces.context.ResponseWriter; +import javax.faces.render.RenderKit; +import javax.portlet.PortletContext; +import javax.portlet.PortletRequest; +import javax.portlet.PortletResponse; +import java.util.Iterator; + +public class TCKFacesContext extends FacesContext { + + private TCKExternalContext externalContext; + private FacesContext delegate; + + public TCKFacesContext(FacesContext delegate, PortletContext context, + PortletRequest request, PortletResponse response) { + this.delegate = delegate; + + externalContext = new TCKExternalContext(context, request, + response, delegate.getExternalContext()); + } + + @Override + public Application getApplication() { + return delegate.getApplication(); + } + + @Override + public Iterator<String> getClientIdsWithMessages() { + return delegate.getClientIdsWithMessages(); + } + + @Override + public ELContext getELContext() { + return delegate.getELContext(); + } + + @Override + public ExternalContext getExternalContext() { + return externalContext; + } + + @Override + public FacesMessage.Severity getMaximumSeverity() { + return delegate.getMaximumSeverity(); + } + + @Override + public Iterator<FacesMessage> getMessages() { + return delegate.getMessages(); + } + + @Override + public Iterator<FacesMessage> getMessages(String clientId) { + return delegate.getMessages(clientId); + } + + @Override + public RenderKit getRenderKit() { + return delegate.getRenderKit(); + } + + @Override + public boolean getRenderResponse() { + return delegate.getRenderResponse(); + } + + @Override + public boolean getResponseComplete() { + return delegate.getResponseComplete(); + } + + @Override + public ResponseStream getResponseStream() { + return delegate.getResponseStream(); + } + + @Override + public void setResponseStream(ResponseStream responseStream) { + delegate.setResponseStream(responseStream); + } + + @Override + public ResponseWriter getResponseWriter() { + return delegate.getResponseWriter(); + } + + @Override + public void setResponseWriter(ResponseWriter responseWriter) { + delegate.setResponseWriter(responseWriter); + } + + @Override + public UIViewRoot getViewRoot() { + return delegate.getViewRoot(); + } + + @Override + public void setViewRoot(UIViewRoot root) { + delegate.setViewRoot(root); + } + + @Override + public void addMessage(String clientId, FacesMessage message) { + delegate.addMessage(clientId, message); + } + + @Override + public void release() { + externalContext.release(); + externalContext = null; + + delegate.release(); + delegate = null; + } + + @Override + public void renderResponse() { + delegate.renderResponse(); + } + + @Override + public void responseComplete() { + delegate.responseComplete(); + } + + public static FacesContext getCurrentInstance() { + return FacesContext.getCurrentInstance(); + } + + public static void setCurrentInstance(FacesContext context) { + FacesContext.setCurrentInstance(context); + } +} Modified: trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/context/TCKFacesContextFactory.java =================================================================== --- trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/context/TCKFacesContextFactory.java 2012-06-24 13:41:15 UTC (rev 88) +++ trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/context/TCKFacesContextFactory.java 2012-06-24 16:24:34 UTC (rev 89) @@ -4,6 +4,9 @@ import javax.faces.context.FacesContext; import javax.faces.context.FacesContextFactory; import javax.faces.lifecycle.Lifecycle; +import javax.portlet.PortletContext; +import javax.portlet.PortletRequest; +import javax.portlet.PortletResponse; public class TCKFacesContextFactory extends FacesContextFactory { @@ -16,6 +19,15 @@ @Override public FacesContext getFacesContext(Object context, Object request, Object response, Lifecycle lifecycle) throws FacesException { - return delegate.getFacesContext(context, request, response, lifecycle); + if (!(context instanceof PortletContext)) { + return delegate.getFacesContext(context, request, response, lifecycle); + } + + PortletContext portletContext = (PortletContext) context; + PortletRequest portletRequest = (PortletRequest) request; + PortletResponse portletResponse = (PortletResponse) response; + FacesContext facesContext = delegate.getFacesContext(context, request, response, lifecycle); + + return new TCKFacesContext(facesContext, portletContext, portletRequest, portletResponse); } } Modified: trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/lifecycle/TCKLifecycleFactory.java =================================================================== --- trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/lifecycle/TCKLifecycleFactory.java 2012-06-24 13:41:15 UTC (rev 88) +++ trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/lifecycle/TCKLifecycleFactory.java 2012-06-24 16:24:34 UTC (rev 89) @@ -1,5 +1,7 @@ package net.sf.jsf4portlets.tck.faces.lifecycle; +import net.sf.jsf4portlets.tck.TCKConstants; + import javax.faces.lifecycle.Lifecycle; import javax.faces.lifecycle.LifecycleFactory; import java.util.Iterator; @@ -8,6 +10,13 @@ private LifecycleFactory delegate; + public TCKLifecycleFactory(LifecycleFactory delegate) { + this.delegate = delegate; + + Lifecycle defaultLifecycle = delegate.getLifecycle(LifecycleFactory.DEFAULT_LIFECYCLE); + addLifecycle(TCKConstants.LIFECYCLE_ID, new TCKLifecycle(defaultLifecycle)); + } + @Override public void addLifecycle(String lifecycleId, Lifecycle lifecycle) { delegate.addLifecycle(lifecycleId, lifecycle); Modified: trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/portlet/TCKFacesPortlet.java =================================================================== --- trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/portlet/TCKFacesPortlet.java 2012-06-24 13:41:15 UTC (rev 88) +++ trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/portlet/TCKFacesPortlet.java 2012-06-24 16:24:34 UTC (rev 89) @@ -9,7 +9,7 @@ public class TCKFacesPortlet extends GenericFacesPortlet { - public static final String SEPARATOR = "_"; + public static final String NAME_SEPARATOR = ":"; private String testBeanName; private String testName; @@ -19,11 +19,11 @@ super.init(portletConfig); String portletName = portletConfig.getPortletName(); - if (portletName.indexOf(SEPARATOR) < 0) { + if (portletName.indexOf(NAME_SEPARATOR) < 0) { throw new UnavailableException("Invalid portlet name."); } - String[] parts = portletName.split(SEPARATOR); + String[] parts = portletName.split(NAME_SEPARATOR); testBeanName = parts[1]; if (parts.length > 2) { testName = parts[2]; @@ -58,8 +58,8 @@ } private void initTestRequest(PortletRequest request) { - request.setAttribute(TCKConstants.TCK_TEST_BEAN_NAME, testBeanName); - request.setAttribute(TCKConstants.TCK_TEST_NAME, testName); + request.setAttribute(TCKConstants.TEST_BEAN_NAME, testBeanName); + request.setAttribute(TCKConstants.TEST_NAME, testName); } } Added: trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/util/ELUtil.java =================================================================== --- trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/util/ELUtil.java (rev 0) +++ trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/util/ELUtil.java 2012-06-24 16:24:34 UTC (rev 89) @@ -0,0 +1,35 @@ +package net.sf.jsf4portlets.tck.util; + +import net.sf.jsf4portlets.tck.TCKConstants; + +import javax.el.ELException; +import javax.el.ExpressionFactory; +import javax.el.ValueExpression; +import javax.faces.FacesException; +import javax.faces.context.FacesContext; +import javax.portlet.PortletRequest; + +public final class ELUtil { + + public static <T> T resolveTestBeanProperty(PortletRequest request, String property, Class<T> type) { + FacesContext context = FacesContext.getCurrentInstance(); + if (context == null) { + throw new IllegalStateException("No FacesContext!"); + } + + String testBeanName = (String) request.getAttribute(TCKConstants.TEST_BEAN_NAME); + StringBuilder exp = new StringBuilder(); + exp.append("#{").append(testBeanName).append(".").append(property).append("}"); + + ExpressionFactory ef = context.getApplication().getExpressionFactory(); + ValueExpression ve = ef.createValueExpression(context.getELContext(), exp.toString(), type); + try { + return type.cast(ve.getValue(context.getELContext())); + } catch (ELException e) { + throw new FacesException(e); + } + } + + private ELUtil() { } + +} Added: trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/util/StringUtil.java =================================================================== --- trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/util/StringUtil.java (rev 0) +++ trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/util/StringUtil.java 2012-06-24 16:24:34 UTC (rev 89) @@ -0,0 +1,52 @@ +package net.sf.jsf4portlets.tck.util; + +import org.apache.pluto.util.StringUtils; + +public final class StringUtil { + + public static String capitalize(String str) { + if (str == null || str.length() == 0) { + return str; + } + + String[] parts = str.split("_"); + for (int i = 0;i < parts.length;i++) { + parts[i] = capitalizeWord(parts[i]); + } + return join(parts); + } + + public static String capitalizeWord(String str) { + if (str == null || str.length() == 0) { + return str; + } + + str = str.toLowerCase(); + return new StringBuilder() + .append(Character.toUpperCase(str.charAt(0))) + .append(str.substring(1)) + .toString(); + } + + public static String join(String... parts) { + return join(null, parts); + } + + public static String join(String separator, String... parts) { + if (parts == null) { + return null; + } + + StringBuilder str = new StringBuilder(); + for (int i = 0;i < parts.length;i++) { + if (separator != null && i > 0) { + str.append(separator); + } + str.append(parts[i]); + } + return str.toString(); + } + + private StringUtil() { } + +} Deleted: trunk/jsf4portlets-tck/src/test/java/net/sf/jsf4portlets/tck/Chapter3_1Test.java =================================================================== --- trunk/jsf4portlets-tck/src/test/java/net/sf/jsf4portlets/tck/Chapter3_1Test.java 2012-06-24 13:41:15 UTC (rev 88) +++ trunk/jsf4portlets-tck/src/test/java/net/sf/jsf4portlets/tck/Chapter3_1Test.java 2012-06-24 16:24:34 UTC (rev 89) @@ -1,21 +0,0 @@ -package net.sf.jsf4portlets.tck; - -import org.junit.Test; - -import javax.portlet.faces.GenericFacesPortlet; - -import static org.junit.Assert.*; -import static org.hamcrest.Matchers.*; - -public class Chapter3_1Test { - - private static final String SPECIFICATION_TITLE = "Portlet 1.0 Bridge for JavaServer Faces 1.2"; - - @Test - public void checkSpecificationTitle() { - GenericFacesPortlet portlet = new GenericFacesPortlet(); - Package pack = portlet.getClass().getPackage(); - assertThat(pack.getSpecificationTitle(), equalTo(SPECIFICATION_TITLE)); - } - -} Added: trunk/jsf4portlets-tck/src/test/java/net/sf/jsf4portlets/tck/beans/Chapter3_2Bean.java =================================================================== --- trunk/jsf4portlets-tck/src/test/java/net/sf/jsf4portlets/tck/beans/Chapter3_2Bean.java (rev 0) +++ trunk/jsf4portlets-tck/src/test/java/net/sf/jsf4portlets/tck/beans/Chapter3_2Bean.java 2012-06-24 16:24:34 UTC (rev 89) @@ -0,0 +1,12 @@ +package net.sf.jsf4portlets.tck.beans; + +import net.sf.jsf4portlets.tck.common.TCKTestBean; + +import javax.portlet.faces.Bridge; + +public class Chapter3_2Bean extends TCKTestBean { + @Override + public Bridge.BridgeRenderPolicy getRenderPolicy() { + return Bridge.BridgeRenderPolicy.ALWAYS_DELEGATE; + } +} Copied: trunk/jsf4portlets-tck/src/test/java/net/sf/jsf4portlets/tck/test/Chapter3_1Test.java (from rev 85, trunk/jsf4portlets-tck/src/test/java/net/sf/jsf4portlets/tck/Chapter3_1Test.java) =================================================================== --- trunk/jsf4portlets-tck/src/test/java/net/sf/jsf4portlets/tck/test/Chapter3_1Test.java (rev 0) +++ trunk/jsf4portlets-tck/src/test/java/net/sf/jsf4portlets/tck/test/Chapter3_1Test.java 2012-06-24 16:24:34 UTC (rev 89) @@ -0,0 +1,21 @@ +package net.sf.jsf4portlets.tck.test; + +import org.junit.Test; + +import javax.portlet.faces.GenericFacesPortlet; + +import static org.junit.Assert.*; +import static org.hamcrest.Matchers.*; + +public class Chapter3_1Test { + + private static final String SPECIFICATION_TITLE = "Portlet 1.0 Bridge for JavaServer Faces 1.2"; + + @Test + public void checkSpecificationTitle() { + GenericFacesPortlet portlet = new GenericFacesPortlet(); + Package pack = portlet.getClass().getPackage(); + assertThat(pack.getSpecificationTitle(), equalTo(SPECIFICATION_TITLE)); + } + +} Added: trunk/jsf4portlets-tck/src/test/webapp/META-INF/TCKPorletApplication.xml =================================================================== --- trunk/jsf4portlets-tck/src/test/webapp/META-INF/TCKPorletApplication.xml (rev 0) +++ trunk/jsf4portlets-tck/src/test/webapp/META-INF/TCKPorletApplication.xml 2012-06-24 16:24:34 UTC (rev 89) @@ -0,0 +1,2 @@ +<Context path="/TCKPortletApplication" + docBase="TCKPortletApplication" crossContext="true"/> \ No newline at end of file Modified: trunk/jsf4portlets-tck/src/test/webapp/WEB-INF/faces-config.xml =================================================================== --- trunk/jsf4portlets-tck/src/test/webapp/WEB-INF/faces-config.xml 2012-06-24 13:41:15 UTC (rev 88) +++ trunk/jsf4portlets-tck/src/test/webapp/WEB-INF/faces-config.xml 2012-06-24 16:24:34 UTC (rev 89) @@ -10,4 +10,10 @@ <lifecycle-factory>net.sf.jsf4portlets.tck.faces.lifecycle.TCKLifecycleFactory</lifecycle-factory> </factory> + <managed-bean> + <managed-bean-name>chapter3_2</managed-bean-name> + <managed-bean-class>net.sf.jsf4portlets.tck.beans.Chapter3_2Bean</managed-bean-class> + <managed-bean-scope>request</managed-bean-scope> + </managed-bean> + </faces-config> Modified: trunk/jsf4portlets-tck/src/test/webapp/WEB-INF/portlet.xml =================================================================== --- trunk/jsf4portlets-tck/src/test/webapp/WEB-INF/portlet.xml 2012-06-24 13:41:15 UTC (rev 88) +++ trunk/jsf4portlets-tck/src/test/webapp/WEB-INF/portlet.xml 2012-06-24 16:24:34 UTC (rev 89) @@ -5,5 +5,14 @@ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd"> + <portlet> + <portlet-name>jsf4portlets:chapter3_2</portlet-name> + <portlet-class>net.sf.jsf4portlets.tck.portlet.TCKFacesPortlet</portlet-class> + <init-param> + <name>javax.portlet.faces.defaultViewId.view</name> + <value>/test/chapter3_2.jsp</value> + </init-param> + </portlet> + </portlet-app> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <alo...@us...> - 2012-06-26 23:38:20
|
Revision: 106 http://jsf4portlets.svn.sourceforge.net/jsf4portlets/?rev=106&view=rev Author: alonsoft Date: 2012-06-26 23:38:14 +0000 (Tue, 26 Jun 2012) Log Message: ----------- from an alpha to a release candidate Modified Paths: -------------- trunk/jsf4portlets-api/pom.xml trunk/jsf4portlets-ext/pom.xml trunk/jsf4portlets-impl/pom.xml trunk/jsf4portlets-tck/jsf4portlets-tck-core/pom.xml trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/pom.xml trunk/jsf4portlets-tck/pom.xml trunk/pom.xml Modified: trunk/jsf4portlets-api/pom.xml =================================================================== --- trunk/jsf4portlets-api/pom.xml 2012-06-26 23:28:40 UTC (rev 105) +++ trunk/jsf4portlets-api/pom.xml 2012-06-26 23:38:14 UTC (rev 106) @@ -8,14 +8,13 @@ <parent> <artifactId>jsf4portlets-project</artifactId> <groupId>net.sf.jsf4portlets</groupId> - <version>1.0-alpha-3-SNAPSHOT</version> + <version>1.0-rc-SNAPSHOT</version> </parent> <groupId>net.sf.jsf4portlets</groupId> <artifactId>jsf4portlets-api</artifactId> <name>JSF 4 Portlets API</name> <url>http://jsf4portlets.sf.net/web/jsf4portlets-api</url> - <version>1.0-alpha-3-SNAPSHOT</version> <build> <plugins> Modified: trunk/jsf4portlets-ext/pom.xml =================================================================== --- trunk/jsf4portlets-ext/pom.xml 2012-06-26 23:28:40 UTC (rev 105) +++ trunk/jsf4portlets-ext/pom.xml 2012-06-26 23:38:14 UTC (rev 106) @@ -29,7 +29,7 @@ <parent> <groupId>net.sf.jsf4portlets</groupId> <artifactId>jsf4portlets-project</artifactId> - <version>1.0-alpha-3-SNAPSHOT</version> + <version>1.0-rc-SNAPSHOT</version> </parent> <artifactId>jsf4portlets-ext</artifactId> Modified: trunk/jsf4portlets-impl/pom.xml =================================================================== --- trunk/jsf4portlets-impl/pom.xml 2012-06-26 23:28:40 UTC (rev 105) +++ trunk/jsf4portlets-impl/pom.xml 2012-06-26 23:38:14 UTC (rev 106) @@ -30,7 +30,7 @@ <parent> <groupId>net.sf.jsf4portlets</groupId> <artifactId>jsf4portlets-project</artifactId> - <version>1.0-alpha-3-SNAPSHOT</version> + <version>1.0-rc-SNAPSHOT</version> </parent> <artifactId>jsf4portlets-impl</artifactId> Modified: trunk/jsf4portlets-tck/jsf4portlets-tck-core/pom.xml =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-core/pom.xml 2012-06-26 23:28:40 UTC (rev 105) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-core/pom.xml 2012-06-26 23:38:14 UTC (rev 106) @@ -5,7 +5,7 @@ <parent> <artifactId>jsf4portlets-tck</artifactId> <groupId>net.sf.jsf4portlets</groupId> - <version>1.0-alpha-3-SNAPSHOT</version> + <version>1.0-rc-SNAPSHOT</version> </parent> <modelVersion>4.0.0</modelVersion> Modified: trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/pom.xml =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/pom.xml 2012-06-26 23:28:40 UTC (rev 105) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/pom.xml 2012-06-26 23:38:14 UTC (rev 106) @@ -5,7 +5,7 @@ <parent> <artifactId>jsf4portlets-tck</artifactId> <groupId>net.sf.jsf4portlets</groupId> - <version>1.0-alpha-3-SNAPSHOT</version> + <version>1.0-rc-SNAPSHOT</version> </parent> <modelVersion>4.0.0</modelVersion> Modified: trunk/jsf4portlets-tck/pom.xml =================================================================== --- trunk/jsf4portlets-tck/pom.xml 2012-06-26 23:28:40 UTC (rev 105) +++ trunk/jsf4portlets-tck/pom.xml 2012-06-26 23:38:14 UTC (rev 106) @@ -5,7 +5,7 @@ <parent> <artifactId>jsf4portlets-project</artifactId> <groupId>net.sf.jsf4portlets</groupId> - <version>1.0-alpha-3-SNAPSHOT</version> + <version>1.0-rc-SNAPSHOT</version> </parent> <modelVersion>4.0.0</modelVersion> Modified: trunk/pom.xml =================================================================== --- trunk/pom.xml 2012-06-26 23:28:40 UTC (rev 105) +++ trunk/pom.xml 2012-06-26 23:38:14 UTC (rev 106) @@ -28,7 +28,7 @@ <groupId>net.sf.jsf4portlets</groupId> <artifactId>jsf4portlets-project</artifactId> - <version>1.0-alpha-3-SNAPSHOT</version> + <version>1.0-rc-SNAPSHOT</version> <packaging>pom</packaging> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <alo...@us...> - 2012-06-27 00:28:49
|
Revision: 107 http://jsf4portlets.svn.sourceforge.net/jsf4portlets/?rev=107&view=rev Author: alonsoft Date: 2012-06-27 00:28:43 +0000 (Wed, 27 Jun 2012) Log Message: ----------- pluto starts perfectly now, ready to start coding some tests Modified Paths: -------------- trunk/jsf4portlets-impl/src/main/java/net/sf/jsf4portlets/BridgeImpl.java trunk/jsf4portlets-impl/src/main/java/net/sf/jsf4portlets/scope/DefaultRequestScopeManager.java trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/common/TCKTestBean.java trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/faces/context/TCKExternalContext.java trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/pom.xml trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/java/net/sf/jsf4portlets/tck/beans/Chapter3_2Bean.java trunk/pom.xml Added Paths: ----------- trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/webapp/test/chapter3_2.jsp Modified: trunk/jsf4portlets-impl/src/main/java/net/sf/jsf4portlets/BridgeImpl.java =================================================================== --- trunk/jsf4portlets-impl/src/main/java/net/sf/jsf4portlets/BridgeImpl.java 2012-06-26 23:38:14 UTC (rev 106) +++ trunk/jsf4portlets-impl/src/main/java/net/sf/jsf4portlets/BridgeImpl.java 2012-06-27 00:28:43 UTC (rev 107) @@ -91,15 +91,18 @@ public void destroy() { logger.log(Level.FINEST, "J4P_000003", getPortletName()); - // Release request scopes associated with this portlet - requestScopeManager.release(getPortletName()); + if (requestScopeManager != null) { + // Release request scopes associated with this portlet + requestScopeManager.release(getPortletName()); + } + facesContextFactory = null; lifecycle = null; - portletConfig = null; requestScopeManager = null; initialized = false; logger.log(Level.FINEST, "J4P_000004", getPortletName()); + portletConfig = null; } public void doFacesRequest(final ActionRequest request, Modified: trunk/jsf4portlets-impl/src/main/java/net/sf/jsf4portlets/scope/DefaultRequestScopeManager.java =================================================================== --- trunk/jsf4portlets-impl/src/main/java/net/sf/jsf4portlets/scope/DefaultRequestScopeManager.java 2012-06-26 23:38:14 UTC (rev 106) +++ trunk/jsf4portlets-impl/src/main/java/net/sf/jsf4portlets/scope/DefaultRequestScopeManager.java 2012-06-27 00:28:43 UTC (rev 107) @@ -456,8 +456,7 @@ } private void watchRequestScope(final ExternalContext context) { - final PortletSession session = (PortletSession) context - .getSession(false); + final PortletSession session = (PortletSession) context.getSession(false); if (session != null) { RequestScopeBindingListener listener = (RequestScopeBindingListener) session .getAttribute(REQUEST_SCOPE_WATCHER); @@ -658,7 +657,7 @@ private void dumpScope(final RequestScope scope) { if (logger.isLoggable(Level.FINEST)) { int idx = 0; - final StringBuffer buffer = new StringBuffer("\n"); + final StringBuilder buffer = new StringBuilder("\n"); // Dump attributes buffer.append("ATTRIBUTES:\n"); Modified: trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/common/TCKTestBean.java =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/common/TCKTestBean.java 2012-06-26 23:38:14 UTC (rev 106) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/common/TCKTestBean.java 2012-06-27 00:28:43 UTC (rev 107) @@ -4,13 +4,13 @@ public class TCKTestBean { - private BridgeRenderPolicy renderPolicy = BridgeRenderPolicy.DEFAULT; + private String renderPolicy = BridgeRenderPolicy.DEFAULT.toString(); - public BridgeRenderPolicy getRenderPolicy() { + public String getRenderPolicy() { return renderPolicy; } - public void setRenderPolicy(BridgeRenderPolicy renderPolicy) { + public void setRenderPolicy(String renderPolicy) { this.renderPolicy = renderPolicy; } } \ No newline at end of file Modified: trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/faces/context/TCKExternalContext.java =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/faces/context/TCKExternalContext.java 2012-06-26 23:38:14 UTC (rev 106) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/faces/context/TCKExternalContext.java 2012-06-27 00:28:43 UTC (rev 107) @@ -69,20 +69,12 @@ @Override public String getInitParameter(String name) { - String value = delegate.getInitParameter(name); - if (value == null) { - value = ELUtil.resolveTestBeanProperty(request, - StringUtil.capitalize(name), String.class); - } - return value; + return delegate.getInitParameter(name); } @Override public Map getInitParameterMap() { - if (initParameterMap == null) { - initParameterMap = new ELResolveMap<String>(request, delegate.getInitParameterMap(), String.class); - } - return initParameterMap; + return delegate.getInitParameterMap(); } @Override Modified: trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/pom.xml =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/pom.xml 2012-06-26 23:38:14 UTC (rev 106) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/pom.xml 2012-06-27 00:28:43 UTC (rev 107) @@ -91,7 +91,7 @@ <systemProperties> <systemProperty> <name>org.apache.pluto.embedded.portletIds</name> - <value>jsf4portlets-chapter3_2,jsf4portlets-chapter4_2</value> + <value>jsf4portlets-chapter3_2</value> </systemProperty> </systemProperties> <stopPort>9966</stopPort> @@ -196,6 +196,11 @@ <scope>compile</scope> </dependency> <dependency> + <groupId>javax.faces</groupId> + <artifactId>jsf-impl</artifactId> + <version>${jsf.version}</version> + </dependency> + <dependency> <groupId>javax.annotation</groupId> <artifactId>jsr250-api</artifactId> <scope>compile</scope> Modified: trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/java/net/sf/jsf4portlets/tck/beans/Chapter3_2Bean.java =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/java/net/sf/jsf4portlets/tck/beans/Chapter3_2Bean.java 2012-06-26 23:38:14 UTC (rev 106) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/java/net/sf/jsf4portlets/tck/beans/Chapter3_2Bean.java 2012-06-27 00:28:43 UTC (rev 107) @@ -6,7 +6,7 @@ public class Chapter3_2Bean extends TCKTestBean { @Override - public Bridge.BridgeRenderPolicy getRenderPolicy() { - return Bridge.BridgeRenderPolicy.ALWAYS_DELEGATE; + public String getRenderPolicy() { + return Bridge.BridgeRenderPolicy.ALWAYS_DELEGATE.toString(); } } Added: trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/webapp/test/chapter3_2.jsp =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/webapp/test/chapter3_2.jsp (rev 0) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/webapp/test/chapter3_2.jsp 2012-06-27 00:28:43 UTC (rev 107) @@ -0,0 +1,16 @@ +<%-- + Created by IntelliJ IDEA. + User: aalonsodominguez + Date: 27/06/12 + Time: 01:30 + To change this template use File | Settings | File Templates. +--%> +<%@ page contentType="text/html;charset=UTF-8" language="java" %> +<html> +<head> + <title></title> +</head> +<body> + +</body> +</html> \ No newline at end of file Modified: trunk/pom.xml =================================================================== --- trunk/pom.xml 2012-06-26 23:38:14 UTC (rev 106) +++ trunk/pom.xml 2012-06-27 00:28:43 UTC (rev 107) @@ -244,7 +244,7 @@ <dependency> <groupId>javax.faces</groupId> <artifactId>jsf-api</artifactId> - <version>1.2</version> + <version>${jsf.version}</version> <scope>provided</scope> </dependency> <dependency> @@ -393,6 +393,7 @@ <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <jdk.version>1.5</jdk.version> + <jsf.version>1.2_15</jsf.version> <jetty.version>6.1.25</jetty.version> <openportal.version>2.0-m4</openportal.version> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |