jsf4portlets-devel Mailing List for JSF 4 Portlets
Status: Alpha
Brought to you by:
alonsoft
You can subscribe to this list here.
2007 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(6) |
Jul
(3) |
Aug
(4) |
Sep
(8) |
Oct
(1) |
Nov
|
Dec
|
---|---|---|---|---|---|---|---|---|---|---|---|---|
2008 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(4) |
Jul
|
Aug
|
Sep
|
Oct
(4) |
Nov
|
Dec
|
2009 |
Jan
|
Feb
|
Mar
|
Apr
(4) |
May
(8) |
Jun
(2) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2010 |
Jan
|
Feb
(4) |
Mar
(4) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2011 |
Jan
|
Feb
|
Mar
|
Apr
(1) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2012 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
(23) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
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. |
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-26 22:53:56
|
Revision: 104 http://jsf4portlets.svn.sourceforge.net/jsf4portlets/?rev=104&view=rev Author: alonsoft Date: 2012-06-26 22:53:50 +0000 (Tue, 26 Jun 2012) Log Message: ----------- reverting to just firefox for testing on TeamCity Modified Paths: -------------- trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/java/net/sf/jsf4portlets/tck/common/TCKSeleniumTestCase.java Modified: trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/java/net/sf/jsf4portlets/tck/common/TCKSeleniumTestCase.java =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/java/net/sf/jsf4portlets/tck/common/TCKSeleniumTestCase.java 2012-06-26 22:40:56 UTC (rev 103) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/java/net/sf/jsf4portlets/tck/common/TCKSeleniumTestCase.java 2012-06-26 22:53:50 UTC (rev 104) @@ -42,7 +42,8 @@ DesiredCapabilities firefoxCapability = DesiredCapabilities.firefox(); firefoxCapability.setCapability(FirefoxDriver.PROFILE, firefox); - webDriver = new RemoteWebDriver(new URL(baseUrl.toString()), DesiredCapabilities.firefox()); + //webDriver = new RemoteWebDriver(new URL(baseUrl.toString()), DesiredCapabilities.firefox()); + webDriver = new FirefoxDriver(); } @After This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <alo...@us...> - 2012-06-26 22:41:03
|
Revision: 103 http://jsf4portlets.svn.sourceforge.net/jsf4portlets/?rev=103&view=rev Author: alonsoft Date: 2012-06-26 22:40:56 +0000 (Tue, 26 Jun 2012) Log Message: ----------- pluto starts embedded Modified Paths: -------------- trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/pom.xml Added Paths: ----------- trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/jetty/ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/jetty/pluto-web-default.xml Removed Paths: ------------- trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/jetty/ Modified: trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/pom.xml =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/pom.xml 2012-06-25 22:48:57 UTC (rev 102) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/pom.xml 2012-06-26 22:40:56 UTC (rev 103) @@ -54,7 +54,7 @@ <webXml>${project.build.directory}/pluto-resources/web.xml</webXml> <webAppConfig> <contextPath>/${project.artifactId}</contextPath> - <defaultsDescriptor>/WEB-INF/jetty-pluto-web-default.xml</defaultsDescriptor> + <defaultsDescriptor>${basedir}/src/test/jetty/pluto-web-default.xml</defaultsDescriptor> </webAppConfig> <systemProperties> <systemProperty> @@ -220,7 +220,7 @@ <groupId>com.bekk.boss</groupId> <artifactId>maven-jetty-pluto-embedded</artifactId> <version>1.0.1</version> - <scope>provided</scope> + <scope>runtime</scope> </dependency> <dependency> Added: trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/jetty/pluto-web-default.xml =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/jetty/pluto-web-default.xml (rev 0) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/jetty/pluto-web-default.xml 2012-06-26 22:40:56 UTC (rev 103) @@ -0,0 +1,383 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> + +<!-- ===================================================================== --> +<!-- This file contains the default descriptor for web applications. --> +<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --> +<!-- The intent of this descriptor is to include jetty specific or common --> +<!-- configuration for all webapps. If a context has a webdefault.xml --> +<!-- descriptor, it is applied before the contexts own web.xml file --> +<!-- --> +<!-- A context may be assigned a default descriptor by: --> +<!-- + Calling WebApplicationContext.setDefaultsDescriptor --> +<!-- + Passed an arg to addWebApplications --> +<!-- --> +<!-- This file is used both as the resource within the jetty.jar (which is --> +<!-- used as the default if no explicit defaults descriptor is set) and it --> +<!-- is copied to the etc directory of the Jetty distro and explicitly --> +<!-- by the jetty.xml file. --> +<!-- --> +<!-- ===================================================================== --> +<web-app + xmlns="http://java.sun.com/xml/ns/javaee" + 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-app_2_5.xsd" + metadata-complete="true" + version="2.5"> + + <description> + Default web.xml file. + This file is applied to a Web application before it's own WEB_INF/web.xml file + </description> + + <!-- ==================================================================== --> + <!-- Context params to control Session Cookies --> + <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --> + <!-- UNCOMMENT TO ACTIVATE + <context-param> + <param-name>org.mortbay.jetty.servlet.SessionDomain</param-name> + <param-value>127.0.0.1</param-value> + </context-param> + + <context-param> + <param-name>org.mortbay.jetty.servlet.SessionPath</param-name> + <param-value>/</param-value> + </context-param> + + <context-param> + <param-name>org.mortbay.jetty.servlet.MaxAge</param-name> + <param-value>-1</param-value> + </context-param> + --> + + <context-param> + <param-name>org.mortbay.jetty.webapp.NoTLDJarPattern</param-name> + <param-value>start.jar|ant-.*\.jar|dojo-.*\.jar|jetty-.*\.jar|jsp-api-.*\.jar|junit-.*\.jar|servlet-api-.*\.jar|dnsns\.jar|rt\.jar|jsse\.jar|tools\.jar|sunpkcs11\.jar|sunjce_provider\.jar|xerces.*\.jar</param-value> + </context-param> + + <listener> + <listener-class> + com.bekk.boss.pluto.embedded.jetty.util.OverrideContextLoaderListener + </listener-class> + </listener> + <listener> + <listener-class> + com.bekk.boss.pluto.embedded.util.PortalStartupListener + </listener-class> + </listener> + <filter> + <filter-name>plutoResourceFilter</filter-name> + <filter-class>com.bekk.boss.pluto.embedded.util.PlutResourcesFilter</filter-class> + </filter> + <filter> + <filter-name>plutoPortalDriver</filter-name> + <filter-class>com.bekk.boss.pluto.embedded.util.PlutoPortalDriverFilter</filter-class> + </filter> + + <filter-mapping> + <filter-name>plutoResourceFilter</filter-name> + <url-pattern>*.css</url-pattern> + </filter-mapping> + <filter-mapping> + <filter-name>plutoResourceFilter</filter-name> + <url-pattern>*.gif</url-pattern> + </filter-mapping> + <filter-mapping> + <filter-name>plutoResourceFilter</filter-name> + <url-pattern>*.png</url-pattern> + </filter-mapping> + <filter-mapping> + <filter-name>plutoResourceFilter</filter-name> + <url-pattern>*.js</url-pattern> + </filter-mapping> + <filter-mapping> + <filter-name>plutoPortalDriver</filter-name> + <url-pattern>/pluto/index.jsp</url-pattern> + </filter-mapping> + <filter-mapping> + <filter-name>plutoPortalDriver</filter-name> + <url-pattern>/pluto/index.jsp/*</url-pattern> + </filter-mapping> + + <!-- ==================================================================== --> + <!-- The default servlet. --> + <!-- This servlet, normally mapped to /, provides the handling for static --> + <!-- content, OPTIONS and TRACE methods for the context. --> + <!-- The following initParameters are supported: --> + <!-- --> + <!-- acceptRanges If true, range requests and responses are --> + <!-- supported --> + <!-- --> + <!-- dirAllowed If true, directory listings are returned if no --> + <!-- welcome file is found. Else 403 Forbidden. --> + <!-- --> + <!-- redirectWelcome If true, redirect welcome file requests --> + <!-- else use request dispatcher forwards --> + <!-- --> + <!-- gzip If set to true, then static content will be served--> + <!-- as gzip content encoded if a matching resource is --> + <!-- found ending with ".gz" --> + <!-- --> + <!-- resoureBase Can be set to replace the context resource base --> + <!-- --> + <!-- relativeResourceBase --> + <!-- Set with a pathname relative to the base of the --> + <!-- servlet context root. Useful for only serving --> + <!-- static content from only specific subdirectories. --> + <!-- --> + <!-- useFileMappedBuffer --> + <!-- If set to true (the default), a memory mapped --> + <!-- file buffer will be used to serve static content --> + <!-- when using an NIO connector. Setting this value --> + <!-- to false means that a direct buffer will be used --> + <!-- instead. If you are having trouble with Windows --> + <!-- file locking, set this to false. --> + <!-- --> + <!-- cacheControl If set, all static content will have this value --> + <!-- set as the cache-control header. --> + <!-- --> + <!-- maxCacheSize Maximum size of the static resource cache --> + <!-- --> + <!-- maxCachedFileSize Maximum size of any single file in the cache --> + <!-- --> + <!-- maxCachedFiles Maximum number of files in the cache --> + <!-- --> + <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --> + <servlet> + <servlet-name>default</servlet-name> + <servlet-class>org.mortbay.jetty.servlet.DefaultServlet</servlet-class> + <init-param> + <param-name>acceptRanges</param-name> + <param-value>true</param-value> + </init-param> + <init-param> + <param-name>dirAllowed</param-name> + <param-value>true</param-value> + </init-param> + <init-param> + <param-name>redirectWelcome</param-name> + <param-value>false</param-value> + </init-param> + <init-param> + <param-name>maxCacheSize</param-name> + <param-value>4000000</param-value> + </init-param> + <init-param> + <param-name>maxCachedFileSize</param-name> + <param-value>254000</param-value> + </init-param> + <init-param> + <param-name>maxCachedFiles</param-name> + <param-value>1000</param-value> + </init-param> + <init-param> + <param-name>gzip</param-name> + <param-value>true</param-value> + </init-param> + <init-param> + <param-name>useFileMappedBuffer</param-name> + <param-value>true</param-value> + </init-param> + <!-- + <init-param> + <param-name>cacheControl</param-name> + <param-value>max-age=3600,public</param-value> + </init-param> + --> + <load-on-startup>0</load-on-startup> + </servlet> + + <servlet-mapping> <servlet-name>default</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping> + + + <!-- ==================================================================== --> + <!-- JSP Servlet --> + <!-- This is the jasper JSP servlet from the jakarta project --> + <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --> + <!-- The JSP page compiler and execution servlet, which is the mechanism --> + <!-- used by Glassfish to support JSP pages. Traditionally, this servlet --> + <!-- is mapped to URL patterh "*.jsp". This servlet supports the --> + <!-- following initialization parameters (default values are in square --> + <!-- brackets): --> + <!-- --> + <!-- checkInterval If development is false and reloading is true, --> + <!-- background compiles are enabled. checkInterval --> + <!-- is the time in seconds between checks to see --> + <!-- if a JSP page needs to be recompiled. [300] --> + <!-- --> + <!-- compiler Which compiler Ant should use to compile JSP --> + <!-- pages. See the Ant documenation for more --> + <!-- information. [javac] --> + <!-- --> + <!-- classdebuginfo Should the class file be compiled with --> + <!-- debugging information? [true] --> + <!-- --> + <!-- classpath What class path should I use while compiling --> + <!-- generated servlets? [Created dynamically --> + <!-- based on the current web application] --> + <!-- Set to ? to make the container explicitly set --> + <!-- this parameter. --> + <!-- --> + <!-- development Is Jasper used in development mode (will check --> + <!-- for JSP modification on every access)? [true] --> + <!-- --> + <!-- enablePooling Determines whether tag handler pooling is --> + <!-- enabled [true] --> + <!-- --> + <!-- fork Tell Ant to fork compiles of JSP pages so that --> + <!-- a separate JVM is used for JSP page compiles --> + <!-- from the one Tomcat is running in. [true] --> + <!-- --> + <!-- ieClassId The class-id value to be sent to Internet --> + <!-- Explorer when using <jsp:plugin> tags. --> + <!-- [clsid:8AD9C840-044E-11D1-B3E9-00805F499D93] --> + <!-- --> + <!-- javaEncoding Java file encoding to use for generating java --> + <!-- source files. [UTF-8] --> + <!-- --> + <!-- keepgenerated Should we keep the generated Java source code --> + <!-- for each page instead of deleting it? [true] --> + <!-- --> + <!-- logVerbosityLevel The level of detailed messages to be produced --> + <!-- by this servlet. Increasing levels cause the --> + <!-- generation of more messages. Valid values are --> + <!-- FATAL, ERROR, WARNING, INFORMATION, and DEBUG. --> + <!-- [WARNING] --> + <!-- --> + <!-- mappedfile Should we generate static content with one --> + <!-- print statement per input line, to ease --> + <!-- debugging? [false] --> + <!-- --> + <!-- --> + <!-- reloading Should Jasper check for modified JSPs? [true] --> + <!-- --> + <!-- suppressSmap Should the generation of SMAP info for JSR45 --> + <!-- debugging be suppressed? [false] --> + <!-- --> + <!-- dumpSmap Should the SMAP info for JSR45 debugging be --> + <!-- dumped to a file? [false] --> + <!-- False if suppressSmap is true --> + <!-- --> + <!-- scratchdir What scratch directory should we use when --> + <!-- compiling JSP pages? [default work directory --> + <!-- for the current web application] --> + <!-- --> + <!-- tagpoolMaxSize The maximum tag handler pool size [5] --> + <!-- --> + <!-- xpoweredBy Determines whether X-Powered-By response --> + <!-- header is added by generated servlet [false] --> + <!-- --> + <!-- If you wish to use Jikes to compile JSP pages: --> + <!-- Set the init parameter "compiler" to "jikes". Define --> + <!-- the property "-Dbuild.compiler.emacs=true" when starting Jetty --> + <!-- to cause Jikes to emit error messages in a format compatible with --> + <!-- Jasper. --> + <!-- If you get an error reporting that jikes can't use UTF-8 encoding, --> + <!-- try setting the init parameter "javaEncoding" to "ISO-8859-1". --> + <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --> + <servlet id="jsp"> + <servlet-name>jsp</servlet-name> + <servlet-class>com.bekk.boss.pluto.embedded.util.PortletJspServlet</servlet-class> + <init-param> + <param-name>logVerbosityLevel</param-name> + <param-value>DEBUG</param-value> + </init-param> + <init-param> + <param-name>fork</param-name> + <param-value>false</param-value> + </init-param> + <init-param> + <param-name>xpoweredBy</param-name> + <param-value>false</param-value> + </init-param> + <!-- + <init-param> + <param-name>classpath</param-name> + <param-value>?</param-value> + </init-param> + --> + <load-on-startup>0</load-on-startup> + </servlet> + + <servlet-mapping> + <servlet-name>jsp</servlet-name> + <url-pattern>*.jsp</url-pattern> + <url-pattern>*.jspf</url-pattern> + <url-pattern>*.jspx</url-pattern> + <url-pattern>*.xsp</url-pattern> + <url-pattern>*.JSP</url-pattern> + <url-pattern>*.JSPF</url-pattern> + <url-pattern>*.JSPX</url-pattern> + <url-pattern>*.XSP</url-pattern> + </servlet-mapping> + + + + <!-- ==================================================================== --> + <session-config> + <session-timeout>30</session-timeout> + </session-config> + + <!-- ==================================================================== --> + <!-- Default MIME mappings --> + <!-- The default MIME mappings are provided by the mime.properties --> + <!-- resource in the org.mortbay.jetty.jar file. Additional or modified --> + <!-- mappings may be specified here --> + <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --> + <!-- UNCOMMENT TO ACTIVATE + <mime-mapping> + <extension>mysuffix</extension> + <mime-type>mymime/type</mime-type> + </mime-mapping> + --> + + <!-- ==================================================================== --> + <welcome-file-list> + <welcome-file>index.html</welcome-file> + <welcome-file>index.htm</welcome-file> + <welcome-file>index.jsp</welcome-file> + </welcome-file-list> + + <!-- ==================================================================== --> + <locale-encoding-mapping-list> + <locale-encoding-mapping><locale>ar</locale><encoding>ISO-8859-6</encoding></locale-encoding-mapping> + <locale-encoding-mapping><locale>be</locale><encoding>ISO-8859-5</encoding></locale-encoding-mapping> + <locale-encoding-mapping><locale>bg</locale><encoding>ISO-8859-5</encoding></locale-encoding-mapping> + <locale-encoding-mapping><locale>ca</locale><encoding>ISO-8859-1</encoding></locale-encoding-mapping> + <locale-encoding-mapping><locale>cs</locale><encoding>ISO-8859-2</encoding></locale-encoding-mapping> + <locale-encoding-mapping><locale>da</locale><encoding>ISO-8859-1</encoding></locale-encoding-mapping> + <locale-encoding-mapping><locale>de</locale><encoding>ISO-8859-1</encoding></locale-encoding-mapping> + <locale-encoding-mapping><locale>el</locale><encoding>ISO-8859-7</encoding></locale-encoding-mapping> + <locale-encoding-mapping><locale>en</locale><encoding>ISO-8859-1</encoding></locale-encoding-mapping> + <locale-encoding-mapping><locale>es</locale><encoding>ISO-8859-1</encoding></locale-encoding-mapping> + <locale-encoding-mapping><locale>et</locale><encoding>ISO-8859-1</encoding></locale-encoding-mapping> + <locale-encoding-mapping><locale>fi</locale><encoding>ISO-8859-1</encoding></locale-encoding-mapping> + <locale-encoding-mapping><locale>fr</locale><encoding>ISO-8859-1</encoding></locale-encoding-mapping> + <locale-encoding-mapping><locale>hr</locale><encoding>ISO-8859-2</encoding></locale-encoding-mapping> + <locale-encoding-mapping><locale>hu</locale><encoding>ISO-8859-2</encoding></locale-encoding-mapping> + <locale-encoding-mapping><locale>is</locale><encoding>ISO-8859-1</encoding></locale-encoding-mapping> + <locale-encoding-mapping><locale>it</locale><encoding>ISO-8859-1</encoding></locale-encoding-mapping> + <locale-encoding-mapping><locale>iw</locale><encoding>ISO-8859-8</encoding></locale-encoding-mapping> + <locale-encoding-mapping><locale>ja</locale><encoding>Shift_JIS</encoding></locale-encoding-mapping> + <locale-encoding-mapping><locale>ko</locale><encoding>EUC-KR</encoding></locale-encoding-mapping> + <locale-encoding-mapping><locale>lt</locale><encoding>ISO-8859-2</encoding></locale-encoding-mapping> + <locale-encoding-mapping><locale>lv</locale><encoding>ISO-8859-2</encoding></locale-encoding-mapping> + <locale-encoding-mapping><locale>mk</locale><encoding>ISO-8859-5</encoding></locale-encoding-mapping> + <locale-encoding-mapping><locale>nl</locale><encoding>ISO-8859-1</encoding></locale-encoding-mapping> + <locale-encoding-mapping><locale>no</locale><encoding>ISO-8859-1</encoding></locale-encoding-mapping> + <locale-encoding-mapping><locale>pl</locale><encoding>ISO-8859-2</encoding></locale-encoding-mapping> + <locale-encoding-mapping><locale>pt</locale><encoding>ISO-8859-1</encoding></locale-encoding-mapping> + <locale-encoding-mapping><locale>ro</locale><encoding>ISO-8859-2</encoding></locale-encoding-mapping> + <locale-encoding-mapping><locale>ru</locale><encoding>ISO-8859-5</encoding></locale-encoding-mapping> + <locale-encoding-mapping><locale>sh</locale><encoding>ISO-8859-5</encoding></locale-encoding-mapping> + <locale-encoding-mapping><locale>sk</locale><encoding>ISO-8859-2</encoding></locale-encoding-mapping> + <locale-encoding-mapping><locale>sl</locale><encoding>ISO-8859-2</encoding></locale-encoding-mapping> + <locale-encoding-mapping><locale>sq</locale><encoding>ISO-8859-2</encoding></locale-encoding-mapping> + <locale-encoding-mapping><locale>sr</locale><encoding>ISO-8859-5</encoding></locale-encoding-mapping> + <locale-encoding-mapping><locale>sv</locale><encoding>ISO-8859-1</encoding></locale-encoding-mapping> + <locale-encoding-mapping><locale>tr</locale><encoding>ISO-8859-9</encoding></locale-encoding-mapping> + <locale-encoding-mapping><locale>uk</locale><encoding>ISO-8859-5</encoding></locale-encoding-mapping> + <locale-encoding-mapping><locale>zh</locale><encoding>GB2312</encoding></locale-encoding-mapping> + <locale-encoding-mapping><locale>zh_TW</locale><encoding>Big5</encoding></locale-encoding-mapping> + </locale-encoding-mapping-list> + +</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-25 22:49:04
|
Revision: 102 http://jsf4portlets.svn.sourceforge.net/jsf4portlets/?rev=102&view=rev Author: alonsoft Date: 2012-06-25 22:48:57 +0000 (Mon, 25 Jun 2012) Log Message: ----------- just commiting some stuff that doesn't work Modified Paths: -------------- trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/pom.xml trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/webapp/WEB-INF/portlet.xml trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/java/net/sf/jsf4portlets/tck/common/TCKSeleniumTestCase.java Added Paths: ----------- trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/jetty/ Modified: trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/pom.xml =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/pom.xml 2012-06-24 23:07:10 UTC (rev 101) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/pom.xml 2012-06-25 22:48:57 UTC (rev 102) @@ -16,7 +16,7 @@ <properties> <test.jetty.port>9090</test.jetty.port> <test.webapp.source>${basedir}/src/test/webapp</test.webapp.source> - <test.webapp.runtime>${project.build.directory}/${project.artifactId}</test.webapp.runtime> + <test.webapp.runtime>${project.build.directory}/${project.build.finalName}</test.webapp.runtime> <selenium.version>2.24.1</selenium.version> </properties> @@ -54,6 +54,7 @@ <webXml>${project.build.directory}/pluto-resources/web.xml</webXml> <webAppConfig> <contextPath>/${project.artifactId}</contextPath> + <defaultsDescriptor>/WEB-INF/jetty-pluto-web-default.xml</defaultsDescriptor> </webAppConfig> <systemProperties> <systemProperty> @@ -242,6 +243,12 @@ <version>${selenium.version}</version> <scope>test</scope> </dependency> + <dependency> + <groupId>org.seleniumhq.selenium</groupId> + <artifactId>selenium-firefox-driver</artifactId> + <version>${selenium.version}</version> + <scope>test</scope> + </dependency> </dependencies> <profiles> @@ -268,6 +275,9 @@ <goals> <goal>xvfb</goal> </goals> + <configuration> + <display>:2</display> + </configuration> </execution> </executions> </plugin> Modified: trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/webapp/WEB-INF/portlet.xml =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/webapp/WEB-INF/portlet.xml 2012-06-24 23:07:10 UTC (rev 101) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/webapp/WEB-INF/portlet.xml 2012-06-25 22:48:57 UTC (rev 102) @@ -16,6 +16,7 @@ <supports> <mime-type>text/html</mime-type> + <portlet-mode>VIEW</portlet-mode> </supports> <portlet-info> @@ -34,6 +35,7 @@ <supports> <mime-type>text/html</mime-type> + <portlet-mode>VIEW</portlet-mode> </supports> <portlet-info> Modified: trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/java/net/sf/jsf4portlets/tck/common/TCKSeleniumTestCase.java =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/java/net/sf/jsf4portlets/tck/common/TCKSeleniumTestCase.java 2012-06-24 23:07:10 UTC (rev 101) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/java/net/sf/jsf4portlets/tck/common/TCKSeleniumTestCase.java 2012-06-25 22:48:57 UTC (rev 102) @@ -3,6 +3,8 @@ import org.junit.After; import org.junit.Before; import org.openqa.selenium.WebDriver; +import org.openqa.selenium.firefox.FirefoxDriver; +import org.openqa.selenium.firefox.FirefoxProfile; import org.openqa.selenium.remote.DesiredCapabilities; import org.openqa.selenium.remote.RemoteWebDriver; @@ -34,6 +36,12 @@ baseUrl.append("http://").append(serverHost).append(":").append(serverPort); baseUrl.append("/wd/hub"); + FirefoxProfile firefox = new FirefoxProfile(); + firefox.setEnableNativeEvents(true); + + DesiredCapabilities firefoxCapability = DesiredCapabilities.firefox(); + firefoxCapability.setCapability(FirefoxDriver.PROFILE, firefox); + webDriver = new RemoteWebDriver(new URL(baseUrl.toString()), DesiredCapabilities.firefox()); } @@ -47,7 +55,7 @@ if (testName == null) { testName = getClass().getSimpleName(); if (testName.endsWith("ITCase")) { - testName = testName.substring(0, testName.length() - "Test".length()); + testName = testName.substring(0, testName.length() - "ITCase".length()); } } return testName; @@ -59,7 +67,7 @@ StringBuilder baseUrl = new StringBuilder(); baseUrl.append("http://").append(serverHost).append(":").append(httpPort); - baseUrl.append("/TCKPortal/PlutoInvoker/jsf4portlets-").append(getTestName().toLowerCase()).append("/"); + baseUrl.append("/pluto/portal").append(getTestName().toLowerCase()).append("/"); return baseUrl.toString(); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <alo...@us...> - 2012-06-24 23:07:17
|
Revision: 101 http://jsf4portlets.svn.sourceforge.net/jsf4portlets/?rev=101&view=rev Author: alonsoft Date: 2012-06-24 23:07:10 +0000 (Sun, 24 Jun 2012) Log Message: ----------- se acabo por hoy Modified Paths: -------------- trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/pom.xml trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/java/net/sf/jsf4portlets/tck/common/TCKSeleniumTestCase.java trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/java/net/sf/jsf4portlets/tck/test/Chapter4_2ITCase.java Modified: trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/pom.xml =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/pom.xml 2012-06-24 22:38:25 UTC (rev 100) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/pom.xml 2012-06-24 23:07:10 UTC (rev 101) @@ -15,9 +15,10 @@ <properties> <test.jetty.port>9090</test.jetty.port> - <test.webapp.source>${basedir}/src/test/webapp</test.webapp.source> <test.webapp.runtime>${project.build.directory}/${project.artifactId}</test.webapp.runtime> + + <selenium.version>2.24.1</selenium.version> </properties> <build> @@ -232,9 +233,15 @@ <dependency> <groupId>org.seleniumhq.selenium</groupId> <artifactId>selenium-java</artifactId> - <version>2.24.1</version> + <version>${selenium.version}</version> <scope>test</scope> </dependency> + <dependency> + <groupId>org.seleniumhq.selenium</groupId> + <artifactId>selenium-remote-driver</artifactId> + <version>${selenium.version}</version> + <scope>test</scope> + </dependency> </dependencies> <profiles> Modified: trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/java/net/sf/jsf4portlets/tck/common/TCKSeleniumTestCase.java =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/java/net/sf/jsf4portlets/tck/common/TCKSeleniumTestCase.java 2012-06-24 22:38:25 UTC (rev 100) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/java/net/sf/jsf4portlets/tck/common/TCKSeleniumTestCase.java 2012-06-24 23:07:10 UTC (rev 101) @@ -1,11 +1,13 @@ package net.sf.jsf4portlets.tck.common; -import com.thoughtworks.selenium.DefaultSelenium; -import com.thoughtworks.selenium.Selenium; -import net.sf.jsf4portlets.tck.TCKConstants; import org.junit.After; import org.junit.Before; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.remote.DesiredCapabilities; +import org.openqa.selenium.remote.RemoteWebDriver; +import java.net.URL; + public abstract class TCKSeleniumTestCase { private static final String PROPERTY_PREFIX = "jsf4portlets.test.selenium."; @@ -21,27 +23,24 @@ public static final String DEFAULT_BROWSER_START_COMMAND = "firefox"; private String testName; - protected Selenium selenium; + protected WebDriver webDriver; @Before - public void initSelenium() { + public void initSelenium() throws Exception { String serverHost = System.getProperty(SERVER_HOST, DEFAULT_SERVER_HOST); int serverPort = Integer.valueOf(System.getProperty(SERVER_PORT, DEFAULT_SERVER_PORT)); - int httpPort = Integer.valueOf(System.getProperty(HTTP_PORT, DEFAULT_HTTP_PORT)); - String browserStartCmd = System.getProperty(BROWSER_START_COMMAND, DEFAULT_BROWSER_START_COMMAND); StringBuilder baseUrl = new StringBuilder(); - baseUrl.append("http://").append(serverHost).append(":").append(httpPort); - baseUrl.append("/TCKPortal/PlutoInvoker/jsf4portlets-").append(getTestName().toLowerCase()).append("/"); + baseUrl.append("http://").append(serverHost).append(":").append(serverPort); + baseUrl.append("/wd/hub"); - selenium = new DefaultSelenium(serverHost, serverPort, browserStartCmd, baseUrl.toString()); - selenium.start(); + webDriver = new RemoteWebDriver(new URL(baseUrl.toString()), DesiredCapabilities.firefox()); } @After public void stopSelenium() { - selenium.stop(); - selenium = null; + webDriver.close(); + webDriver = null; } protected String getTestName() { @@ -54,4 +53,14 @@ return testName; } + protected String getPortletUrl() { + int httpPort = Integer.valueOf(System.getProperty(HTTP_PORT, DEFAULT_HTTP_PORT)); + String serverHost = System.getProperty(SERVER_HOST, DEFAULT_SERVER_HOST); + + StringBuilder baseUrl = new StringBuilder(); + baseUrl.append("http://").append(serverHost).append(":").append(httpPort); + baseUrl.append("/TCKPortal/PlutoInvoker/jsf4portlets-").append(getTestName().toLowerCase()).append("/"); + return baseUrl.toString(); + } + } Modified: trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/java/net/sf/jsf4portlets/tck/test/Chapter4_2ITCase.java =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/java/net/sf/jsf4portlets/tck/test/Chapter4_2ITCase.java 2012-06-24 22:38:25 UTC (rev 100) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/java/net/sf/jsf4portlets/tck/test/Chapter4_2ITCase.java 2012-06-24 23:07:10 UTC (rev 101) @@ -7,7 +7,7 @@ @Test public void contextIsInitialized() { - selenium.open(""); + webDriver.get(getPortletUrl()); } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <alo...@us...> - 2012-06-24 22:38:31
|
Revision: 100 http://jsf4portlets.svn.sourceforge.net/jsf4portlets/?rev=100&view=rev Author: alonsoft Date: 2012-06-24 22:38:25 +0000 (Sun, 24 Jun 2012) Log Message: ----------- enabling teamcity to inject the port for the tck tests Modified Paths: -------------- trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/java/net/sf/jsf4portlets/tck/common/TCKSeleniumTestCase.java Modified: trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/java/net/sf/jsf4portlets/tck/common/TCKSeleniumTestCase.java =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/java/net/sf/jsf4portlets/tck/common/TCKSeleniumTestCase.java 2012-06-24 22:37:57 UTC (rev 99) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/java/net/sf/jsf4portlets/tck/common/TCKSeleniumTestCase.java 2012-06-24 22:38:25 UTC (rev 100) @@ -8,7 +8,7 @@ public abstract class TCKSeleniumTestCase { - private static final String PROPERTY_PREFIX = TCKConstants.TCK_PREFIX + "test.selenium."; + private static final String PROPERTY_PREFIX = "jsf4portlets.test.selenium."; public static final String BROWSER_START_COMMAND = PROPERTY_PREFIX + "browser.cmd"; public static final String HTTP_PORT = PROPERTY_PREFIX + "http.port"; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <alo...@us...> - 2012-06-24 22:38:03
|
Revision: 99 http://jsf4portlets.svn.sourceforge.net/jsf4portlets/?rev=99&view=rev Author: alonsoft Date: 2012-06-24 22:37:57 +0000 (Sun, 24 Jun 2012) Log Message: ----------- enabling teamcity to inject the port for the tck tests Modified Paths: -------------- trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/pom.xml Modified: trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/pom.xml =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/pom.xml 2012-06-24 21:34:43 UTC (rev 98) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/pom.xml 2012-06-24 22:37:57 UTC (rev 99) @@ -15,6 +15,7 @@ <properties> <test.jetty.port>9090</test.jetty.port> + <test.webapp.source>${basedir}/src/test/webapp</test.webapp.source> <test.webapp.runtime>${project.build.directory}/${project.artifactId}</test.webapp.runtime> </properties> @@ -126,7 +127,7 @@ <version>2.6</version> <configuration> <systemProperties> - <net.sf.jsf4portlets.tck.test.selenium.http.port>${test.jetty.port}</net.sf.jsf4portlets.tck.test.selenium.http.port> + <jsf4portlets.test.selenium.http.port>${test.jetty.port}</jsf4portlets.test.selenium.http.port> </systemProperties> </configuration> <executions> @@ -245,6 +246,9 @@ <value>true</value> </property> </activation> + <properties> + <test.jetty.port>${teamcity.jetty.port}</test.jetty.port> + </properties> <build> <plugins> <plugin> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <alo...@us...> - 2012-06-24 21:34:49
|
Revision: 98 http://jsf4portlets.svn.sourceforge.net/jsf4portlets/?rev=98&view=rev Author: alonsoft Date: 2012-06-24 21:34:43 +0000 (Sun, 24 Jun 2012) Log Message: ----------- testing with a different port Modified Paths: -------------- trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/pom.xml Modified: trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/pom.xml =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/pom.xml 2012-06-24 21:22:03 UTC (rev 97) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/pom.xml 2012-06-24 21:34:43 UTC (rev 98) @@ -14,6 +14,7 @@ <packaging>war</packaging> <properties> + <test.jetty.port>9090</test.jetty.port> <test.webapp.source>${basedir}/src/test/webapp</test.webapp.source> <test.webapp.runtime>${project.build.directory}/${project.artifactId}</test.webapp.runtime> </properties> @@ -60,6 +61,12 @@ </systemProperties> <stopPort>9966</stopPort> <stopKey>maven</stopKey> + <connectors> + <connector implementation="org.mortbay.jetty.nio.SelectChannelConnector"> + <port>${test.jetty.port}</port> + <maxIdleTime>60000</maxIdleTime> + </connector> + </connectors> </configuration> <executions> <execution> @@ -117,6 +124,11 @@ <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-failsafe-plugin</artifactId> <version>2.6</version> + <configuration> + <systemProperties> + <net.sf.jsf4portlets.tck.test.selenium.http.port>${test.jetty.port}</net.sf.jsf4portlets.tck.test.selenium.http.port> + </systemProperties> + </configuration> <executions> <execution> <goals> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <alo...@us...> - 2012-06-24 21:22:09
|
Revision: 97 http://jsf4portlets.svn.sourceforge.net/jsf4portlets/?rev=97&view=rev Author: alonsoft Date: 2012-06-24 21:22:03 +0000 (Sun, 24 Jun 2012) Log Message: ----------- first step with selenium tests Modified Paths: -------------- trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/pom.xml trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/webapp/WEB-INF/portlet.xml trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/java/net/sf/jsf4portlets/tck/common/TCKSeleniumTestCase.java Added Paths: ----------- trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/java/net/sf/jsf4portlets/tck/portlet/ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/java/net/sf/jsf4portlets/tck/portlet/Chapter4_2Portlet.java trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/java/net/sf/jsf4portlets/tck/test/Chapter4_2ITCase.java Modified: trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/pom.xml =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/pom.xml 2012-06-24 20:33:48 UTC (rev 96) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/pom.xml 2012-06-24 21:22:03 UTC (rev 97) @@ -55,7 +55,7 @@ <systemProperties> <systemProperty> <name>org.apache.pluto.embedded.portletIds</name> - <value>jsf4portlets-chapter3_2</value> + <value>jsf4portlets-chapter3_2,jsf4portlets-chapter4_2</value> </systemProperty> </systemProperties> <stopPort>9966</stopPort> @@ -113,6 +113,19 @@ </execution> </executions> </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-failsafe-plugin</artifactId> + <version>2.6</version> + <executions> + <execution> + <goals> + <goal>integration-test</goal> + <goal>verify</goal> + </goals> + </execution> + </executions> + </plugin> </plugins> </build> Added: trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/java/net/sf/jsf4portlets/tck/portlet/Chapter4_2Portlet.java =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/java/net/sf/jsf4portlets/tck/portlet/Chapter4_2Portlet.java (rev 0) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/java/net/sf/jsf4portlets/tck/portlet/Chapter4_2Portlet.java 2012-06-24 21:22:03 UTC (rev 97) @@ -0,0 +1,4 @@ +package net.sf.jsf4portlets.tck.portlet; + +public class Chapter4_2Portlet extends TCKFacesPortlet { +} Modified: trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/webapp/WEB-INF/portlet.xml =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/webapp/WEB-INF/portlet.xml 2012-06-24 20:33:48 UTC (rev 96) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/webapp/WEB-INF/portlet.xml 2012-06-24 21:22:03 UTC (rev 97) @@ -23,4 +23,22 @@ </portlet-info> </portlet> + <portlet> + <portlet-name>jsf4portlets-chapter4_2</portlet-name> + <portlet-class>net.sf.jsf4portlets.tck.portlet.Chapter4_2Portlet</portlet-class> + + <init-param> + <name>javax.portlet.faces.defaultViewId.view</name> + <value>/test/chapter4_2.jsp</value> + </init-param> + + <supports> + <mime-type>text/html</mime-type> + </supports> + + <portlet-info> + <title>Chapter 4.2</title> + </portlet-info> + </portlet> + </portlet-app> Modified: trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/java/net/sf/jsf4portlets/tck/common/TCKSeleniumTestCase.java =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/java/net/sf/jsf4portlets/tck/common/TCKSeleniumTestCase.java 2012-06-24 20:33:48 UTC (rev 96) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/java/net/sf/jsf4portlets/tck/common/TCKSeleniumTestCase.java 2012-06-24 21:22:03 UTC (rev 97) @@ -3,40 +3,55 @@ import com.thoughtworks.selenium.DefaultSelenium; import com.thoughtworks.selenium.Selenium; import net.sf.jsf4portlets.tck.TCKConstants; -import org.junit.AfterClass; -import org.junit.BeforeClass; +import org.junit.After; +import org.junit.Before; public abstract class TCKSeleniumTestCase { private static final String PROPERTY_PREFIX = TCKConstants.TCK_PREFIX + "test.selenium."; - public static final String BROWSER_START_COMMAND = PROPERTY_PREFIX + ".browser.cmd"; - public static final String BROWSER_URL = PROPERTY_PREFIX + ".browser.url"; + public static final String BROWSER_START_COMMAND = PROPERTY_PREFIX + "browser.cmd"; + public static final String HTTP_PORT = PROPERTY_PREFIX + "http.port"; public static final String SERVER_HOST = PROPERTY_PREFIX + "server.host"; public static final String SERVER_PORT = PROPERTY_PREFIX + "server.port"; public static final String DEFAULT_SERVER_HOST = "localhost"; - public static final String DEFAULT_SERVER_PORT = "8080"; + public static final String DEFAULT_SERVER_PORT = "4444"; + public static final String DEFAULT_HTTP_PORT = "8080"; public static final String DEFAULT_BROWSER_START_COMMAND = "firefox"; - public static final String DEFAULT_BROWSER_URL = "http://localhost:8080/TCKPortal"; - protected static Selenium selenium; + private String testName; + protected Selenium selenium; - @BeforeClass - public static void initSelenium() { + @Before + public void initSelenium() { String serverHost = System.getProperty(SERVER_HOST, DEFAULT_SERVER_HOST); int serverPort = Integer.valueOf(System.getProperty(SERVER_PORT, DEFAULT_SERVER_PORT)); + int httpPort = Integer.valueOf(System.getProperty(HTTP_PORT, DEFAULT_HTTP_PORT)); String browserStartCmd = System.getProperty(BROWSER_START_COMMAND, DEFAULT_BROWSER_START_COMMAND); - String browserUrl = System.getProperty(BROWSER_URL, DEFAULT_BROWSER_URL); - selenium = new DefaultSelenium(serverHost, serverPort, browserStartCmd, browserUrl); + StringBuilder baseUrl = new StringBuilder(); + baseUrl.append("http://").append(serverHost).append(":").append(httpPort); + baseUrl.append("/TCKPortal/PlutoInvoker/jsf4portlets-").append(getTestName().toLowerCase()).append("/"); + + selenium = new DefaultSelenium(serverHost, serverPort, browserStartCmd, baseUrl.toString()); selenium.start(); } - @AfterClass - public static void stopSelenium() { + @After + public void stopSelenium() { selenium.stop(); selenium = null; } + protected String getTestName() { + if (testName == null) { + testName = getClass().getSimpleName(); + if (testName.endsWith("ITCase")) { + testName = testName.substring(0, testName.length() - "Test".length()); + } + } + return testName; + } + } Added: trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/java/net/sf/jsf4portlets/tck/test/Chapter4_2ITCase.java =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/java/net/sf/jsf4portlets/tck/test/Chapter4_2ITCase.java (rev 0) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/java/net/sf/jsf4portlets/tck/test/Chapter4_2ITCase.java 2012-06-24 21:22:03 UTC (rev 97) @@ -0,0 +1,13 @@ +package net.sf.jsf4portlets.tck.test; + +import net.sf.jsf4portlets.tck.common.TCKSeleniumTestCase; +import org.junit.Test; + +public class Chapter4_2ITCase extends TCKSeleniumTestCase { + + @Test + public void contextIsInitialized() { + selenium.open(""); + } + +} This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <alo...@us...> - 2012-06-24 20:33:54
|
Revision: 96 http://jsf4portlets.svn.sourceforge.net/jsf4portlets/?rev=96&view=rev Author: alonsoft Date: 2012-06-24 20:33:48 +0000 (Sun, 24 Jun 2012) Log Message: ----------- jetty and selenium at launched during build Modified Paths: -------------- trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/portlet/TCKFacesPortlet.java trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/pom.xml trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/webapp/WEB-INF/portlet.xml Modified: trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/portlet/TCKFacesPortlet.java =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/portlet/TCKFacesPortlet.java 2012-06-24 20:10:21 UTC (rev 95) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/portlet/TCKFacesPortlet.java 2012-06-24 20:33:48 UTC (rev 96) @@ -9,7 +9,7 @@ public class TCKFacesPortlet extends GenericFacesPortlet { - public static final String SEPARATOR = ":"; + public static final String SEPARATOR = "-"; private String testBeanName; private String testName; @@ -20,7 +20,7 @@ String portletName = portletConfig.getPortletName(); if (portletName.indexOf(SEPARATOR) < 0) { - throw new UnavailableException("Invalid portlet name."); + throw new UnavailableException("Invalid portlet name: " + portletName); } String[] parts = portletName.split(SEPARATOR); Modified: trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/pom.xml =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/pom.xml 2012-06-24 20:10:21 UTC (rev 95) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/pom.xml 2012-06-24 20:33:48 UTC (rev 96) @@ -55,7 +55,7 @@ <systemProperties> <systemProperty> <name>org.apache.pluto.embedded.portletIds</name> - <value>jsf4portlets:chapter3_2</value> + <value>jsf4portlets-chapter3_2</value> </systemProperty> </systemProperties> <stopPort>9966</stopPort> @@ -120,6 +120,7 @@ <dependency> <groupId>javax.el</groupId> <artifactId>el-api</artifactId> + <scope>compile</scope> </dependency> <dependency> <groupId>javax.servlet</groupId> @@ -132,19 +133,23 @@ <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> + <scope>compile</scope> </dependency> <dependency> <groupId>net.sf.jsf4portlets</groupId> @@ -163,15 +168,27 @@ <groupId>org.mortbay.jetty</groupId> <artifactId>jetty</artifactId> <version>${jetty.version}</version> - <scope>test</scope> + <scope>runtime</scope> </dependency> <dependency> <groupId>org.apache.pluto</groupId> + <artifactId>pluto-container</artifactId> + <version>${pluto.version}</version> + <scope>runtime</scope> + </dependency> + <dependency> + <groupId>org.apache.pluto</groupId> <artifactId>pluto-portal-driver</artifactId> <version>${pluto.version}</version> - <scope>test</scope> + <scope>runtime</scope> </dependency> <dependency> + <groupId>org.apache.pluto</groupId> + <artifactId>pluto-portal-driver-impl</artifactId> + <version>${pluto.version}</version> + <scope>runtime</scope> + </dependency> + <dependency> <groupId>com.bekk.boss</groupId> <artifactId>maven-jetty-pluto-embedded</artifactId> <version>1.0.1</version> Modified: trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/webapp/WEB-INF/portlet.xml =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/webapp/WEB-INF/portlet.xml 2012-06-24 20:10:21 UTC (rev 95) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/webapp/WEB-INF/portlet.xml 2012-06-24 20:33:48 UTC (rev 96) @@ -6,7 +6,7 @@ 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-name>jsf4portlets-chapter3_2</portlet-name> <portlet-class>net.sf.jsf4portlets.tck.portlet.TCKFacesPortlet</portlet-class> <init-param> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <alo...@us...> - 2012-06-24 20:10:27
|
Revision: 95 http://jsf4portlets.svn.sourceforge.net/jsf4portlets/?rev=95&view=rev Author: alonsoft Date: 2012-06-24 20:10:21 +0000 (Sun, 24 Jun 2012) Log Message: ----------- added selenium Modified Paths: -------------- trunk/jsf4portlets-tck/jsf4portlets-tck-core/pom.xml trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/pom.xml trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/java/net/sf/jsf4portlets/tck/test/Chapter3_1Test.java Added Paths: ----------- trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/java/net/sf/jsf4portlets/tck/common/ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/java/net/sf/jsf4portlets/tck/common/TCKSeleniumTestCase.java Modified: trunk/jsf4portlets-tck/jsf4portlets-tck-core/pom.xml =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-core/pom.xml 2012-06-24 19:30:17 UTC (rev 94) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-core/pom.xml 2012-06-24 20:10:21 UTC (rev 95) @@ -64,10 +64,12 @@ <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> + <scope>compile</scope> </dependency> <dependency> <groupId>org.hamcrest</groupId> <artifactId>hamcrest-all</artifactId> + <scope>compile</scope> </dependency> </dependencies> </project> \ No newline at end of file Modified: trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/pom.xml =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/pom.xml 2012-06-24 19:30:17 UTC (rev 94) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/pom.xml 2012-06-24 20:10:21 UTC (rev 95) @@ -20,6 +20,15 @@ <build> <finalName>${project.artifactId}</finalName> + <pluginManagement> + <plugins> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>selenium-maven-plugin</artifactId> + <version>2.3</version> + </plugin> + </plugins> + </pluginManagement> <plugins> <plugin> <groupId>org.apache.pluto</groupId> @@ -49,7 +58,29 @@ <value>jsf4portlets:chapter3_2</value> </systemProperty> </systemProperties> + <stopPort>9966</stopPort> + <stopKey>maven</stopKey> </configuration> + <executions> + <execution> + <id>start-jetty</id> + <phase>pre-integration-test</phase> + <goals> + <goal>run</goal> + </goals> + <configuration> + <scanIntervalSeconds>0</scanIntervalSeconds> + <daemon>true</daemon> + </configuration> + </execution> + <execution> + <id>stop-jetty</id> + <phase>post-integration-test</phase> + <goals> + <goal>stop</goal> + </goals> + </execution> + </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> @@ -62,7 +93,6 @@ <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>selenium-maven-plugin</artifactId> - <version>2.3</version> <executions> <execution> <id>start-selenium</id> @@ -90,32 +120,26 @@ <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> @@ -162,5 +186,40 @@ <groupId>org.hamcrest</groupId> <artifactId>hamcrest-all</artifactId> </dependency> + <dependency> + <groupId>org.seleniumhq.selenium</groupId> + <artifactId>selenium-java</artifactId> + <version>2.24.1</version> + <scope>test</scope> + </dependency> </dependencies> + + <profiles> + <profile> + <id>teamcity-build</id> + <activation> + <property> + <name>teamcity.running</name> + <value>true</value> + </property> + </activation> + <build> + <plugins> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>selenium-maven-plugin</artifactId> + <executions> + <execution> + <id>start-xvfb</id> + <phase>pre-integration-test</phase> + <goals> + <goal>xvfb</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + </profile> + </profiles> </project> \ No newline at end of file Added: trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/java/net/sf/jsf4portlets/tck/common/TCKSeleniumTestCase.java =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/java/net/sf/jsf4portlets/tck/common/TCKSeleniumTestCase.java (rev 0) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/java/net/sf/jsf4portlets/tck/common/TCKSeleniumTestCase.java 2012-06-24 20:10:21 UTC (rev 95) @@ -0,0 +1,42 @@ +package net.sf.jsf4portlets.tck.common; + +import com.thoughtworks.selenium.DefaultSelenium; +import com.thoughtworks.selenium.Selenium; +import net.sf.jsf4portlets.tck.TCKConstants; +import org.junit.AfterClass; +import org.junit.BeforeClass; + +public abstract class TCKSeleniumTestCase { + + private static final String PROPERTY_PREFIX = TCKConstants.TCK_PREFIX + "test.selenium."; + + public static final String BROWSER_START_COMMAND = PROPERTY_PREFIX + ".browser.cmd"; + public static final String BROWSER_URL = PROPERTY_PREFIX + ".browser.url"; + public static final String SERVER_HOST = PROPERTY_PREFIX + "server.host"; + public static final String SERVER_PORT = PROPERTY_PREFIX + "server.port"; + + public static final String DEFAULT_SERVER_HOST = "localhost"; + public static final String DEFAULT_SERVER_PORT = "8080"; + public static final String DEFAULT_BROWSER_START_COMMAND = "firefox"; + public static final String DEFAULT_BROWSER_URL = "http://localhost:8080/TCKPortal"; + + protected static Selenium selenium; + + @BeforeClass + public static void initSelenium() { + String serverHost = System.getProperty(SERVER_HOST, DEFAULT_SERVER_HOST); + int serverPort = Integer.valueOf(System.getProperty(SERVER_PORT, DEFAULT_SERVER_PORT)); + String browserStartCmd = System.getProperty(BROWSER_START_COMMAND, DEFAULT_BROWSER_START_COMMAND); + String browserUrl = System.getProperty(BROWSER_URL, DEFAULT_BROWSER_URL); + + selenium = new DefaultSelenium(serverHost, serverPort, browserStartCmd, browserUrl); + selenium.start(); + } + + @AfterClass + public static void stopSelenium() { + selenium.stop(); + selenium = null; + } + +} Modified: trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/java/net/sf/jsf4portlets/tck/test/Chapter3_1Test.java =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/java/net/sf/jsf4portlets/tck/test/Chapter3_1Test.java 2012-06-24 19:30:17 UTC (rev 94) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/java/net/sf/jsf4portlets/tck/test/Chapter3_1Test.java 2012-06-24 20:10:21 UTC (rev 95) @@ -4,8 +4,8 @@ import javax.portlet.faces.GenericFacesPortlet; -import static org.junit.Assert.*; -import static org.hamcrest.Matchers.*; +import static org.hamcrest.Matchers.equalTo; +import static org.junit.Assert.assertThat; public class Chapter3_1Test { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <alo...@us...> - 2012-06-24 19:30:24
|
Revision: 94 http://jsf4portlets.svn.sourceforge.net/jsf4portlets/?rev=94&view=rev Author: alonsoft Date: 2012-06-24 19:30:17 +0000 (Sun, 24 Jun 2012) Log Message: ----------- recovering missed code Modified Paths: -------------- trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/pom.xml Added Paths: ----------- trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/ trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/TCKConstants.java trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/common/ 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/ trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/faces/application/ trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/faces/application/TCKApplication.java trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/faces/application/TCKApplicationFactory.java trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/faces/application/TCKViewHandler.java trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/faces/context/ trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/faces/context/ELResolveMap.java 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/TCKFacesContext.java trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/faces/context/TCKFacesContextFactory.java trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/faces/lifecycle/ trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/faces/lifecycle/TCKLifecycle.java trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/faces/lifecycle/TCKLifecycleFactory.java trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/portlet/ trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/portlet/TCKFacesPortlet.java trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/util/ trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/util/ELUtil.java trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/util/StringUtil.java Added: trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/TCKConstants.java =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/TCKConstants.java (rev 0) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/TCKConstants.java 2012-06-24 19:30:17 UTC (rev 94) @@ -0,0 +1,14 @@ +package net.sf.jsf4portlets.tck; + +import net.sf.jsf4portlets.BridgeConstants; + +public class TCKConstants { + public static final String TCK_PREFIX = BridgeConstants.J4P_PREFIX + "tck."; + + 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/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 (rev 0) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/common/TCKTestBean.java 2012-06-24 19:30:17 UTC (rev 94) @@ -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; + } +} \ No newline at end of file Added: trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/faces/application/TCKApplication.java =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/faces/application/TCKApplication.java (rev 0) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/faces/application/TCKApplication.java 2012-06-24 19:30:17 UTC (rev 94) @@ -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); + } +} \ No newline at end of file Added: trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/faces/application/TCKApplicationFactory.java =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/faces/application/TCKApplicationFactory.java (rev 0) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/faces/application/TCKApplicationFactory.java 2012-06-24 19:30:17 UTC (rev 94) @@ -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; + } +} \ No newline at end of file Added: trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/faces/application/TCKViewHandler.java =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/faces/application/TCKViewHandler.java (rev 0) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/faces/application/TCKViewHandler.java 2012-06-24 19:30:17 UTC (rev 94) @@ -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; + } +} \ No newline at end of file Added: trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/faces/context/ELResolveMap.java =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/faces/context/ELResolveMap.java (rev 0) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/faces/context/ELResolveMap.java 2012-06-24 19:30:17 UTC (rev 94) @@ -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; + +public 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/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 (rev 0) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/faces/context/TCKExternalContext.java 2012-06-24 19:30:17 UTC (rev 94) @@ -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; + } + +} \ No newline at end of file Added: trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/faces/context/TCKFacesContext.java =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/faces/context/TCKFacesContext.java (rev 0) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/faces/context/TCKFacesContext.java 2012-06-24 19:30:17 UTC (rev 94) @@ -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); + } +} \ No newline at end of file Added: trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/faces/context/TCKFacesContextFactory.java =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/faces/context/TCKFacesContextFactory.java (rev 0) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/faces/context/TCKFacesContextFactory.java 2012-06-24 19:30:17 UTC (rev 94) @@ -0,0 +1,33 @@ +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; +import javax.portlet.PortletContext; +import javax.portlet.PortletRequest; +import javax.portlet.PortletResponse; + +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 { + 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); + } +} \ No newline at end of file Added: trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/faces/lifecycle/TCKLifecycle.java =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/faces/lifecycle/TCKLifecycle.java (rev 0) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/faces/lifecycle/TCKLifecycle.java 2012-06-24 19:30:17 UTC (rev 94) @@ -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); + } +} \ No newline at end of file Added: trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/faces/lifecycle/TCKLifecycleFactory.java =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/faces/lifecycle/TCKLifecycleFactory.java (rev 0) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/faces/lifecycle/TCKLifecycleFactory.java 2012-06-24 19:30:17 UTC (rev 94) @@ -0,0 +1,34 @@ +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; + +public class TCKLifecycleFactory extends LifecycleFactory { + + 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); + } + + @Override + public Lifecycle getLifecycle(String lifecycleId) { + return delegate.getLifecycle(lifecycleId); + } + + @Override + public Iterator<String> getLifecycleIds() { + return delegate.getLifecycleIds(); + } +} \ No newline at end of file Added: trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/portlet/TCKFacesPortlet.java =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/portlet/TCKFacesPortlet.java (rev 0) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/portlet/TCKFacesPortlet.java 2012-06-24 19:30:17 UTC (rev 94) @@ -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.TEST_BEAN_NAME, testBeanName); + request.setAttribute(TCKConstants.TEST_NAME, testName); + } + +} \ No newline at end of file Added: trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/util/ELUtil.java =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/util/ELUtil.java (rev 0) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/util/ELUtil.java 2012-06-24 19:30:17 UTC (rev 94) @@ -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/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/util/StringUtil.java =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/util/StringUtil.java (rev 0) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-core/src/main/java/net/sf/jsf4portlets/tck/util/StringUtil.java 2012-06-24 19:30:17 UTC (rev 94) @@ -0,0 +1,50 @@ +package net.sf.jsf4portlets.tck.util; + +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() { } + +} Modified: trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/pom.xml =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/pom.xml 2012-06-24 18:06:57 UTC (rev 93) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/pom.xml 2012-06-24 19:30:17 UTC (rev 94) @@ -59,6 +59,30 @@ <webXml>${project.build.directory}/pluto-resources/web.xml</webXml> </configuration> </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>selenium-maven-plugin</artifactId> + <version>2.3</version> + <executions> + <execution> + <id>start-selenium</id> + <phase>pre-integration-test</phase> + <goals> + <goal>start-server</goal> + </goals> + <configuration> + <background>true</background> + </configuration> + </execution> + <execution> + <id>stop-selenium</id> + <phase>post-integration-test</phase> + <goals> + <goal>stop-server</goal> + </goals> + </execution> + </executions> + </plugin> </plugins> </build> 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:07:03
|
Revision: 93 http://jsf4portlets.svn.sourceforge.net/jsf4portlets/?rev=93&view=rev Author: alonsoft Date: 2012-06-24 18:06:57 +0000 (Sun, 24 Jun 2012) Log Message: ----------- tck splitted for ease development Removed Paths: ------------- trunk/jsf4portlets-tck/src/ 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-24 17:55:19
|
Revision: 91 http://jsf4portlets.svn.sourceforge.net/jsf4portlets/?rev=91&view=rev Author: alonsoft Date: 2012-06-24 17:55:12 +0000 (Sun, 24 Jun 2012) Log Message: ----------- tck splitted for ease development Modified Paths: -------------- trunk/jsf4portlets-tck/pom.xml Added Paths: ----------- trunk/jsf4portlets-tck/jsf4portlets-tck-core/ trunk/jsf4portlets-tck/jsf4portlets-tck-core/pom.xml trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/pom.xml trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/java/ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/java/net/ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/java/net/sf/ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/java/net/sf/jsf4portlets/ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/java/net/sf/jsf4portlets/tck/ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/java/net/sf/jsf4portlets/tck/beans/ 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/webapp/ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/webapp/META-INF/ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/webapp/META-INF/TCKPorletApplication.xml trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/webapp/WEB-INF/ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/webapp/WEB-INF/faces-config.xml trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/webapp/WEB-INF/portlet.xml trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/webapp/WEB-INF/web.xml trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/webapp/test/ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/java/ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/java/net/ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/java/net/sf/ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/java/net/sf/jsf4portlets/ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/java/net/sf/jsf4portlets/tck/ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/java/net/sf/jsf4portlets/tck/test/ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/java/net/sf/jsf4portlets/tck/test/Chapter3_1Test.java Property changes on: trunk/jsf4portlets-tck/jsf4portlets-tck-core ___________________________________________________________________ Added: svn:ignore + jsf4portlets-tck-core.iml Added: trunk/jsf4portlets-tck/jsf4portlets-tck-core/pom.xml =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-core/pom.xml (rev 0) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-core/pom.xml 2012-06-24 17:55:12 UTC (rev 91) @@ -0,0 +1,73 @@ +<?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-tck</artifactId> + <groupId>net.sf.jsf4portlets</groupId> + <version>1.0-alpha-3-SNAPSHOT</version> + </parent> + <modelVersion>4.0.0</modelVersion> + + <name>JSF 4 Portlets TCK Core</name> + <artifactId>jsf4portlets-tck-core</artifactId> + + <build> + <finalName>${project.artifactId}</finalName> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-compiler-plugin</artifactId> + </plugin> + </plugins> + </build> + + <dependencies> + <dependency> + <groupId>javax.el</groupId> + <artifactId>el-api</artifactId> + </dependency> + <dependency> + <groupId>javax.servlet</groupId> + <artifactId>servlet-api</artifactId> + </dependency> + <dependency> + <groupId>javax.servlet.jsp</groupId> + <artifactId>jsp-api</artifactId> + </dependency> + <dependency> + <groupId>javax.faces</groupId> + <artifactId>jsf-api</artifactId> + </dependency> + <dependency> + <groupId>javax.annotation</groupId> + <artifactId>jsr250-api</artifactId> + </dependency> + <dependency> + <groupId>javax.portlet</groupId> + <artifactId>portlet-api</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-ext</artifactId> + </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 Property changes on: trunk/jsf4portlets-tck/jsf4portlets-tck-webapp ___________________________________________________________________ Added: svn:ignore + jsf4portlets-tck-webapp.iml Added: trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/pom.xml =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/pom.xml (rev 0) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/pom.xml 2012-06-24 17:55:12 UTC (rev 91) @@ -0,0 +1,142 @@ +<?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-tck</artifactId> + <groupId>net.sf.jsf4portlets</groupId> + <version>1.0-alpha-3-SNAPSHOT</version> + </parent> + <modelVersion>4.0.0</modelVersion> + + <name>JSF 4 Portlets TCK Webapp</name> + <artifactId>jsf4portlets-tck-webapp</artifactId> + <packaging>war</packaging> + + <properties> + <test.webapp.source>${basedir}/src/test/webapp</test.webapp.source> + <test.webapp.runtime>${project.build.directory}/${project.artifactId}</test.webapp.runtime> + </properties> + + <build> + <finalName>${project.artifactId}</finalName> + <plugins> + <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> + </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>jsf4portlets:chapter3_2</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> + + <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>net.sf.jsf4portlets</groupId> + <artifactId>jsf4portlets-tck-core</artifactId> + </dependency> + + <dependency> + <groupId>org.mortbay.jetty</groupId> + <artifactId>jetty</artifactId> + <version>${jetty.version}</version> + <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> + <dependency> + <groupId>org.hamcrest</groupId> + <artifactId>hamcrest-all</artifactId> + </dependency> + </dependencies> +</project> \ No newline at end of file Added: 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 (rev 0) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/java/net/sf/jsf4portlets/tck/beans/Chapter3_2Bean.java 2012-06-24 17:55:12 UTC (rev 91) @@ -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; + } +} Added: trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/webapp/META-INF/TCKPorletApplication.xml =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/webapp/META-INF/TCKPorletApplication.xml (rev 0) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/webapp/META-INF/TCKPorletApplication.xml 2012-06-24 17:55:12 UTC (rev 91) @@ -0,0 +1,2 @@ +<Context path="/TCKPortletApplication" + docBase="TCKPortletApplication" crossContext="true"/> \ No newline at end of file Added: trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/webapp/WEB-INF/faces-config.xml =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/webapp/WEB-INF/faces-config.xml (rev 0) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/webapp/WEB-INF/faces-config.xml 2012-06-24 17:55:12 UTC (rev 91) @@ -0,0 +1,19 @@ +<?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> + + <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> Added: trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/webapp/WEB-INF/portlet.xml =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/webapp/WEB-INF/portlet.xml (rev 0) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/webapp/WEB-INF/portlet.xml 2012-06-24 17:55:12 UTC (rev 91) @@ -0,0 +1,26 @@ +<?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> + <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> + + <supports> + <mime-type>text/html</mime-type> + </supports> + + <portlet-info> + <title>Chapter 3.2</title> + </portlet-info> + </portlet> + +</portlet-app> Added: trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/webapp/WEB-INF/web.xml =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/webapp/WEB-INF/web.xml (rev 0) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/main/webapp/WEB-INF/web.xml 2012-06-24 17:55:12 UTC (rev 91) @@ -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> Added: trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/java/net/sf/jsf4portlets/tck/test/Chapter3_1Test.java =================================================================== --- trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/java/net/sf/jsf4portlets/tck/test/Chapter3_1Test.java (rev 0) +++ trunk/jsf4portlets-tck/jsf4portlets-tck-webapp/src/test/java/net/sf/jsf4portlets/tck/test/Chapter3_1Test.java 2012-06-24 17:55:12 UTC (rev 91) @@ -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)); + } + +} Modified: trunk/jsf4portlets-tck/pom.xml =================================================================== --- trunk/jsf4portlets-tck/pom.xml 2012-06-24 17:41:12 UTC (rev 90) +++ trunk/jsf4portlets-tck/pom.xml 2012-06-24 17:55:12 UTC (rev 91) @@ -10,179 +10,53 @@ <modelVersion>4.0.0</modelVersion> <name>JSF 4 Portlets TCK</name> + <artifactId>jsf4portlets-tck</artifactId> + <packaging>pom</packaging> - <properties> - <test.webapp.source>${basedir}/src/test/webapp</test.webapp.source> - <test.webapp.runtime>${project.build.directory}/${project.artifactId}</test.webapp.runtime> + <modules> + <module>jsf4portlets-tck-core</module> + <module>jsf4portlets-tck-webapp</module> + </modules> + <properties> <pluto.version>1.1.7</pluto.version> </properties> <build> - <finalName>${project.artifactId}</finalName> - <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> - <directory>${test.webapp.source}</directory> - </resource> - </resources> - </configuration> - </execution> - </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> - <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}"> - <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> + <pluginManagement> + <plugins> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>build-helper-maven-plugin</artifactId> + <version>1.7</version> + </plugin> + <plugin> + <groupId>org.apache.pluto</groupId> + <artifactId>maven-pluto-plugin</artifactId> + <version>1.1.6</version> + </plugin> + <plugin> + <groupId>org.mortbay.jetty</groupId> + <artifactId>maven-jetty-plugin</artifactId> + <version>${jetty.version}</version> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-war-plugin</artifactId> + <version>2.2</version> + </plugin> + </plugins> + </pluginManagement> </build> - <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>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> - <dependency> - <groupId>org.hamcrest</groupId> - <artifactId>hamcrest-all</artifactId> - </dependency> - </dependencies> + <dependencyManagement> + <dependencies> + <dependency> + <groupId>net.sf.jsf4portlets</groupId> + <artifactId>jsf4portlets-tck-core</artifactId> + <version>${project.version}</version> + </dependency> + </dependencies> + </dependencyManagement> </project> \ No newline at end of file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <alo...@us...> - 2012-06-24 17:41:18
|
Revision: 90 http://jsf4portlets.svn.sourceforge.net/jsf4portlets/?rev=90&view=rev Author: alonsoft Date: 2012-06-24 17:41:12 +0000 (Sun, 24 Jun 2012) Log Message: ----------- tck splitted for ease development Removed Paths: ------------- 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/TCKViewHandler.java trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/util/ELUtil.java trunk/jsf4portlets-tck/src/test/webapp/ Deleted: 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 2012-06-24 16:24:34 UTC (rev 89) +++ trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/application/TCKApplication.java 2012-06-24 17:41:12 UTC (rev 90) @@ -1,255 +0,0 @@ -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); - } -} Deleted: 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 2012-06-24 16:24:34 UTC (rev 89) +++ trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/application/TCKApplicationFactory.java 2012-06-24 17:41:12 UTC (rev 90) @@ -1,28 +0,0 @@ -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; - } -} Deleted: 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 2012-06-24 16:24:34 UTC (rev 89) +++ trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/faces/application/TCKViewHandler.java 2012-06-24 17:41:12 UTC (rev 90) @@ -1,18 +0,0 @@ -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; - } -} Deleted: 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 2012-06-24 16:24:34 UTC (rev 89) +++ trunk/jsf4portlets-tck/src/main/java/net/sf/jsf4portlets/tck/util/ELUtil.java 2012-06-24 17:41:12 UTC (rev 90) @@ -1,35 +0,0 @@ -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() { } - -} This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
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-24 13:41:21
|
Revision: 88 http://jsf4portlets.svn.sourceforge.net/jsf4portlets/?rev=88&view=rev Author: alonsoft Date: 2012-06-24 13:41:15 +0000 (Sun, 24 Jun 2012) Log Message: ----------- fixing the build Modified Paths: -------------- trunk/jsf4portlets-tck/pom.xml Modified: trunk/jsf4portlets-tck/pom.xml =================================================================== --- trunk/jsf4portlets-tck/pom.xml 2012-06-24 13:05:29 UTC (rev 87) +++ trunk/jsf4portlets-tck/pom.xml 2012-06-24 13:41:15 UTC (rev 88) @@ -32,7 +32,9 @@ </goals> <configuration> <resources> - <resource>${test.webapp.source}</resource> + <resource> + <directory>${test.webapp.source}</directory> + </resource> </resources> </configuration> </execution> 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 11:39:44
|
Revision: 86 http://jsf4portlets.svn.sourceforge.net/jsf4portlets/?rev=86&view=rev Author: alonsoft Date: 2012-06-24 11:39:38 +0000 (Sun, 24 Jun 2012) Log Message: ----------- fixing findbugs errors Modified Paths: -------------- trunk/jsf4portlets-impl/src/main/java/net/sf/jsf4portlets/BridgeRenderFilter.java trunk/jsf4portlets-impl/src/main/java/net/sf/jsf4portlets/el/PortletELResolver.java trunk/jsf4portlets-impl/src/main/java/net/sf/jsf4portlets/preference/PreferenceValueList.java trunk/jsf4portlets-impl/src/main/java/net/sf/jsf4portlets/url/URLUtil.java Modified: trunk/jsf4portlets-impl/src/main/java/net/sf/jsf4portlets/BridgeRenderFilter.java =================================================================== --- trunk/jsf4portlets-impl/src/main/java/net/sf/jsf4portlets/BridgeRenderFilter.java 2012-06-23 16:24:11 UTC (rev 85) +++ trunk/jsf4portlets-impl/src/main/java/net/sf/jsf4portlets/BridgeRenderFilter.java 2012-06-24 11:39:38 UTC (rev 86) @@ -182,7 +182,7 @@ @Override public String toString() { - String result = null; + String result = ""; if (null != caw) { result = caw.toString(); } else if (null != basos) { Modified: trunk/jsf4portlets-impl/src/main/java/net/sf/jsf4portlets/el/PortletELResolver.java =================================================================== --- trunk/jsf4portlets-impl/src/main/java/net/sf/jsf4portlets/el/PortletELResolver.java 2012-06-23 16:24:11 UTC (rev 85) +++ trunk/jsf4portlets-impl/src/main/java/net/sf/jsf4portlets/el/PortletELResolver.java 2012-06-24 11:39:38 UTC (rev 86) @@ -48,7 +48,7 @@ public class PortletELResolver extends ELResolver { // Important preserve index (order) between array and constants - public static final String[] IMPLICIT_OBJECTS = new String[] { + static final String[] IMPLICIT_OBJECTS = new String[] { "portletConfig", "portletPreferences", "renderRequest", "renderResponse", "sessionApplicationScope", "sessionPortletScope", }; Modified: trunk/jsf4portlets-impl/src/main/java/net/sf/jsf4portlets/preference/PreferenceValueList.java =================================================================== --- trunk/jsf4portlets-impl/src/main/java/net/sf/jsf4portlets/preference/PreferenceValueList.java 2012-06-23 16:24:11 UTC (rev 85) +++ trunk/jsf4portlets-impl/src/main/java/net/sf/jsf4portlets/preference/PreferenceValueList.java 2012-06-24 11:39:38 UTC (rev 86) @@ -34,8 +34,9 @@ * */ private static final long serialVersionUID = 2047710807262788441L; - private final Preference preference; + private transient final Preference preference; + public PreferenceValueList(final PortletPreferences preferences, final Preference preference) { this(preference, Arrays.asList(preferences.getValues(preference @@ -65,7 +66,7 @@ // add it to the preference if (added) { try { - preference.setValues((java.lang.String[]) this.toArray()); + preference.setValues(this.toArray(new String[this.size()])); } catch (final ReadOnlyException e) { // should never happen } @@ -85,7 +86,7 @@ // add it to the preference try { - preference.setValues((java.lang.String[]) this.toArray()); + preference.setValues(this.toArray(new String[this.size()])); } catch (final ReadOnlyException e) { // should never happen } @@ -101,7 +102,7 @@ // add it to the preference if (added) { try { - preference.setValues((java.lang.String[]) this.toArray()); + preference.setValues(this.toArray(new String[this.size()])); } catch (final ReadOnlyException e) { // should never happen } @@ -120,7 +121,7 @@ // add it to the preference if (added) { try { - preference.setValues((java.lang.String[]) this.toArray()); + preference.setValues(this.toArray(new String[this.size()])); } catch (final ReadOnlyException e) { // should never happen } @@ -153,7 +154,7 @@ // update the preferences try { - preference.setValues((java.lang.String[]) this.toArray()); + preference.setValues(this.toArray(new String[this.size()])); } catch (final ReadOnlyException e) { // should never happen } @@ -169,7 +170,7 @@ // update the preferences try { - preference.setValues((java.lang.String[]) this.toArray()); + preference.setValues(this.toArray(new String[this.size()])); } catch (final ReadOnlyException e) { // should never happen } @@ -187,7 +188,7 @@ // add it to the preference if (added != null) { try { - preference.setValues((java.lang.String[]) this.toArray()); + preference.setValues(this.toArray(new String[this.size()])); } catch (final ReadOnlyException e) { // should never happen } Modified: trunk/jsf4portlets-impl/src/main/java/net/sf/jsf4portlets/url/URLUtil.java =================================================================== --- trunk/jsf4portlets-impl/src/main/java/net/sf/jsf4portlets/url/URLUtil.java 2012-06-23 16:24:11 UTC (rev 85) +++ trunk/jsf4portlets-impl/src/main/java/net/sf/jsf4portlets/url/URLUtil.java 2012-06-24 11:39:38 UTC (rev 86) @@ -68,10 +68,10 @@ while ((i + 1) < relative.length()) { if (relative.charAt(i) != '.') { break; - } else if ("./" == relative.substring(i, (i + 2))) { + } else if ("./".equals(relative.substring(i, (i + 2)))) { i += 2; } else if (((i + 2) < relative.length()) - && ("../" == relative.substring(i, (i + 3)))) { + && ("../".equals(relative.substring(i, (i + 3))))) { i += 3; levels++; } 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-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-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...> - 2011-04-04 09:43:00
|
Revision: 82 http://jsf4portlets.svn.sourceforge.net/jsf4portlets/?rev=82&view=rev Author: alonsoft Date: 2011-04-04 09:42:54 +0000 (Mon, 04 Apr 2011) Log Message: ----------- forcing resources encoding and discarding the "jsf4portlets-ext" module Modified Paths: -------------- trunk/pom.xml Modified: trunk/pom.xml =================================================================== --- trunk/pom.xml 2010-03-26 16:45:06 UTC (rev 81) +++ trunk/pom.xml 2011-04-04 09:42:54 UTC (rev 82) @@ -114,8 +114,9 @@ <modules> <module>jsf4portlets-api</module> <module>jsf4portlets-impl</module> - <module>jsf4portlets-ext</module> + <!--module>jsf4portlets-ext</module--> </modules> + <organization> <name>SourceForge.net</name> <url>http://www.sourceforge.net</url> @@ -336,6 +337,8 @@ </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> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |