Author: amarkhel
Date: 2009-11-13 08:21:50 -0500 (Fri, 13 Nov 2009)
New Revision: 15876
Added:
branches/sandbox/3.3.X_JSF2/framework/impl/src/main/java/org/ajax4jsf/component/DataVisitResult.java
branches/sandbox/3.3.X_JSF2/framework/impl/src/main/java/org/ajax4jsf/component/DataVisitor.java
branches/sandbox/3.3.X_JSF2/framework/test/src/main/java/org/ajax4jsf/tests/MockApplication2.java
branches/sandbox/3.3.X_JSF2/framework/test/src/main/java/org/ajax4jsf/tests/MockFacesContext2.java
branches/sandbox/3.3.X_JSF2/framework/test/src/main/java/org/ajax4jsf/tests/MockResourceManager.java
branches/sandbox/3.3.X_JSF2/framework/test/src/main/java/org/ajax4jsf/tests/MockResourseHandler.java
branches/sandbox/3.3.X_JSF2/framework/test/src/main/java/org/ajax4jsf/tests/URLBuilder.java
branches/sandbox/3.3.X_JSF2/ui/core/src/test/java/org/ajax4jsf/component/URLBuilder.java
Modified:
branches/sandbox/3.3.X_JSF2/framework/api/pom.xml
branches/sandbox/3.3.X_JSF2/framework/api/src/main/java/org/ajax4jsf/model/DataVisitor.java
branches/sandbox/3.3.X_JSF2/framework/impl/pom.xml
branches/sandbox/3.3.X_JSF2/framework/impl/src/main/java/org/ajax4jsf/component/UIDataAdaptor.java
branches/sandbox/3.3.X_JSF2/framework/jsf-test/pom.xml
branches/sandbox/3.3.X_JSF2/framework/pom.xml
branches/sandbox/3.3.X_JSF2/framework/test/pom.xml
branches/sandbox/3.3.X_JSF2/framework/test/src/main/java/org/ajax4jsf/tests/AbstractAjax4JsfTestCase.java
branches/sandbox/3.3.X_JSF2/framework/test/src/main/java/org/ajax4jsf/tests/MockExternalContext.java
branches/sandbox/3.3.X_JSF2/framework/test/src/test/resources/WEB-INF/web.xml
branches/sandbox/3.3.X_JSF2/pom.xml
branches/sandbox/3.3.X_JSF2/samples/pom.xml
branches/sandbox/3.3.X_JSF2/samples/richfaces-demo/pom.xml
branches/sandbox/3.3.X_JSF2/samples/richfaces-demo/src/main/webapp/WEB-INF/web.xml
branches/sandbox/3.3.X_JSF2/samples/richfaces-demo/src/main/webapp/richfaces/dataTable.xhtml
branches/sandbox/3.3.X_JSF2/samples/richfaces-demo/src/main/webapp/templates/include/components-group.xhtml
branches/sandbox/3.3.X_JSF2/ui/assembly/pom.xml
branches/sandbox/3.3.X_JSF2/ui/beanValidator/pom.xml
branches/sandbox/3.3.X_JSF2/ui/beanValidator/src/main/java/org/richfaces/component/html/HtmlInputSecret.java
branches/sandbox/3.3.X_JSF2/ui/beanValidator/src/main/java/org/richfaces/component/html/HtmlInputText.java
branches/sandbox/3.3.X_JSF2/ui/beanValidator/src/main/java/org/richfaces/component/html/HtmlInputTextarea.java
branches/sandbox/3.3.X_JSF2/ui/beanValidator/src/test/java/org/richfaces/component/BeanValidatorComponentTest.java
branches/sandbox/3.3.X_JSF2/ui/beanValidator/src/test/java/org/richfaces/component/GraphValidatorComponentTest.java
branches/sandbox/3.3.X_JSF2/ui/calendar/pom.xml
branches/sandbox/3.3.X_JSF2/ui/colorPicker/pom.xml
branches/sandbox/3.3.X_JSF2/ui/columns/pom.xml
branches/sandbox/3.3.X_JSF2/ui/columns/src/main/config/component/columns.xml
branches/sandbox/3.3.X_JSF2/ui/columns/src/test/java/org/richfaces/jsp/tag/ColumnsJspTagTest.java
branches/sandbox/3.3.X_JSF2/ui/combobox/pom.xml
branches/sandbox/3.3.X_JSF2/ui/componentControl/pom.xml
branches/sandbox/3.3.X_JSF2/ui/componentControl/src/test/java/org/richfaces/component/ComponentControlTest.java
branches/sandbox/3.3.X_JSF2/ui/contextMenu/pom.xml
branches/sandbox/3.3.X_JSF2/ui/core/src/main/config/component/actionParameter.xml
branches/sandbox/3.3.X_JSF2/ui/core/src/test/java/org/ajax4jsf/component/QueueRendererTest.java
branches/sandbox/3.3.X_JSF2/ui/core/src/test/java/org/ajax4jsf/component/UIAjaxFormTest.java
branches/sandbox/3.3.X_JSF2/ui/core/src/test/resources/org/ajax4jsf/component/queue-ajax-form.xhtml
branches/sandbox/3.3.X_JSF2/ui/dataFilterSlider/pom.xml
branches/sandbox/3.3.X_JSF2/ui/datascroller/pom.xml
branches/sandbox/3.3.X_JSF2/ui/dropdown-menu/pom.xml
branches/sandbox/3.3.X_JSF2/ui/editor/pom.xml
branches/sandbox/3.3.X_JSF2/ui/extendedDataTable/pom.xml
branches/sandbox/3.3.X_JSF2/ui/fileUpload/pom.xml
branches/sandbox/3.3.X_JSF2/ui/functions/pom.xml
branches/sandbox/3.3.X_JSF2/ui/hotKey/pom.xml
branches/sandbox/3.3.X_JSF2/ui/hotKey/src/test/java/org/richfaces/component/HotKeyComponentTest.java
branches/sandbox/3.3.X_JSF2/ui/inplaceInput/pom.xml
branches/sandbox/3.3.X_JSF2/ui/inplaceSelect/pom.xml
branches/sandbox/3.3.X_JSF2/ui/layout/pom.xml
branches/sandbox/3.3.X_JSF2/ui/menu-components/pom.xml
branches/sandbox/3.3.X_JSF2/ui/message/pom.xml
branches/sandbox/3.3.X_JSF2/ui/message/src/test/java/org/richfaces/renderer/RichMessageRendererTest.java
branches/sandbox/3.3.X_JSF2/ui/message/src/test/java/org/richfaces/renderer/RichMessagesRendererTest.java
branches/sandbox/3.3.X_JSF2/ui/orderingList/src/main/java/org/richfaces/component/UIOrderingBaseComponent.java
branches/sandbox/3.3.X_JSF2/ui/panel/pom.xml
branches/sandbox/3.3.X_JSF2/ui/panelmenu/pom.xml
branches/sandbox/3.3.X_JSF2/ui/pickList/pom.xml
branches/sandbox/3.3.X_JSF2/ui/pom.xml
branches/sandbox/3.3.X_JSF2/ui/progressBAR/pom.xml
branches/sandbox/3.3.X_JSF2/ui/scrollableDataTable/pom.xml
branches/sandbox/3.3.X_JSF2/ui/simpleTogglePanel/pom.xml
branches/sandbox/3.3.X_JSF2/ui/simpleTogglePanel/src/test/java/org/richfaces/component/SimpleTogglePanelComponentTest.java
branches/sandbox/3.3.X_JSF2/ui/spacer/pom.xml
branches/sandbox/3.3.X_JSF2/ui/state/pom.xml
branches/sandbox/3.3.X_JSF2/ui/state/src/main/java/org/richfaces/ui/application/StateApplication.java
branches/sandbox/3.3.X_JSF2/ui/suggestionbox/pom.xml
branches/sandbox/3.3.X_JSF2/ui/suggestionbox/src/test/java/org/richfaces/component/SuggestionBoxComponentTest.java
branches/sandbox/3.3.X_JSF2/ui/tabPanel/pom.xml
branches/sandbox/3.3.X_JSF2/ui/togglePanel/pom.xml
branches/sandbox/3.3.X_JSF2/ui/toolBar/pom.xml
branches/sandbox/3.3.X_JSF2/ui/toolBar/src/test/java/org/richfaces/component/ToolBarComponentTest.java
branches/sandbox/3.3.X_JSF2/ui/tooltip/pom.xml
branches/sandbox/3.3.X_JSF2/ui/tree/src/test/java/org/richfaces/component/TreeComponentTest.java
branches/sandbox/3.3.X_JSF2/ui/treeModel/pom.xml
Log:
Modified: branches/sandbox/3.3.X_JSF2/framework/api/pom.xml
===================================================================
--- branches/sandbox/3.3.X_JSF2/framework/api/pom.xml 2009-11-12 18:13:33 UTC (rev 15875)
+++ branches/sandbox/3.3.X_JSF2/framework/api/pom.xml 2009-11-13 13:21:50 UTC (rev 15876)
@@ -2,7 +2,7 @@
<parent>
<artifactId>framework</artifactId>
<groupId>org.richfaces</groupId>
- <version>3.3.3-SNAPSHOT</version>
+ <version>3.3.3-jsf2-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<groupId>org.richfaces.framework</groupId>
Modified:
branches/sandbox/3.3.X_JSF2/framework/api/src/main/java/org/ajax4jsf/model/DataVisitor.java
===================================================================
---
branches/sandbox/3.3.X_JSF2/framework/api/src/main/java/org/ajax4jsf/model/DataVisitor.java 2009-11-12
18:13:33 UTC (rev 15875)
+++
branches/sandbox/3.3.X_JSF2/framework/api/src/main/java/org/ajax4jsf/model/DataVisitor.java 2009-11-13
13:21:50 UTC (rev 15876)
@@ -22,7 +22,6 @@
package org.ajax4jsf.model;
import java.io.IOException;
-
import javax.faces.context.FacesContext;
/**
Modified: branches/sandbox/3.3.X_JSF2/framework/impl/pom.xml
===================================================================
--- branches/sandbox/3.3.X_JSF2/framework/impl/pom.xml 2009-11-12 18:13:33 UTC (rev
15875)
+++ branches/sandbox/3.3.X_JSF2/framework/impl/pom.xml 2009-11-13 13:21:50 UTC (rev
15876)
@@ -3,7 +3,7 @@
<parent>
<artifactId>framework</artifactId>
<groupId>org.richfaces</groupId>
- <version>3.3.3-SNAPSHOT</version>
+ <version>3.3.3-jsf2-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<groupId>org.richfaces.framework</groupId>
Added:
branches/sandbox/3.3.X_JSF2/framework/impl/src/main/java/org/ajax4jsf/component/DataVisitResult.java
===================================================================
---
branches/sandbox/3.3.X_JSF2/framework/impl/src/main/java/org/ajax4jsf/component/DataVisitResult.java
(rev 0)
+++
branches/sandbox/3.3.X_JSF2/framework/impl/src/main/java/org/ajax4jsf/component/DataVisitResult.java 2009-11-13
13:21:50 UTC (rev 15876)
@@ -0,0 +1,31 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2009, Red Hat, Inc. and individual contributors
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This 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 software 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 software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site:
http://www.fsf.org.
+ */
+
+
+
+package org.ajax4jsf.component;
+
+/**
+ * @author Nick Belaevski
+ *
+ */
+public enum DataVisitResult {CONTINUE, STOP}
Added:
branches/sandbox/3.3.X_JSF2/framework/impl/src/main/java/org/ajax4jsf/component/DataVisitor.java
===================================================================
---
branches/sandbox/3.3.X_JSF2/framework/impl/src/main/java/org/ajax4jsf/component/DataVisitor.java
(rev 0)
+++
branches/sandbox/3.3.X_JSF2/framework/impl/src/main/java/org/ajax4jsf/component/DataVisitor.java 2009-11-13
13:21:50 UTC (rev 15876)
@@ -0,0 +1,43 @@
+/**
+ * License Agreement.
+ *
+ * Rich Faces - Natural Ajax for Java Server Faces (JSF)
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+
+
+package org.ajax4jsf.component;
+
+import javax.faces.context.FacesContext;
+
+/**
+ * Interface for classes, able to receive visitor processing calls from
ExtendedDataModel
+ * @author shura
+ *
+ */
+public interface DataVisitor {
+
+ /**
+ * This method called back ( as visitor ) from {@link
ExtendedDataModel#walk(FacesContext, DataVisitor, Range)} for
+ * each row.
+ * @param context current JSF context.
+ * @param rowKey current row key of DataModel
+ * @param argument Implementation-specific argument
+ */
+ public DataVisitResult process(FacesContext context, Object rowKey, Object
argument);
+}
Modified:
branches/sandbox/3.3.X_JSF2/framework/impl/src/main/java/org/ajax4jsf/component/UIDataAdaptor.java
===================================================================
---
branches/sandbox/3.3.X_JSF2/framework/impl/src/main/java/org/ajax4jsf/component/UIDataAdaptor.java 2009-11-12
18:13:33 UTC (rev 15875)
+++
branches/sandbox/3.3.X_JSF2/framework/impl/src/main/java/org/ajax4jsf/component/UIDataAdaptor.java 2009-11-13
13:21:50 UTC (rev 15876)
@@ -42,6 +42,9 @@
import javax.faces.component.UIColumn;
import javax.faces.component.UIComponent;
import javax.faces.component.UIData;
+import javax.faces.component.visit.VisitCallback;
+import javax.faces.component.visit.VisitContext;
+import javax.faces.component.visit.VisitResult;
import javax.faces.context.FacesContext;
import javax.faces.convert.Converter;
import javax.faces.convert.ConverterException;
@@ -562,6 +565,47 @@
}
}
+ public boolean visitTree(VisitContext context, VisitCallback callback) {
+
+ // First check to see whether we are visitable. If not
+ // short-circuit out of this subtree, though allow the
+ // visit to proceed through to other subtrees.
+ if (!isVisitable(context))
+ return false;
+
+ // Push ourselves to EL before visiting
+ FacesContext facesContext = context.getFacesContext();
+ pushComponentToEL(facesContext, null);
+
+ try {
+ // Visit ourselves. Note that we delegate to the
+ // VisitContext to actually perform the visit.
+ VisitResult result = context.invokeVisitCallback(this, callback);
+
+ // If the visit is complete, short-circuit out and end the visit
+ if (result == VisitResult.COMPLETE)
+ return true;
+
+ // Visit children if necessary
+ if (result == VisitResult.ACCEPT) {
+ Iterator<UIComponent> kids = this.getFacetsAndChildren();
+
+ while (kids.hasNext()) {
+ boolean done = kids.next().visitTree(context, callback);
+
+ // If any kid visit returns true, we are done.
+ if (done)
+ return true;
+ }
+ }
+ } finally {
+ // Pop ourselves off the EL stack
+ popComponentFromEL(facesContext);
+ }
+
+ // Return false to allow the visit to continue
+ return false;
+ }
/**
* @param var
* @param attrs
Modified: branches/sandbox/3.3.X_JSF2/framework/jsf-test/pom.xml
===================================================================
--- branches/sandbox/3.3.X_JSF2/framework/jsf-test/pom.xml 2009-11-12 18:13:33 UTC (rev
15875)
+++ branches/sandbox/3.3.X_JSF2/framework/jsf-test/pom.xml 2009-11-13 13:21:50 UTC (rev
15876)
@@ -4,24 +4,16 @@
<parent>
<artifactId>framework</artifactId>
<groupId>org.richfaces</groupId>
- <version>3.3.3-SNAPSHOT</version>
+ <version>3.3.3-jsf2-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<groupId>org.richfaces.framework</groupId>
<artifactId>jsf-test</artifactId>
<name>jsf-test</name>
<version>3.3.3-jsf2-SNAPSHOT</version>
- <profiles>
- <profile>
- <id>jsf2</id>
- <properties>
- <jsf.api.groupId>com.sun.faces</jsf.api.groupId>
- <jsf.impl.groupId>com.sun.faces</jsf.impl.groupId>
- <jsf.api.version>2.0.1</jsf.api.version>
- <jsf.impl.version>2.0.1</jsf.impl.version>
- </properties>
- <dependencies>
- <dependency>
+
+ <dependencies>
+ <dependency>
<groupId>com.sun.faces</groupId>
<artifactId>jsf-api</artifactId>
<version>2.0.1</version>
@@ -33,34 +25,6 @@
<version>2.0.1</version>
<scope>provided</scope>
</dependency>
- </dependencies>
- </profile>
-<profile>
- <id>jsf1.2</id>
- <properties>
- <jsf.api.groupId>javax.faces</jsf.api.groupId>
- <jsf.impl.groupId>javax.faces</jsf.impl.groupId>
- <jsf.api.version>1.2_12</jsf.api.version>
- <jsf.impl.version>1.2_12</jsf.impl.version>
- </properties>
- <dependencies>
- <dependency>
- <groupId>javax.faces</groupId>
- <artifactId>jsf-api</artifactId>
- <version>1.2_12</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>javax.faces</groupId>
- <artifactId>jsf-impl</artifactId>
- <version>1.2_12</version>
- <scope>provided</scope>
- </dependency>
- </dependencies>
- </profile>
- </profiles>
-
- <dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
Modified: branches/sandbox/3.3.X_JSF2/framework/pom.xml
===================================================================
--- branches/sandbox/3.3.X_JSF2/framework/pom.xml 2009-11-12 18:13:33 UTC (rev 15875)
+++ branches/sandbox/3.3.X_JSF2/framework/pom.xml 2009-11-13 13:21:50 UTC (rev 15876)
@@ -57,12 +57,6 @@
<profiles>
<profile>
<id>jsf2</id>
- <properties>
- <jsf.api.groupId>com.sun.faces</jsf.api.groupId>
- <jsf.impl.groupId>com.sun.faces</jsf.impl.groupId>
- <jsf.api.version>2.0.1</jsf.api.version>
- <jsf.impl.version>2.0.1</jsf.impl.version>
- </properties>
<dependencies>
<dependency>
<groupId>com.sun.faces</groupId>
@@ -74,12 +68,6 @@
</profile>
<profile>
<id>jsf1.2</id>
- <properties>
- <jsf.api.groupId>javax.faces</jsf.api.groupId>
- <jsf.impl.groupId>javax.faces</jsf.impl.groupId>
- <jsf.api.version>1.2_12</jsf.api.version>
- <jsf.impl.version>1.2_12</jsf.impl.version>
- </properties>
<dependencies>
<dependency>
<groupId>javax.faces</groupId>
Modified: branches/sandbox/3.3.X_JSF2/framework/test/pom.xml
===================================================================
--- branches/sandbox/3.3.X_JSF2/framework/test/pom.xml 2009-11-12 18:13:33 UTC (rev
15875)
+++ branches/sandbox/3.3.X_JSF2/framework/test/pom.xml 2009-11-13 13:21:50 UTC (rev
15876)
@@ -2,7 +2,7 @@
<parent>
<artifactId>framework</artifactId>
<groupId>org.richfaces</groupId>
- <version>3.3.3-SNAPSHOT</version>
+ <version>3.3.3-jsf2-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<groupId>org.richfaces.framework</groupId>
@@ -10,44 +10,19 @@
<version>3.3.3-jsf2-SNAPSHOT</version>
<name>Ajax4Jsf test framework</name>
<url>https://ajax4jsf.dev.java.net</url>
- <profiles>
- <profile>
- <id>jsf2</id>
- <properties>
- <jsf.api.groupId>com.sun.faces</jsf.api.groupId>
- <jsf.impl.groupId>com.sun.faces</jsf.impl.groupId>
- <jsf.api.version>2.0.1</jsf.api.version>
- <jsf.impl.version>2.0.1</jsf.impl.version>
- </properties>
- <dependencies>
- <dependency>
+ <dependencies>
+ <dependency>
<groupId>com.sun.faces</groupId>
- <artifactId>jsf-impl</artifactId>
+ <artifactId>jsf-api</artifactId>
<version>2.0.1</version>
<scope>provided</scope>
</dependency>
- </dependencies>
- </profile>
-<profile>
- <id>jsf1.2</id>
- <properties>
- <jsf.api.groupId>javax.faces</jsf.api.groupId>
- <jsf.impl.groupId>javax.faces</jsf.impl.groupId>
- <jsf.api.version>1.2_12</jsf.api.version>
- <jsf.impl.version>1.2_12</jsf.impl.version>
- </properties>
- <dependencies>
- <dependency>
- <groupId>javax.faces</groupId>
+ <dependency>
+ <groupId>com.sun.faces</groupId>
<artifactId>jsf-impl</artifactId>
- <version>1.2_12</version>
+ <version>2.0.1</version>
<scope>provided</scope>
</dependency>
- </dependencies>
- </profile>
- </profiles>
-
- <dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
@@ -79,7 +54,7 @@
<dependency>
<groupId>org.richfaces.framework</groupId>
<artifactId>richfaces-impl</artifactId>
- <version>${richfaces.version}</version>
+ <version>3.3.3-jsf2-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>net.sourceforge.htmlunit</groupId>
Modified:
branches/sandbox/3.3.X_JSF2/framework/test/src/main/java/org/ajax4jsf/tests/AbstractAjax4JsfTestCase.java
===================================================================
---
branches/sandbox/3.3.X_JSF2/framework/test/src/main/java/org/ajax4jsf/tests/AbstractAjax4JsfTestCase.java 2009-11-12
18:13:33 UTC (rev 15875)
+++
branches/sandbox/3.3.X_JSF2/framework/test/src/main/java/org/ajax4jsf/tests/AbstractAjax4JsfTestCase.java 2009-11-13
13:21:50 UTC (rev 15876)
@@ -44,8 +44,10 @@
import javax.el.ExpressionFactory;
import javax.faces.FacesException;
import javax.faces.FactoryFinder;
+import javax.faces.application.ResourceHandler;
import javax.faces.component.UIComponent;
import javax.faces.component.UIViewRoot;
+import javax.faces.context.ExternalContext;
import javax.faces.context.FacesContext;
import javax.faces.context.ResponseWriter;
import javax.faces.render.RenderKitFactory;
@@ -94,6 +96,11 @@
import com.gargoylesoftware.htmlunit.WebResponseData;
import com.gargoylesoftware.htmlunit.WebResponseImpl;
import com.gargoylesoftware.htmlunit.html.HtmlPage;
+import com.sun.faces.RIConstants;
+import com.sun.faces.application.ApplicationAssociate;
+import com.sun.faces.application.ApplicationImpl;
+import com.sun.faces.application.resource.ResourceHandlerImpl;
+import com.sun.faces.component.visit.VisitContextFactoryImpl;
/**
* Base class for testing components and renderers in a4j framework
@@ -159,12 +166,14 @@
// Setup FacesContext with necessary init parameters.
this.servletContext.addInitParameter(SkinFactory.SKIN_PARAMETER, getSkinName());
+ this.servletContext.addInitParameter("com.sun.faces.allowTextChildren",
"true");
this.servletContext.addInitParameter("com.sun.faces.externalizeJavaScript",
"true");
// setup VCP renderKit, create renderers.
RenderKitFactory vcpRenderKitFactory = (RenderKitFactory)
FactoryFinder.getFactory(FactoryFinder.RENDER_KIT_FACTORY);
+ FactoryFinder.setFactory(FactoryFinder.VISIT_CONTEXT_FACTORY,
"com.sun.faces.component.visit.VisitContextFactoryImpl");
vcpRenderKit = new ChameleonRenderKitImpl();
vcpRenderKitFactory.addRenderKit("HTML_CHAMELEON", vcpRenderKit);
renderKit.addRenderer(UIViewRoot.COMPONENT_FAMILY, UIViewRoot.COMPONENT_TYPE, new
AjaxViewRootRenderer());
@@ -175,7 +184,7 @@
request.setAttribute(AjaxContext.AJAX_CONTEXT_KEY, ajaxContext);
// Setup ViewHandler / ViewRoot.
application.setViewHandler(new MockViewHandler(application.getViewHandler()));
-
+ application = new MockApplication2(application);
UIViewRoot root = new MockViewRoot();
root.setViewId("/viewId");
root.setRenderKitId(RenderKitFactory.HTML_BASIC_RENDER_KIT);
@@ -185,7 +194,8 @@
servletContext.setAttribute("a4jSkin", new SkinBean());
// Setup servlet context and testing web.xml
request.setPathElements("/testContext","/faces","/vievId.jsf","");
-
+ ResourceHandler handler = new MockResourseHandler();
+ application.setResourceHandler(handler);
File webRoot = new
File(getClass().getResource("/WEB-INF/web.xml").getFile()).getParentFile().getParentFile();
if (webRoot.exists()) {
servletContext.setDocumentRoot(webRoot);
@@ -244,9 +254,10 @@
while (resources.hasMoreElements()) {
parser.parse((URL) resources.nextElement());
}
-
+ facesContext = new MockFacesContext2(facesContext);
externalContext = new MockExternalContext(externalContext);
facesContext.setExternalContext(externalContext);
+ facesContext.setApplication(application);
elContext = facesContext.getELContext();
expressionFactory = application.getExpressionFactory();
}
@@ -581,7 +592,7 @@
response.setContentType("text/html");
ResponseWriter responseWriter =
renderKit.createResponseWriter(response.getWriter(),"text/html",null);
UIViewRoot viewRoot = facesContext.getViewRoot();
-
+
facesContext.setResponseWriter(responseWriter);
encodeDocumentProlog(facesContext, viewRoot, responseWriter);
Added:
branches/sandbox/3.3.X_JSF2/framework/test/src/main/java/org/ajax4jsf/tests/MockApplication2.java
===================================================================
---
branches/sandbox/3.3.X_JSF2/framework/test/src/main/java/org/ajax4jsf/tests/MockApplication2.java
(rev 0)
+++
branches/sandbox/3.3.X_JSF2/framework/test/src/main/java/org/ajax4jsf/tests/MockApplication2.java 2009-11-13
13:21:50 UTC (rev 15876)
@@ -0,0 +1,300 @@
+package org.ajax4jsf.tests;
+
+import java.util.Collection;
+import java.util.Iterator;
+import java.util.Locale;
+
+import javax.el.ELContextListener;
+import javax.el.ELResolver;
+import javax.el.ExpressionFactory;
+import javax.faces.FacesException;
+import javax.faces.application.Application;
+import javax.faces.application.NavigationHandler;
+import javax.faces.application.ResourceHandler;
+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.MethodBinding;
+import javax.faces.el.PropertyResolver;
+import javax.faces.el.ReferenceSyntaxException;
+import javax.faces.el.ValueBinding;
+import javax.faces.el.VariableResolver;
+import javax.faces.event.ActionListener;
+import javax.faces.event.SystemEvent;
+import javax.faces.validator.Validator;
+
+import org.apache.shale.test.mock.MockApplication;
+
+import com.sun.faces.application.resource.ResourceHandlerImpl;
+
+
+public class MockApplication2 extends MockApplication{
+ private MockApplication application;
+ private ResourceHandler resourceHandler;
+
+ public MockApplication2() {
+ }
+
+ public MockApplication2(MockApplication application2) {
+ application = application2;
+ }
+
+ @Override
+ public void addComponent(String componentType, String componentClass) {
+ application.addComponent(componentType, componentClass);
+
+ }
+
+ @Override
+ public void addConverter(String converterId, String converterClass) {
+ if(application != null){
+ application.addConverter(converterId, converterClass);
+ }
+
+
+ }
+ public ELResolver getELResolver(){
+ return application.getELResolver();
+ }
+ public ExpressionFactory getExpressionFactory() {
+
+ return application.getExpressionFactory();
+
+ }
+ @Override
+ public ELContextListener [] getELContextListeners() {
+
+ return application.getELContextListeners();
+
+ }
+
+ @Override
+ public void publishEvent(FacesContext context,
+ Class<? extends SystemEvent> systemEventClass, Object source) {
+
+ return ;
+
+ }
+
+ public void setResourceHandler(ResourceHandler resourceHandler) {
+
+ this.resourceHandler = resourceHandler;
+
+ }
+
+ public ResourceHandler getResourceHandler() {
+
+ return resourceHandler;
+
+ }
+
+ @Override
+ public void addValidator(String validatorId, String validatorClass) {
+ application.addValidator(validatorId, validatorClass);
+
+ }
+
+ @Override
+ public UIComponent createComponent(String arg0) throws FacesException {
+ // TODO Auto-generated method stub
+ return application.createComponent(arg0);
+ }
+
+ @Override
+ public UIComponent createComponent(ValueBinding arg0, FacesContext arg1,
+ String arg2) throws FacesException {
+ // TODO Auto-generated method stub
+ return application.createComponent(arg0, arg1, arg2);
+ }
+
+ @Override
+ public Converter createConverter(String arg0) {
+ // TODO Auto-generated method stub
+ return application.createConverter(arg0);
+ }
+
+ @Override
+ public Converter createConverter(Class arg0) {
+ // TODO Auto-generated method stub
+ return application.createConverter(arg0);
+ }
+
+ @Override
+ public Validator createValidator(String arg0) throws FacesException {
+ // TODO Auto-generated method stub
+ return application.createValidator(arg0);
+ }
+
+ @Override
+ public ValueBinding createValueBinding(String ref)
+ throws ReferenceSyntaxException {
+ // TODO Auto-generated method stub
+ return application.createValueBinding(ref);
+ }
+
+ @Override
+ public ActionListener getActionListener() {
+ // TODO Auto-generated method stub
+ return application.getActionListener();
+ }
+
+ @Override
+ public Iterator<String> getComponentTypes() {
+ // TODO Auto-generated method stub
+ return application.getComponentTypes();
+ }
+
+ @Override
+ public Iterator<String> getConverterIds() {
+ // TODO Auto-generated method stub
+ return application.getConverterIds();
+ }
+
+ @Override
+ public Iterator<Class<?>> getConverterTypes() {
+ // TODO Auto-generated method stub
+ return application.getConverterTypes();
+ }
+
+ @Override
+ public Locale getDefaultLocale() {
+ // TODO Auto-generated method stub
+ return application.getDefaultLocale();
+ }
+
+ @Override
+ public String getDefaultRenderKitId() {
+ // TODO Auto-generated method stub
+ return application.getDefaultRenderKitId();
+ }
+
+ @Override
+ public String getMessageBundle() {
+ // TODO Auto-generated method stub
+ return application.getMessageBundle();
+ }
+
+ @Override
+ public NavigationHandler getNavigationHandler() {
+ // TODO Auto-generated method stub
+ return application.getNavigationHandler();
+ }
+
+ @Override
+ public PropertyResolver getPropertyResolver() {
+ // TODO Auto-generated method stub
+ return application.getPropertyResolver();
+ }
+
+ @Override
+ public StateManager getStateManager() {
+ // TODO Auto-generated method stub
+ return application.getStateManager();
+ }
+
+ @Override
+ public Iterator<Locale> getSupportedLocales() {
+ // TODO Auto-generated method stub
+ return application.getSupportedLocales();
+ }
+
+ @Override
+ public Iterator<String> getValidatorIds() {
+ // TODO Auto-generated method stub
+ return application.getValidatorIds();
+ }
+
+ @Override
+ public VariableResolver getVariableResolver() {
+ // TODO Auto-generated method stub
+ return application.getVariableResolver();
+ }
+
+ @Override
+ public ViewHandler getViewHandler() {
+ // TODO Auto-generated method stub
+ return application.getViewHandler();
+ }
+
+ @Override
+ public void setActionListener(ActionListener actionListener) {
+ if(application != null){
+ application.setActionListener(actionListener);
+ }
+
+
+ }
+
+ @Override
+ public void setDefaultLocale(Locale defaultLocale) {
+ if(application != null){
+ application.setDefaultLocale(defaultLocale);
+ }
+
+
+ }
+
+ @Override
+ public void setDefaultRenderKitId(String defaultRenderKitId) {
+ if(application != null){
+ application.setDefaultRenderKitId(defaultRenderKitId);
+ }
+
+
+ }
+
+ @Override
+ public void setMessageBundle(String messageBundle) {
+ application.setMessageBundle(messageBundle);
+
+ }
+
+ @Override
+ public void setNavigationHandler(NavigationHandler navigationHandler) {
+ if(application != null){
+ application.setNavigationHandler(navigationHandler);
+ }
+
+
+ }
+
+ @Override
+ public void setPropertyResolver(PropertyResolver propertyResolver) {
+ if(application != null){
+ application.setPropertyResolver(propertyResolver);
+ }
+
+
+ }
+
+ @Override
+ public void setStateManager(StateManager stateManager) {
+ if(application != null){
+ application.setStateManager(stateManager);
+ }
+
+
+ }
+
+ @Override
+ public void setVariableResolver(VariableResolver variableResolver) {
+ if(application != null){
+ application.setVariableResolver(variableResolver);
+ }
+
+
+ }
+
+ @Override
+ public void setViewHandler(ViewHandler viewHandler) {
+ if(application != null){
+ application.setViewHandler(viewHandler);
+ }
+
+
+ }
+
+
+}
Modified:
branches/sandbox/3.3.X_JSF2/framework/test/src/main/java/org/ajax4jsf/tests/MockExternalContext.java
===================================================================
---
branches/sandbox/3.3.X_JSF2/framework/test/src/main/java/org/ajax4jsf/tests/MockExternalContext.java 2009-11-12
18:13:33 UTC (rev 15875)
+++
branches/sandbox/3.3.X_JSF2/framework/test/src/main/java/org/ajax4jsf/tests/MockExternalContext.java 2009-11-13
13:21:50 UTC (rev 15876)
@@ -22,17 +22,31 @@
package org.ajax4jsf.tests;
import java.io.IOException;
+import java.io.InputStream;
+import java.io.OutputStream;
+import java.io.UnsupportedEncodingException;
+import java.io.Writer;
+import java.net.MalformedURLException;
+import java.net.URL;
+import java.security.Principal;
import java.util.Collections;
import java.util.Comparator;
import java.util.Enumeration;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
+import java.util.List;
+import java.util.Locale;
import java.util.Map;
import java.util.Set;
import java.util.TreeMap;
import javax.faces.FacesException;
+import javax.faces.context.ExternalContext;
+import javax.faces.context.FacesContext;
+import javax.faces.context.Flash;
+import javax.faces.context.PartialResponseWriter;
+import javax.faces.context.PartialViewContext;
import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@@ -44,12 +58,12 @@
* @author Siarhej Chalipau
*
*/
-public class MockExternalContext extends MockExternalContext12 {
+public class MockExternalContext extends MockExternalContext12{
/*
* Realizes methods unimplemented by org.apache.shale.test.mock.MockExternalContext
operations.
*
*/
-
+ private MockExternalContext12 mockContext;
private Map requestParameterValuesMap = null;
private Map requestHeaderMap = null;
private Map requestHeaderValuesMap = null;
@@ -59,8 +73,22 @@
public MockExternalContext(org.apache.shale.test.mock.MockExternalContext baseContext)
{
super((ServletContext)baseContext.getContext(),
(HttpServletRequest)baseContext.getRequest(),
(HttpServletResponse)baseContext.getResponse());
+ mockContext = this;
}
+
+ @Override
+ public String encodePartialActionURL(String url) {
+ UrlBuilder builder = new UrlBuilder(url, getResponseCharacterEncoding());
+ return ((HttpServletResponse)
mockContext.getResponse()).encodeURL(builder.createUrl());
+ }
+ @Override
+ public String getResponseCharacterEncoding() {
+
+ return super.getResponseCharacterEncoding();
+
+ }
+
public Map getRequestParameterValuesMap() {
if (null == requestParameterValuesMap) {
requestParameterValuesMap = new HashMap();
@@ -76,9 +104,15 @@
public void dispatch(String requestURI)
throws IOException, FacesException {
//TODO hans, should be implemented
- super.dispatch(requestURI);
+ mockContext.dispatch(requestURI);
}
+ public String getMimeType(String file) {
+
+ return "xhtml";
+
+ }
+
public Map getRequestHeaderMap() {
if (null == requestHeaderMap) {
requestHeaderMap = new TreeMap(CASE_INSENSITIVE_COMPARATOR);
@@ -142,7 +176,7 @@
public void redirect(String requestURI) throws IOException {
// TODO hans, should be implemented
- super.redirect(requestURI);
+ mockContext.redirect(requestURI);
}
protected final static Comparator CASE_INSENSITIVE_COMPARATOR = new Comparator() {
@@ -152,5 +186,5 @@
return s0.toUpperCase().compareTo(s1.toUpperCase());
}
};
-
+
}
Added:
branches/sandbox/3.3.X_JSF2/framework/test/src/main/java/org/ajax4jsf/tests/MockFacesContext2.java
===================================================================
---
branches/sandbox/3.3.X_JSF2/framework/test/src/main/java/org/ajax4jsf/tests/MockFacesContext2.java
(rev 0)
+++
branches/sandbox/3.3.X_JSF2/framework/test/src/main/java/org/ajax4jsf/tests/MockFacesContext2.java 2009-11-13
13:21:50 UTC (rev 15876)
@@ -0,0 +1,178 @@
+package org.ajax4jsf.tests;
+
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.Map;
+
+import javax.el.ELContext;
+import javax.faces.application.Application;
+import javax.faces.application.FacesMessage;
+import javax.faces.application.FacesMessage.Severity;
+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 org.apache.shale.test.mock.MockFacesContext;
+
+public class MockFacesContext2 extends MockFacesContext{
+
+ MockFacesContext facesContext;
+ private boolean validationFailed;
+ Map<Object, Object> attributes;
+
+ public MockFacesContext2(MockFacesContext facesContext) {
+ this.facesContext = facesContext;
+ }
+
+ public Map<Object,Object> getAttributes(){
+ if (attributes == null) {
+ attributes = new HashMap<Object, Object>();
+ }
+ Map<String, Object> requestMap =
facesContext.getExternalContext().getRequestMap();
+ if(requestMap != null){
+ for(String entry : requestMap.keySet()){
+ attributes.put(entry, requestMap.get(entry));
+ }
+ }
+ return attributes;
+ }
+
+ public ELContext getELContext() {
+
+ return facesContext.getELContext();
+
+ }
+
+ public void validationFailed() {
+ validationFailed = true;
+ }
+
+ @Override
+ public void addMessage(String clientId, FacesMessage message) {
+ facesContext.addMessage(clientId, message);
+
+ }
+
+ @Override
+ public Application getApplication() {
+ // TODO Auto-generated method stub
+ return facesContext.getApplication();
+ }
+
+ @Override
+ public void setApplication(Application application) {
+ // TODO Auto-generated method stub
+ facesContext.setApplication(application);
+ }
+
+ @Override
+ public Iterator<String> getClientIdsWithMessages() {
+ // TODO Auto-generated method stub
+ return facesContext.getClientIdsWithMessages();
+ }
+
+ @Override
+ public ExternalContext getExternalContext() {
+ // TODO Auto-generated method stub
+ return facesContext.getExternalContext();
+ }
+
+ @Override
+ public void setExternalContext(ExternalContext extContext) {
+ // TODO Auto-generated method stub
+ facesContext.setExternalContext(extContext);
+ }
+
+ @Override
+ public Severity getMaximumSeverity() {
+ // TODO Auto-generated method stub
+ return facesContext.getMaximumSeverity();
+ }
+
+ @Override
+ public Iterator<FacesMessage> getMessages() {
+ // TODO Auto-generated method stub
+ return facesContext.getMessages();
+ }
+
+ @Override
+ public Iterator<FacesMessage> getMessages(String clientId) {
+ // TODO Auto-generated method stub
+ return facesContext.getMessages(clientId);
+ }
+
+ @Override
+ public RenderKit getRenderKit() {
+ // TODO Auto-generated method stub
+ return facesContext.getRenderKit();
+ }
+
+ @Override
+ public boolean getRenderResponse() {
+ // TODO Auto-generated method stub
+ return facesContext.getRenderResponse();
+ }
+
+ @Override
+ public boolean getResponseComplete() {
+ // TODO Auto-generated method stub
+ return facesContext.getResponseComplete();
+ }
+
+ @Override
+ public ResponseStream getResponseStream() {
+ // TODO Auto-generated method stub
+ return facesContext.getResponseStream();
+ }
+
+ @Override
+ public ResponseWriter getResponseWriter() {
+ // TODO Auto-generated method stub
+ return facesContext.getResponseWriter();
+ }
+
+ @Override
+ public UIViewRoot getViewRoot() {
+ // TODO Auto-generated method stub
+ return facesContext.getViewRoot();
+ }
+
+ @Override
+ public void release() {
+ facesContext.release();
+
+ }
+
+ @Override
+ public void renderResponse() {
+ facesContext.renderResponse();
+
+ }
+
+ @Override
+ public void responseComplete() {
+ facesContext.responseComplete();
+
+ }
+
+ @Override
+ public void setResponseStream(ResponseStream responseStream) {
+ facesContext.setResponseStream(responseStream);
+
+ }
+
+ @Override
+ public void setResponseWriter(ResponseWriter responseWriter) {
+ facesContext.setResponseWriter(responseWriter);
+
+ }
+
+ @Override
+ public void setViewRoot(UIViewRoot viewRoot) {
+ facesContext.setViewRoot(viewRoot);
+
+ }
+}
Added:
branches/sandbox/3.3.X_JSF2/framework/test/src/main/java/org/ajax4jsf/tests/MockResourceManager.java
===================================================================
---
branches/sandbox/3.3.X_JSF2/framework/test/src/main/java/org/ajax4jsf/tests/MockResourceManager.java
(rev 0)
+++
branches/sandbox/3.3.X_JSF2/framework/test/src/main/java/org/ajax4jsf/tests/MockResourceManager.java 2009-11-13
13:21:50 UTC (rev 15876)
@@ -0,0 +1,20 @@
+package org.ajax4jsf.tests;
+
+import javax.faces.context.FacesContext;
+
+import com.sun.faces.application.resource.LibraryInfo;
+import com.sun.faces.application.resource.ResourceCache;
+import com.sun.faces.application.resource.ResourceManager;
+
+public class MockResourceManager extends ResourceManager {
+
+ public MockResourceManager(ResourceCache cache) {
+ super(cache);
+ }
+
+ public LibraryInfo findLibrary(String libraryName,
+ String localePrefix,
+ FacesContext ctx) {
+ return null;
+ }
+}
Added:
branches/sandbox/3.3.X_JSF2/framework/test/src/main/java/org/ajax4jsf/tests/MockResourseHandler.java
===================================================================
---
branches/sandbox/3.3.X_JSF2/framework/test/src/main/java/org/ajax4jsf/tests/MockResourseHandler.java
(rev 0)
+++
branches/sandbox/3.3.X_JSF2/framework/test/src/main/java/org/ajax4jsf/tests/MockResourseHandler.java 2009-11-13
13:21:50 UTC (rev 15876)
@@ -0,0 +1,517 @@
+package org.ajax4jsf.tests;
+
+import com.sun.faces.application.resource.LibraryInfo;
+import com.sun.faces.application.resource.ResourceCache;
+import com.sun.faces.application.resource.ResourceImpl;
+import com.sun.faces.application.resource.ResourceInfo;
+import com.sun.faces.config.WebConfiguration;
+import static com.sun.faces.config.WebConfiguration.WebContextInitParameter.*;
+import com.sun.faces.util.FacesLogger;
+import com.sun.faces.util.RequestStateManager;
+import com.sun.faces.util.Util;
+
+import javax.faces.application.ProjectStage;
+import javax.faces.application.Resource;
+import javax.faces.application.ResourceHandler;
+import javax.faces.context.ExternalContext;
+import javax.faces.context.FacesContext;
+import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
+import java.io.InputStream;
+import java.nio.ByteBuffer;
+import java.nio.channels.Channels;
+import java.nio.channels.ReadableByteChannel;
+import java.nio.channels.WritableByteChannel;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+import java.util.logging.Level;
+import java.util.logging.Logger;
+import java.util.regex.Pattern;
+
+/**
+ * This is the default implementation of {@link ResourceHandler}.
+ */
+public class MockResourseHandler extends ResourceHandler {
+
+ // Log instance for this class
+ private static final Logger LOGGER = FacesLogger.APPLICATION.getLogger();
+
+ MockResourceManager manager;
+ List<Pattern> excludePatterns;
+ private long creationTime;
+ private long maxAge;
+ private WebConfiguration webconfig;
+
+ // ------------------------------------------------------------ Constructors
+
+
+ /**
+ * Creates a new instance of ResourceHandlerImpl
+ */
+ public MockResourseHandler() {
+
+ creationTime = System.currentTimeMillis();
+ webconfig = WebConfiguration.getInstance();
+ ExternalContext extContext =
FacesContext.getCurrentInstance().getExternalContext();
+ ResourceCache cache = new ResourceCache();
+ manager = new MockResourceManager(cache);
+ initExclusions();
+ initMaxAge();
+
+ }
+
+
+ // ------------------------------------------- Methods from Resource Handler
+
+
+ /**
+ * @see ResourceHandler#createResource(String)
+ */
+ public Resource createResource(String resourceName) {
+
+ Util.notNull("resourceName", resourceName);
+
+ return createResource(resourceName, null, null);
+
+ }
+
+
+ /**
+ * @see ResourceHandler#createResource(String, String)
+ */
+ public Resource createResource(String resourceName, String libraryName) {
+
+ Util.notNull("resourceName", resourceName);
+
+ return createResource(resourceName, libraryName, null);
+
+ }
+
+
+ /**
+ * @see ResourceHandler#createResource(String, String, String)
+ */
+ public Resource createResource(String resourceName,
+ String libraryName,
+ String contentType) {
+
+ Util.notNull("resourceName", resourceName);
+ FacesContext ctx = FacesContext.getCurrentInstance();
+
+ boolean development = ctx.isProjectStage(ProjectStage.Development);
+
+ String ctype = ((contentType != null)
+ ? contentType
+ : getContentType(ctx, resourceName));
+ ResourceInfo info = manager.findResource(libraryName,
+ resourceName,
+ ctype,
+ ctx);
+ if (info == null) {
+ // prevent message from being when we're dealing with
+ // groovy is present and Application.createComponent()
+ // tries to resolve a .groovy file as backing UIComponent.
+ if (!development && "application/x-groovy".equals(ctype))
{
+ return null;
+ }
+ logMissingResource(ctx, resourceName, libraryName, null);
+ return null;
+ } else {
+ return new ResourceImpl(info, ctype, creationTime, maxAge);
+ }
+
+ }
+
+ @Override
+ public boolean libraryExists(String libraryName) {
+
+ if (libraryName.contains("../")) {
+ return false;
+ }
+ FacesContext context = FacesContext.getCurrentInstance();
+ LibraryInfo info = manager.findLibrary(libraryName, null, context);
+ return (info != null);
+
+ }
+
+ /**
+ * @see ResourceHandler#isResourceRequest(javax.faces.context.FacesContext)
+ */
+ public boolean isResourceRequest(FacesContext context) {
+
+ Boolean isResourceRequest = (Boolean)
+ RequestStateManager.get(context,
+ RequestStateManager.RESOURCE_REQUEST);
+ if (isResourceRequest == null) {
+ String resourceId = normalizeResourceRequest(context);
+ isResourceRequest = (resourceId != null
+ ? resourceId.startsWith(RESOURCE_IDENTIFIER)
+ : Boolean.FALSE);
+ RequestStateManager.set(context,
+ RequestStateManager.RESOURCE_REQUEST,
+ isResourceRequest);
+ }
+
+ return (isResourceRequest);
+
+ }
+
+ @Override
+ public String getRendererTypeForResourceName(String resourceName) {
+ String rendererType = null;
+
+ String contentType = getContentType(FacesContext.getCurrentInstance(),
+ resourceName);
+ if (null != contentType) {
+ contentType = contentType.toLowerCase();
+ if (-1 != contentType.indexOf("javascript")) {
+ rendererType = "javax.faces.resource.Script";
+ }
+ else if (-1 != contentType.indexOf("css")) {
+ rendererType = "javax.faces.resource.Stylesheet";
+ }
+ }
+ return rendererType;
+ }
+
+
+
+
+
+ /**
+ * @see
javax.faces.application.ResourceHandler#handleResourceRequest(javax.faces.context.FacesContext)
+ */
+ public void handleResourceRequest(FacesContext context) throws IOException {
+
+ String resourceId = normalizeResourceRequest(context);
+ // handleResourceRequest called for a non-resource request,
+ // bail out.
+ if (resourceId == null) {
+ return;
+ }
+
+ ExternalContext extContext = context.getExternalContext();
+
+ if (isExcluded(resourceId)) {
+ extContext.setResponseStatus(HttpServletResponse.SC_NOT_FOUND);
+ return;
+ }
+
+ assert (null != resourceId);
+ assert (resourceId.startsWith(RESOURCE_IDENTIFIER));
+
+ Resource resource = null;
+ String resourceName = null;
+ String libraryName = null;
+ if (ResourceHandler.RESOURCE_IDENTIFIER.length() < resourceId.length()) {
+ resourceName = resourceId.substring(RESOURCE_IDENTIFIER.length() + 1);
+ assert(resourceName != null);
+ libraryName = context.getExternalContext().getRequestParameterMap()
+ .get("ln");
+ resource = createResource(resourceName, libraryName);
+ }
+
+ if (resource != null) {
+ if (resource.userAgentNeedsUpdate(context)) {
+ ReadableByteChannel resourceChannel = null;
+ WritableByteChannel out = null;
+ ByteBuffer buf = allocateByteBuffer();
+ try {
+ InputStream in = resource.getInputStream();
+ if (in == null) {
+ send404(context, resourceName, libraryName, true);
+ return;
+ }
+ resourceChannel =
+ Channels.newChannel(resource.getInputStream());
+ out = Channels.newChannel(extContext.getResponseOutputStream());
+ extContext.setResponseBufferSize(buf.capacity());
+ String contentType = resource.getContentType();
+ if (contentType != null) {
+ extContext.setResponseContentType(resource.getContentType());
+ }
+ handleHeaders(context, resource);
+
+ int size = 0;
+ for (int thisRead = resourceChannel.read(buf), totalWritten = 0;
+ thisRead != -1;
+ thisRead = resourceChannel.read(buf)) {
+
+ buf.rewind();
+ buf.limit(thisRead);
+ do {
+ totalWritten += out.write(buf);
+ } while (totalWritten < size);
+ buf.clear();
+ size += thisRead;
+
+ }
+
+ extContext.setResponseContentLength(size);
+
+ } catch (IOException ioe) {
+ send404(context, resourceName, libraryName, ioe, true);
+ } finally {
+ if (out != null) {
+ out.close();
+ }
+ if (resourceChannel != null) {
+ resourceChannel.close();
+ }
+ }
+ } else {
+ send304(context);
+ }
+
+ } else {
+ // already logged elsewhere
+ send404(context, resourceName, libraryName, false);
+ }
+
+ }
+
+
+ private void send404(FacesContext ctx,
+ String resourceName,
+ String libraryName,
+ boolean logMessage) {
+
+ send404(ctx, resourceName, libraryName, null, logMessage);
+
+ }
+
+
+ private void send404(FacesContext ctx,
+ String resourceName,
+ String libraryName,
+ Throwable t,
+ boolean logMessage) {
+
+ ctx.getExternalContext().setResponseStatus(HttpServletResponse.SC_NOT_FOUND);
+ if (logMessage) {
+ logMissingResource(ctx, resourceName, libraryName, t);
+ }
+
+
+ }
+
+
+ private void send304(FacesContext ctx) {
+
+ ctx.getExternalContext().setResponseStatus(HttpServletResponse.SC_NOT_MODIFIED);
+
+ }
+
+
+
+ // ------------------------------------------------- Package Private Methods
+
+
+ /**
+ * This method is leveraged by {@link ResourceImpl} to detemine if a resource
+ * has been upated. In short, a resource has been updated if the timestamp
+ * is newer than the timestamp of the ResourceHandler creation time.
+ * @return the time when the ResourceHandler was instantiated (in milliseconds)
+ */
+ long getCreationTime() {
+
+ return creationTime;
+
+ }
+
+
+ /**
+ * This method is here soley for the purpose of unit testing and will
+ * not be invoked during normal runtime.
+ * @param creationTime the time in milliseconds
+ */
+ void setCreationTime(long creationTime) {
+
+ this.creationTime = creationTime;
+
+ }
+
+
+ /**
+ * Utility method leveraged by ResourceImpl to reduce the cost of
+ * looking up the WebConfiguration per-instance.
+ * @return the {@link WebConfiguration} for this application
+ */
+ WebConfiguration getWebConfig() {
+
+ return webconfig;
+
+ }
+
+
+ // --------------------------------------------------------- Private Methods
+
+
+ /**
+ * Log a message indicating a particular resource (reference by name and/or
+ * library) could not be found. If this was due to an exception, the exception
+ * provided will be logged as well.
+ *
+ * @param ctx the {@link FacesContext} for the current request
+ * @param resourceName the resource name
+ * @param libraryName the resource library
+ * @param t the exception caught when attempting to find the resource
+ */
+ private void logMissingResource(FacesContext ctx,
+ String resourceName,
+ String libraryName,
+ Throwable t) {
+
+ Level level;
+ if (!ctx.isProjectStage(ProjectStage.Production)) {
+ level = Level.WARNING;
+ } else {
+ level = ((t != null) ? Level.WARNING : Level.FINE);
+ }
+
+ if (libraryName != null) {
+ if (LOGGER.isLoggable(level)) {
+ LOGGER.log(level,
+
"jsf.application.resource.unable_to_serve_from_library",
+ new Object[]{resourceName, libraryName});
+ if (t != null) {
+ LOGGER.log(level, "", t);
+ }
+ }
+ } else {
+ if (LOGGER.isLoggable(level)) {
+ LOGGER.log(level,
+ "jsf.application.resource.unable_to_serve",
+ new Object[]{resourceName});
+ if (t != null) {
+ LOGGER.log(level, "", t);
+ }
+ }
+ }
+
+ }
+
+
+ /**
+ * @param resourceName the resource of interest. The resourceName in question
+ * may consist of zero or more path elements such that resourceName could
+ * be something like path1/path2/resource.jpg or resource.jpg
+ * @return the content type for this resource
+ */
+ private String getContentType(FacesContext ctx, String resourceName) {
+
+ return ctx.getExternalContext().getMimeType(resourceName);
+
+ }
+
+
+ /**
+ * Normalize the request path to exclude JSF invocation information.
+ * If the FacesServlet servicing this request was prefix mapped, then
+ * the path to the FacesServlet will be removed.
+ * If the FacesServlet servicing this request was extension mapped, then
+ * the extension will be trimmed off.
+ * @param context the <code>FacesContext</code> for the current request
+ * @return the request path without JSF invocation information
+ */
+ private String normalizeResourceRequest(FacesContext context) {
+
+ String path;
+ String facesServletMapping = Util.getFacesMapping(context);
+ // If it is extension mapped
+ if (!Util.isPrefixMapped(facesServletMapping)) {
+ path = context.getExternalContext().getRequestServletPath();
+ // strip off the extension
+ int i = path.lastIndexOf(".");
+ if (0 < i) {
+ path = path.substring(0, i);
+ }
+ } else {
+ path = context.getExternalContext().getRequestPathInfo();
+ }
+ return path;
+
+ }
+
+
+ /**
+ * @param resourceId the normalized request path as returned by
+ * {@link #normalizeResourceRequest(javax.faces.context.FacesContext)}
+ * @return <code>true</code> if the request matces an excluded resource,
+ * otherwise <code>false</code>
+ */
+ private boolean isExcluded(String resourceId) {
+ for (Pattern pattern : excludePatterns) {
+ if (pattern.matcher(resourceId).matches()) {
+ return true;
+ }
+ }
+ return false;
+ }
+
+
+ /**
+ * Initialize the exclusions for this application.
+ * If no explicit exclusions are configured, the defaults of
+ * <ul>
+ * <li>.class</li>
+ * <li>.properties</li>
+ * <li>.xhtml</li>
+ * <li>.jsp</li>
+ * <li>.jspx</li>
+ * <ul>
+ * will be used.
+ */
+ private void initExclusions() {
+
+ String excludesParam = webconfig
+ .getOptionValue(ResourceExcludes);
+ String[] patterns = Util.split(excludesParam, " ");
+ excludePatterns = new ArrayList<Pattern>(patterns.length);
+ for (String pattern : patterns) {
+ excludePatterns.add(Pattern.compile(".*\\" + pattern));
+ }
+
+ }
+
+ private void initMaxAge() {
+
+ maxAge = Long.parseLong(webconfig.getOptionValue(DefaultResourceMaxAge));
+
+ }
+
+
+ private void handleHeaders(FacesContext ctx,
+ Resource resource) {
+
+ ExternalContext extContext = ctx.getExternalContext();
+ for (Map.Entry<String, String> cur :
+ resource.getResponseHeaders().entrySet()) {
+ extContext.setResponseHeader(cur.getKey(), cur.getValue());
+ }
+
+ }
+
+ private ByteBuffer allocateByteBuffer() {
+
+ int size;
+ try {
+ size = Integer.parseInt(webconfig.getOptionValue(ResourceBufferSize));
+ } catch (NumberFormatException nfe) {
+ if (LOGGER.isLoggable(Level.WARNING)) {
+ LOGGER.log(Level.WARNING,
+
"jsf.application.resource.invalid_resource_buffer_size",
+ new Object[] {
+ webconfig.getOptionValue(ResourceBufferSize),
+ ResourceBufferSize.getQualifiedName(),
+ ResourceBufferSize.getDefaultValue()
+ });
+ }
+ size = Integer.parseInt(ResourceBufferSize.getDefaultValue());
+ }
+ return ByteBuffer.allocate(size);
+
+ }
+}
+
Added:
branches/sandbox/3.3.X_JSF2/framework/test/src/main/java/org/ajax4jsf/tests/URLBuilder.java
===================================================================
---
branches/sandbox/3.3.X_JSF2/framework/test/src/main/java/org/ajax4jsf/tests/URLBuilder.java
(rev 0)
+++
branches/sandbox/3.3.X_JSF2/framework/test/src/main/java/org/ajax4jsf/tests/URLBuilder.java 2009-11-13
13:21:50 UTC (rev 15876)
@@ -0,0 +1,323 @@
+package org.ajax4jsf.tests;
+
+import com.sun.faces.el.ELUtils;
+import com.sun.faces.util.Util;
+
+import javax.faces.context.FacesContext;
+import javax.faces.application.Application;
+import java.io.UnsupportedEncodingException;
+import java.net.URLEncoder;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * <p>The <strong>UrlBuilder</strong> provides a convenient way to
assemble a URL. It
+ * follows the standard Builder Pattern. A seed URL is provided, which is broken
+ * into parts to allow for dynamic assembly. When the URL is to be build, a call
+ * to createUrl() assembles the parts into a relative URL. This class should
+ * be extended if the developer wishes to have it deal with absolute URLs.</p>
+ *
+ * <p>Note that this class is optimized to parse the query string lazily so as
+ * to avoid unnecessary work if the seed URL differs little from the URL to be
+ * built.</p>
+ */
+class UrlBuilder {
+ public static final String QUERY_STRING_SEPARATOR = "?";
+ public static final String PARAMETER_PAIR_SEPARATOR = "&";
+ public static final String PARAMETER_NAME_VALUE_SEPARATOR = "=";
+ public static final String FRAGMENT_SEPARATOR = "#";
+ public static final String DEFAULT_ENCODING = "UTF-8";
+
+ private static final List<String> NULL_LIST = Arrays.asList((String) null);
+
+ private StringBuilder url;
+ private String path;
+ private String queryString;
+ private String fragment;
+ private Map<String, List<String>> parameters;
+ private String encoding;
+ private FacesContext ctx;
+ private Application app;
+
+
+ // ------------------------------------------------------------ Constructors
+
+
+ public UrlBuilder(String url, String encoding) {
+ if (url == null || url.trim().length() == 0) {
+ throw new IllegalArgumentException("Url cannot be empty");
+ }
+ this.url = new StringBuilder(url.length() * 2);
+ extractSegments(url);
+ this.encoding = encoding;
+ // PERF TL lookup per-instance
+ ctx = FacesContext.getCurrentInstance();
+ app = ctx.getApplication();
+ }
+
+
+ public UrlBuilder(String url) {
+ this(url, DEFAULT_ENCODING);
+ }
+
+
+ // ---------------------------------------------------------- Public Methods
+
+
+ public UrlBuilder addParameters(String name, List<String> values) {
+ if (name == null || name.trim().length() == 0) {
+ throw new IllegalArgumentException("Parameter name cannot be
empty");
+ }
+ parseQueryString();
+ addValuesToParameter(name.trim(), values, true);
+
+ return this;
+ }
+
+
+ public UrlBuilder addParameters(Map<String, List<String>> params) {
+ if (params != null && !params.isEmpty()) {
+ parseQueryString();
+ for (Map.Entry<String, List<String>> entry : params.entrySet())
{
+ if (entry.getKey() == null || entry.getKey().trim().length() == 0) {
+ throw new IllegalArgumentException("Parameter name cannot be
empty");
+ }
+ List<String> values = entry.getValue();
+ evaluateExpressions(values);
+ addValuesToParameter(entry.getKey().trim(), values, true);
+ }
+ }
+
+ return this;
+ }
+
+
+ public UrlBuilder setPath(String path) {
+ if (path == null || path.trim().length() == 0) {
+ throw new IllegalArgumentException("Path cannot be empty");
+ }
+ this.path = path;
+ return this;
+ }
+
+
+ /**
+ * Setting a query string consecutively will replace all but the last one.
Otherwise,
+ * the name/value pairs in the query string contribute to the parameters already
established.
+ */
+ public UrlBuilder setQueryString(String queryString) {
+ this.queryString = queryString;
+ cleanQueryString();
+ return this;
+ }
+
+
+ /**
+ * The fragment is appended at the end of the url after a hash mark. It represents
+ * the fragement of the document that should be brought into focus when the document
+ * is rendered. Setting the fragment replaces the previous value.
+ */
+ public UrlBuilder setFragment(String fragment) {
+ this.fragment = fragment;
+ cleanFragment();
+ return this;
+ }
+
+
+ public String createUrl() {
+ appendPath();
+ appendQueryString();
+ appendFragment();
+ return url.toString();
+ }
+
+
+ // ------------------------------------------------------- Protected Methods
+
+
+ protected String getPath() {
+ return path;
+ }
+
+
+ protected Map<String, List<String>> getParameters() {
+ parseQueryString();
+ return parameters;
+ }
+
+
+ protected void parseQueryString() {
+ if (parameters == null) {
+ parameters = new LinkedHashMap<String, List<String>>();
+ }
+
+ // if query string is null, then it has been parsed into parameters
+ if (queryString == null) {
+ return;
+ }
+
+ String[] pairs = Util.split(queryString, PARAMETER_PAIR_SEPARATOR);
+ for (String pair : pairs) {
+ String[] nameAndValue = Util.split(pair, PARAMETER_NAME_VALUE_SEPARATOR);
+ // ignore malformed pair
+ if (nameAndValue.length != 2
+ || nameAndValue[0].trim().length() == 0) {
+ continue;
+ }
+
+ addValueToParameter(nameAndValue[0], nameAndValue[1], false);
+ }
+
+ queryString = null;
+ }
+
+
+ protected void appendPath() {
+ url.append(path);
+ }
+
+
+ protected void appendQueryString() {
+ if (parameters != null) {
+ // parse residual query string
+ parseQueryString();
+ String nextSeparatorChar = QUERY_STRING_SEPARATOR;
+ for (Map.Entry<String, List<String>> param :
parameters.entrySet()) {
+ for (String value : param.getValue()) {
+ url.append(nextSeparatorChar);
+ url.append(param.getKey());
+ url.append(PARAMETER_NAME_VALUE_SEPARATOR);
+ if (encoding != null) {
+ try {
+ url.append(URLEncoder.encode(value, encoding));
+ } catch (UnsupportedEncodingException ex) {
+ throw new RuntimeException(ex);
+ }
+ }
+ else {
+ url.append(value);
+ }
+ nextSeparatorChar = PARAMETER_PAIR_SEPARATOR;
+ }
+ }
+ }
+ else if (queryString != null) {
+ url.append(QUERY_STRING_SEPARATOR).append(queryString);
+ }
+ }
+
+
+ protected void appendFragment() {
+ if (fragment != null) {
+ url.append(FRAGMENT_SEPARATOR).append(fragment);
+ }
+ }
+
+
+ protected void extractSegments(String url) {
+ int fragmentIndex = url.indexOf(FRAGMENT_SEPARATOR);
+ if (fragmentIndex != -1) {
+ fragment = url.substring(fragmentIndex + 1);
+ cleanFragment();
+ url = url.substring(0, fragmentIndex);
+ }
+
+ int queryStringIndex = url.indexOf(QUERY_STRING_SEPARATOR);
+ if (queryStringIndex != -1) {
+ queryString = url.substring(queryStringIndex + 1);
+ cleanQueryString();
+ path = url.substring(0, queryStringIndex);
+ }
+ else {
+ path = url;
+ }
+ }
+
+
+ protected void addValueToParameter(String name, String value, boolean replace) {
+ List<String> values = new ArrayList<String>(value == null ? 0 : 1);
+ if (value != null) {
+ values.add(value);
+ }
+ addValuesToParameter(name, values, replace);
+ }
+
+
+ protected void addValuesToParameter(String name, List<String> valuesRef,
boolean replace) {
+ List<String> values = new ArrayList<String>();
+ if (valuesRef != null) {
+ values.addAll(valuesRef);
+ values.removeAll(NULL_LIST);
+ }
+
+ if (replace) {
+ parameters.put(name, values);
+ }
+ else {
+ List<String> currentValues = parameters.get(name);
+ if (currentValues == null) {
+ currentValues = new ArrayList<String>(1);
+ parameters.put(name, currentValues);
+ }
+ currentValues.addAll(values);
+ }
+ }
+
+
+ // --------------------------------------------------------- Private Methods
+
+
+ private void evaluateExpressions(List<String> values) {
+ if (!values.isEmpty()) {
+ for (int i = 0, len = values.size(); i < len; i++) {
+ String value = values.get(i);
+ if (value != null) {
+ value = value.trim();
+ if (ELUtils.isExpression(value)) {
+ value = app.evaluateExpressionGet(ctx,
+ value,
+ String.class);
+ }
+ values.set(i, value);
+ }
+ }
+ }
+ }
+
+
+ private void cleanFragment() {
+ if (fragment != null) {
+ String f = fragment;
+ f = f.trim();
+ if (f.startsWith(FRAGMENT_SEPARATOR)) {
+ f = f.substring(1);
+ }
+
+ if (f.length() == 0) {
+ f = null;
+ }
+
+ fragment = f;
+ }
+ }
+
+
+ private void cleanQueryString() {
+ if (queryString != null) {
+ String q = queryString;
+ q = q.trim();
+ if (q.startsWith(QUERY_STRING_SEPARATOR)) {
+ q = q.substring(1);
+ }
+
+ if (q.length() == 0) {
+ q = null;
+ }
+ queryString = q;
+ }
+ }
+
+}
\ No newline at end of file
Modified: branches/sandbox/3.3.X_JSF2/framework/test/src/test/resources/WEB-INF/web.xml
===================================================================
---
branches/sandbox/3.3.X_JSF2/framework/test/src/test/resources/WEB-INF/web.xml 2009-11-12
18:13:33 UTC (rev 15875)
+++
branches/sandbox/3.3.X_JSF2/framework/test/src/test/resources/WEB-INF/web.xml 2009-11-13
13:21:50 UTC (rev 15876)
@@ -10,7 +10,6 @@
<param-name>javax.faces.CONFIG_FILES</param-name>
<param-value>/WEB-INF/faces-config.xml</param-value>
</context-param>
-
<filter>
<description>Convert HTML to XML</description>
<display-name>Filter</display-name>
Modified: branches/sandbox/3.3.X_JSF2/pom.xml
===================================================================
--- branches/sandbox/3.3.X_JSF2/pom.xml 2009-11-12 18:13:33 UTC (rev 15875)
+++ branches/sandbox/3.3.X_JSF2/pom.xml 2009-11-13 13:21:50 UTC (rev 15876)
@@ -93,8 +93,8 @@
<module>cdk</module>
<module>framework</module>
<module>ui</module>
- <module>extensions</module>
- <module>docs</module>
+ <!--<module>extensions</module>-->
+ <!--<module>docs</module>-->
<module>ui/assembly</module>
<module>samples</module>
<!--
@@ -315,26 +315,6 @@
</reporting>
</profile>
<profile>
- <id>jsf2</id>
- <properties>
- <jsf.api.groupId>com.sun.faces</jsf.api.groupId>
- <jsf.impl.groupId>com.sun.faces</jsf.impl.groupId>
- <jsf.api.version>2.0.1</jsf.api.version>
- <jsf.impl.version>2.0.1</jsf.impl.version>
- </properties>
-
- </profile>
-<profile>
- <id>jsf1.2</id>
- <properties>
- <jsf.api.groupId>javax.faces</jsf.api.groupId>
- <jsf.impl.groupId>javax.faces</jsf.impl.groupId>
- <jsf.api.version>1.2_12</jsf.api.version>
- <jsf.impl.version>1.2_12</jsf.impl.version>
- </properties>
-
- </profile>
- <profile>
<id>beet</id>
<activation>
<property>
Modified: branches/sandbox/3.3.X_JSF2/samples/pom.xml
===================================================================
--- branches/sandbox/3.3.X_JSF2/samples/pom.xml 2009-11-12 18:13:33 UTC (rev 15875)
+++ branches/sandbox/3.3.X_JSF2/samples/pom.xml 2009-11-13 13:21:50 UTC (rev 15876)
@@ -8,6 +8,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>org.richfaces</groupId>
<artifactId>samples</artifactId>
+ <version>3.3.3-SNAPSHOT</version>
<packaging>pom</packaging>
<name>RichFaces Components Examples</name>
<
url>http://labs.jboss.com/jbossrichfaces/samples</url>
@@ -66,14 +67,9 @@
<dependency>
<groupId>org.richfaces.framework</groupId>
<artifactId>richfaces-impl</artifactId>
- <version>${project.version}</version>
+ <version>3.3.3-jsf2-SNAPSHOT</version>
</dependency>
<dependency>
- <groupId>com.sun.facelets</groupId>
- <artifactId>jsf-facelets</artifactId>
- <version>1.1.14</version>
- </dependency>
- <dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<version>1.0</version>
@@ -180,17 +176,6 @@
<version>2.1</version>
<scope>provided</scope>
</dependency>
- <dependency>
- <groupId>javax.faces</groupId>
- <artifactId>jsf-api</artifactId>
- <version>1.2_12</version>
- </dependency>
- <dependency>
- <groupId>javax.faces</groupId>
- <artifactId>jsf-impl</artifactId>
- <version>1.2_12</version>
- <scope>runtime</scope>
- </dependency>
</dependencies>
</profile>
<profile>
@@ -235,17 +220,6 @@
<version>2.0</version>
<scope>provided</scope>
</dependency>
- <dependency>
- <groupId>javax.faces</groupId>
- <artifactId>jsf-api</artifactId>
- <version>1.2_12</version>
- </dependency>
- <dependency>
- <groupId>javax.faces</groupId>
- <artifactId>jsf-impl</artifactId>
- <version>1.2_12</version>
- <scope>runtime</scope>
- </dependency>
</dependencies>
</profile>
<profile>
@@ -281,17 +255,6 @@
<scope>provided</scope>
</dependency>
<dependency>
- <groupId>javax.faces</groupId>
- <artifactId>jsf-api</artifactId>
- <version>1.2_12</version>
- </dependency>
- <dependency>
- <groupId>javax.faces</groupId>
- <artifactId>jsf-impl</artifactId>
- <version>1.2_12</version>
- <scope>runtime</scope>
- </dependency>
- <dependency>
<groupId>javax.el</groupId>
<artifactId>el-api</artifactId>
<version>1.0</version>
@@ -306,6 +269,39 @@
</dependencies>
</profile>
<profile>
+ <id>jsf2</id>
+ <dependencies>
+ <dependency>
+ <groupId>com.sun.faces</groupId>
+ <artifactId>jsf-api</artifactId>
+ <version>2.0.1</version>
+ <scope>provided</scope>
+ </dependency><dependency>
+ <groupId>com.sun.faces</groupId>
+ <artifactId>jsf-impl</artifactId>
+ <version>2.0.1</version>
+ <scope>provided</scope>
+ </dependency>
+ </dependencies>
+ </profile>
+<profile>
+ <id>jsf1.2</id>
+ <dependencies>
+ <dependency>
+ <groupId>javax.faces</groupId>
+ <artifactId>jsf-api</artifactId>
+ <version>1.2_12</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>javax.faces</groupId>
+ <artifactId>jsf-impl</artifactId>
+ <version>1.2_12</version>
+ <scope>provided</scope>
+ </dependency>
+ </dependencies>
+ </profile>
+ <profile>
<id>jboss42</id>
<build>
<defaultGoal>jetty:run</defaultGoal>
@@ -334,18 +330,6 @@
<version>2.0</version>
<scope>provided</scope>
</dependency>
- <dependency>
- <groupId>javax.faces</groupId>
- <artifactId>jsf-impl</artifactId>
- <version>1.2_12</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>javax.faces</groupId>
- <artifactId>jsf-api</artifactId>
- <version>1.2_12</version>
- <scope>provided</scope>
- </dependency>
</dependencies>
</profile>
<profile>
@@ -371,7 +355,7 @@
<dependency>
<groupId>org.richfaces.framework</groupId>
<artifactId>richfaces-impl</artifactId>
- <version>${project.version}</version>
+ <version>3.3.3-jsf2-SNAPSHOT</version>
<exclusions>
<exclusion>
<groupId>javax.faces</groupId>
@@ -492,12 +476,12 @@
</profile>
</profiles>
<modules>
- <module>skins</module>
+ <!--<module>skins</module>
<module>laguna</module>
<module>glassX</module>
- <module>darkX</module>
+ <module>darkX</module>-->
<module>richfaces-demo</module>
- <module>themes</module>
- <module>violetRays</module>
+ <!--<module>themes</module>-->
+ <!--<module>violetRays</module>-->
</modules>
</project>
\ No newline at end of file
Modified: branches/sandbox/3.3.X_JSF2/samples/richfaces-demo/pom.xml
===================================================================
--- branches/sandbox/3.3.X_JSF2/samples/richfaces-demo/pom.xml 2009-11-12 18:13:33 UTC
(rev 15875)
+++ branches/sandbox/3.3.X_JSF2/samples/richfaces-demo/pom.xml 2009-11-13 13:21:50 UTC
(rev 15876)
@@ -1,14 +1,10 @@
<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">
- <parent>
- <artifactId>samples</artifactId>
- <groupId>org.richfaces</groupId>
- <version>3.3.3-SNAPSHOT</version>
- </parent>
<modelVersion>4.0.0</modelVersion>
<groupId>org.richfaces.samples</groupId>
<artifactId>richfaces-demo</artifactId>
+ <version>3.3.3-SNAPSHOT</version>
<packaging>war</packaging>
<name>richfaces-demo Maven Webapp</name>
@@ -45,7 +41,7 @@
<artifactItem>
<groupId>org.richfaces.ui</groupId>
<artifactId>richfaces-ui</artifactId>
- <version>${project.version}</version>
+ <version>3.3.3-jsf2-SNAPSHOT</version>
</artifactItem>
</artifactItems>
<outputDirectory>${project.build.directory}/richfaces</outputDirectory>
@@ -181,21 +177,19 @@
<version>2.0</version>
<scope>provided</scope>
</dependency>
- <dependency>
- <groupId>javax.faces</groupId>
- <artifactId>jsf-api</artifactId>
- <version>1.2_12</version>
- </dependency>
- <dependency>
- <groupId>javax.faces</groupId>
- <artifactId>jsf-impl</artifactId>
- <version>1.2_12</version>
- <scope>runtime</scope>
- </dependency>
</dependencies>
</profile>
</profiles>
<dependencies>
+ <dependency>
+ <groupId>com.sun.faces</groupId>
+ <artifactId>jsf-api</artifactId>
+ <version>2.0.1</version>
+ </dependency><dependency>
+ <groupId>com.sun.faces</groupId>
+ <artifactId>jsf-impl</artifactId>
+ <version>2.0.1</version>
+ </dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
@@ -207,24 +201,9 @@
<version>1.4.2</version>
</dependency>
<dependency>
- <groupId>org.richfaces.samples</groupId>
- <artifactId>laguna</artifactId>
- <version>3.3.3-SNAPSHOT</version>
- </dependency>
- <dependency>
- <groupId>org.richfaces.samples</groupId>
- <artifactId>glassX</artifactId>
- <version>3.3.3-SNAPSHOT</version>
- </dependency>
- <dependency>
- <groupId>org.richfaces.samples</groupId>
- <artifactId>darkX</artifactId>
- <version>3.3.3-SNAPSHOT</version>
- </dependency>
- <dependency>
<groupId>org.richfaces.ui</groupId>
<artifactId>richfaces-ui</artifactId>
- <version>3.3.3-SNAPSHOT</version>
+ <version>3.3.3-jsf2-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.uwyn</groupId>
@@ -258,12 +237,6 @@
<artifactId>nekohtml</artifactId>
<version>0.9.5</version>
<scope>runtime</scope>
- <exclusions>
- <exclusion>
- <artifactId>xerces</artifactId>
- <groupId>xerces</groupId>
- </exclusion>
- </exclusions>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
@@ -310,18 +283,8 @@
<groupId>javax.servlet</groupId>
</exclusion>
</exclusions>
- </dependency>
+ </dependency>
<dependency>
- <groupId>org.richfaces.samples</groupId>
- <artifactId>themes</artifactId>
- <version>3.3.3-SNAPSHOT</version>
- </dependency>
- <dependency>
- <groupId>org.richfaces.samples</groupId>
- <artifactId>violetRays</artifactId>
- <version>3.3.3-SNAPSHOT</version>
- </dependency>
- <dependency>
<groupId>javax.persistence</groupId>
<artifactId>persistence-api</artifactId>
<version>1.0</version>
Modified:
branches/sandbox/3.3.X_JSF2/samples/richfaces-demo/src/main/webapp/WEB-INF/web.xml
===================================================================
---
branches/sandbox/3.3.X_JSF2/samples/richfaces-demo/src/main/webapp/WEB-INF/web.xml 2009-11-12
18:13:33 UTC (rev 15875)
+++
branches/sandbox/3.3.X_JSF2/samples/richfaces-demo/src/main/webapp/WEB-INF/web.xml 2009-11-13
13:21:50 UTC (rev 15876)
@@ -60,7 +60,12 @@
<param-name>org.richfaces.LoadScriptStrategy</param-name>
<param-value>DEFAULT</param-value>
</context-param>
+ <context-param>
+ <param-name>javax.faces.DISABLE_FACELET_JSF_VIEWHANDLER</param-name>
+ <param-value>true</param-value>
+ </context-param>
+
<listener>
<listener-class>
org.jboss.seam.servlet.SeamListener
Modified:
branches/sandbox/3.3.X_JSF2/samples/richfaces-demo/src/main/webapp/richfaces/dataTable.xhtml
===================================================================
---
branches/sandbox/3.3.X_JSF2/samples/richfaces-demo/src/main/webapp/richfaces/dataTable.xhtml 2009-11-12
18:13:33 UTC (rev 15875)
+++
branches/sandbox/3.3.X_JSF2/samples/richfaces-demo/src/main/webapp/richfaces/dataTable.xhtml 2009-11-13
13:21:50 UTC (rev 15876)
@@ -15,7 +15,7 @@
<rich:tab label="Extended Data Model" name="dataModel">
<ui:include src="/richfaces/dataTable/extended-data-model.xhtml"/>
</rich:tab>
- <rich:tab label="Modifiable Data Model"
name="modifiableDataModel">
+ <rich:tab actionListener="#{conversation.start()}" label="Modifiable
Data Model" name="modifiableDataModel">
<ui:include src="/richfaces/dataTable/modifiableModel.xhtml"/>
</rich:tab>
<rich:tab label="Edit Table with ModalPanel"
name="editDataTable">
Modified:
branches/sandbox/3.3.X_JSF2/samples/richfaces-demo/src/main/webapp/templates/include/components-group.xhtml
===================================================================
---
branches/sandbox/3.3.X_JSF2/samples/richfaces-demo/src/main/webapp/templates/include/components-group.xhtml 2009-11-12
18:13:33 UTC (rev 15875)
+++
branches/sandbox/3.3.X_JSF2/samples/richfaces-demo/src/main/webapp/templates/include/components-group.xhtml 2009-11-13
13:21:50 UTC (rev 15876)
@@ -7,16 +7,16 @@
<ui:composition>
<table border="0" cellpadding="0" cellspacing="1">
<tbody>
- <a4j:repeat var="component" value="#{components}">
- <tr class="#{component.current?'active':'unactive'}"
onmouseover="this.className='active'"
onmouseout="this.className='#{component.current?'active':'unactive'}'">
- <td class="ico"><div style="width: 16px;height:
16px;"><h:graphicImage value="#{component.iconImage}"
width="16" height="16" alt="" border="0"
/><h:graphicImage value="/images/icons/ico_new_item.gif"
rendered="#{component.newComponent}" style="position:relative; top:-6px;
left:10px;" alt="" width="10"
height="10"/></div></td>
- <td class="text #{component.newComponent?'bold':''}"
width="100%">
- <h:outputLink style="display:block;height:20px"
value="#{component.contextRelativeDemoLocation}">
+ <a4j:repeat var="component2" value="#{components}">
+ <tr class="#{component2.current?'active':'unactive'}"
onmouseover="this.className='active'"
onmouseout="this.className='#{component2.current?'active':'unactive'}'">
+ <td class="ico"><div style="width: 16px;height:
16px;"><h:graphicImage value="#{component2.iconImage}"
width="16" height="16" alt="" border="0"
/><h:graphicImage value="/images/icons/ico_new_item.gif"
rendered="#{component2.newComponent}" style="position:relative; top:-6px;
left:10px;" alt="" width="10"
height="10"/></div></td>
+ <td class="text #{component2.newComponent?'bold':''}"
width="100%">
+ <h:outputLink style="display:block;height:20px"
value="#{component2.contextRelativeDemoLocation}">
<span style="display:block;padding-top:3px;text-decoration : none; color :
#000000;">
- #{component.name}
+ #{component2.name}
</span>
- <f:param value="#{component.id}" name="c"/>
- <f:param value="#{component.activeTab}" name="tab"/>
+ <f:param value="#{component2.id}" name="c"/>
+ <f:param value="#{component2.activeTab}" name="tab"/>
</h:outputLink>
</td>
</tr>
Modified: branches/sandbox/3.3.X_JSF2/ui/assembly/pom.xml
===================================================================
--- branches/sandbox/3.3.X_JSF2/ui/assembly/pom.xml 2009-11-12 18:13:33 UTC (rev 15875)
+++ branches/sandbox/3.3.X_JSF2/ui/assembly/pom.xml 2009-11-13 13:21:50 UTC (rev 15876)
@@ -7,6 +7,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>org.richfaces.ui</groupId>
<artifactId>richfaces-ui</artifactId>
+ <version>3.3.3-jsf2-SNAPSHOT</version>
<name>RichFaces JSF components library</name>
<packaging>jar</packaging>
@@ -105,7 +106,7 @@
<plugin>
<groupId>org.richfaces.cdk</groupId>
<artifactId>maven-javascript-plugin</artifactId>
- <version>${project.version}</version>
+ <version>3.3.3-SNAPSHOT</version>
<executions>
<execution>
<goals>
Modified: branches/sandbox/3.3.X_JSF2/ui/beanValidator/pom.xml
===================================================================
--- branches/sandbox/3.3.X_JSF2/ui/beanValidator/pom.xml 2009-11-12 18:13:33 UTC (rev
15875)
+++ branches/sandbox/3.3.X_JSF2/ui/beanValidator/pom.xml 2009-11-13 13:21:50 UTC (rev
15876)
@@ -46,7 +46,7 @@
<dependency>
<groupId>org.richfaces.framework</groupId>
<artifactId>richfaces-impl</artifactId>
- <version>3.3.3-SNAPSHOT</version>
+ <version>3.3.3-jsf2-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.richfaces.ui</groupId>
Modified:
branches/sandbox/3.3.X_JSF2/ui/beanValidator/src/main/java/org/richfaces/component/html/HtmlInputSecret.java
===================================================================
---
branches/sandbox/3.3.X_JSF2/ui/beanValidator/src/main/java/org/richfaces/component/html/HtmlInputSecret.java 2009-11-12
18:13:33 UTC (rev 15875)
+++
branches/sandbox/3.3.X_JSF2/ui/beanValidator/src/main/java/org/richfaces/component/html/HtmlInputSecret.java 2009-11-13
13:21:50 UTC (rev 15876)
@@ -76,7 +76,7 @@
}
}
- private static boolean isEmpty(Object value) {
+ public static boolean isEmpty(Object value) {
if (value == null) {
return true;
Modified:
branches/sandbox/3.3.X_JSF2/ui/beanValidator/src/main/java/org/richfaces/component/html/HtmlInputText.java
===================================================================
---
branches/sandbox/3.3.X_JSF2/ui/beanValidator/src/main/java/org/richfaces/component/html/HtmlInputText.java 2009-11-12
18:13:33 UTC (rev 15875)
+++
branches/sandbox/3.3.X_JSF2/ui/beanValidator/src/main/java/org/richfaces/component/html/HtmlInputText.java 2009-11-13
13:21:50 UTC (rev 15876)
@@ -77,7 +77,7 @@
}
- private static boolean isEmpty(Object value) {
+ public static boolean isEmpty(Object value) {
if (value == null) {
return true;
Modified:
branches/sandbox/3.3.X_JSF2/ui/beanValidator/src/main/java/org/richfaces/component/html/HtmlInputTextarea.java
===================================================================
---
branches/sandbox/3.3.X_JSF2/ui/beanValidator/src/main/java/org/richfaces/component/html/HtmlInputTextarea.java 2009-11-12
18:13:33 UTC (rev 15875)
+++
branches/sandbox/3.3.X_JSF2/ui/beanValidator/src/main/java/org/richfaces/component/html/HtmlInputTextarea.java 2009-11-13
13:21:50 UTC (rev 15876)
@@ -77,7 +77,7 @@
}
- private static boolean isEmpty(Object value) {
+ public static boolean isEmpty(Object value) {
if (value == null) {
return (true);
Modified:
branches/sandbox/3.3.X_JSF2/ui/beanValidator/src/test/java/org/richfaces/component/BeanValidatorComponentTest.java
===================================================================
---
branches/sandbox/3.3.X_JSF2/ui/beanValidator/src/test/java/org/richfaces/component/BeanValidatorComponentTest.java 2009-11-12
18:13:33 UTC (rev 15875)
+++
branches/sandbox/3.3.X_JSF2/ui/beanValidator/src/test/java/org/richfaces/component/BeanValidatorComponentTest.java 2009-11-13
13:21:50 UTC (rev 15876)
@@ -63,6 +63,7 @@
form.setId("form");
facesContext.getViewRoot().getChildren().add(form);
input = (HtmlInputText)application.createComponent(HtmlInputText.COMPONENT_TYPE);
+ input.getAttributes().put("onchange", "return true;");
validator =
(UIAjaxValidator)application.createComponent(UIAjaxValidator.COMPONENT_TYPE);
validator.setId("validator");
Modified:
branches/sandbox/3.3.X_JSF2/ui/beanValidator/src/test/java/org/richfaces/component/GraphValidatorComponentTest.java
===================================================================
---
branches/sandbox/3.3.X_JSF2/ui/beanValidator/src/test/java/org/richfaces/component/GraphValidatorComponentTest.java 2009-11-12
18:13:33 UTC (rev 15875)
+++
branches/sandbox/3.3.X_JSF2/ui/beanValidator/src/test/java/org/richfaces/component/GraphValidatorComponentTest.java 2009-11-13
13:21:50 UTC (rev 15876)
@@ -51,6 +51,7 @@
validator.setId("validator");
input = (UIInput) application.createComponent(UIInput.COMPONENT_TYPE);
input.setId("input");
+ input.getAttributes().put("onchange", "return true;");
validator.getChildren().add(input);
form.getChildren().add(validator);
messages = (UIMessages) application
Modified: branches/sandbox/3.3.X_JSF2/ui/calendar/pom.xml
===================================================================
--- branches/sandbox/3.3.X_JSF2/ui/calendar/pom.xml 2009-11-12 18:13:33 UTC (rev 15875)
+++ branches/sandbox/3.3.X_JSF2/ui/calendar/pom.xml 2009-11-13 13:21:50 UTC (rev 15876)
@@ -45,7 +45,7 @@
<dependency>
<groupId>org.richfaces.framework</groupId>
<artifactId>richfaces-impl</artifactId>
- <version>3.3.3-SNAPSHOT</version>
+ <version>3.3.3-jsf2-SNAPSHOT</version>
</dependency>
<dependency>
Modified: branches/sandbox/3.3.X_JSF2/ui/colorPicker/pom.xml
===================================================================
--- branches/sandbox/3.3.X_JSF2/ui/colorPicker/pom.xml 2009-11-12 18:13:33 UTC (rev
15875)
+++ branches/sandbox/3.3.X_JSF2/ui/colorPicker/pom.xml 2009-11-13 13:21:50 UTC (rev
15876)
@@ -49,7 +49,7 @@
<dependency>
<groupId>org.richfaces.framework</groupId>
<artifactId>richfaces-impl</artifactId>
- <version>${project.version}</version>
+ <version>3.3.3-jsf2-SNAPSHOT</version>
</dependency>
</dependencies>
</project>
Modified: branches/sandbox/3.3.X_JSF2/ui/columns/pom.xml
===================================================================
--- branches/sandbox/3.3.X_JSF2/ui/columns/pom.xml 2009-11-12 18:13:33 UTC (rev 15875)
+++ branches/sandbox/3.3.X_JSF2/ui/columns/pom.xml 2009-11-13 13:21:50 UTC (rev 15876)
@@ -43,7 +43,7 @@
<dependency>
<groupId>org.richfaces.framework</groupId>
<artifactId>richfaces-impl</artifactId>
- <version>${project.version}</version>
+ <version>3.3.3-jsf2-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.richfaces.ui</groupId>
Modified: branches/sandbox/3.3.X_JSF2/ui/columns/src/main/config/component/columns.xml
===================================================================
---
branches/sandbox/3.3.X_JSF2/ui/columns/src/main/config/component/columns.xml 2009-11-12
18:13:33 UTC (rev 15875)
+++
branches/sandbox/3.3.X_JSF2/ui/columns/src/main/config/component/columns.xml 2009-11-13
13:21:50 UTC (rev 15876)
@@ -17,7 +17,6 @@
<classname>
org.richfaces.taglib.ColumnsTag
</classname>
- <test/>
</tag>
<taghandler generate="false">
<classname>org.richfaces.taglib.ColumnsHandler</classname>
Modified:
branches/sandbox/3.3.X_JSF2/ui/columns/src/test/java/org/richfaces/jsp/tag/ColumnsJspTagTest.java
===================================================================
---
branches/sandbox/3.3.X_JSF2/ui/columns/src/test/java/org/richfaces/jsp/tag/ColumnsJspTagTest.java 2009-11-12
18:13:33 UTC (rev 15875)
+++
branches/sandbox/3.3.X_JSF2/ui/columns/src/test/java/org/richfaces/jsp/tag/ColumnsJspTagTest.java 2009-11-13
13:21:50 UTC (rev 15876)
@@ -35,6 +35,7 @@
import javax.faces.component.UIComponent;
import javax.faces.webapp.UIComponentClassicTagBase;
+import org.ajax4jsf.tests.AbstractJspTestCase;
import org.ajax4jsf.tests.MockPageContext;
import org.ajax4jsf.tests.MockValueExpression;
import org.apache.shale.test.base.AbstractJsfTestCase;
@@ -48,7 +49,7 @@
* @author Andrey Markavtsov
*
*/
-public class ColumnsJspTagTest extends AbstractJsfTestCase {
+public class ColumnsJspTagTest extends AbstractJspTestCase {
/** Jsp tag to be tested */
private ColumnsTag tag;
@@ -159,13 +160,14 @@
* @see junit.framework.TestCase#setUp()
*/
@Override
- protected void setUp() throws Exception {
+ public void setUp() throws Exception {
super.setUp();
-
+
facesContext.getApplication().addComponent("org.richfaces.Column",
"org.richfaces.component.html.HtmlColumn");
tag = new ColumnsTag();
+ tag.setPageContext(pageContext);
initTag();
initParentTag();
@@ -177,7 +179,7 @@
* @see junit.framework.TestCase#tearDown()
*/
@Override
- protected void tearDown() throws Exception {
+ public void tearDown() throws Exception {
// TODO Auto-generated method stub
super.tearDown();
this.tag = null;
Modified: branches/sandbox/3.3.X_JSF2/ui/combobox/pom.xml
===================================================================
--- branches/sandbox/3.3.X_JSF2/ui/combobox/pom.xml 2009-11-12 18:13:33 UTC (rev 15875)
+++ branches/sandbox/3.3.X_JSF2/ui/combobox/pom.xml 2009-11-13 13:21:50 UTC (rev 15876)
@@ -51,7 +51,7 @@
<dependency>
<groupId>org.richfaces.framework</groupId>
<artifactId>richfaces-impl</artifactId>
- <version>3.3.3-SNAPSHOT</version>
+ <version>3.3.3-jsf2-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.richfaces.ui</groupId>
Modified: branches/sandbox/3.3.X_JSF2/ui/componentControl/pom.xml
===================================================================
--- branches/sandbox/3.3.X_JSF2/ui/componentControl/pom.xml 2009-11-12 18:13:33 UTC (rev
15875)
+++ branches/sandbox/3.3.X_JSF2/ui/componentControl/pom.xml 2009-11-13 13:21:50 UTC (rev
15876)
@@ -50,7 +50,7 @@
<dependency>
<groupId>org.richfaces.framework</groupId>
<artifactId>richfaces-impl</artifactId>
- <version>3.3.3-SNAPSHOT</version>
+ <version>3.3.3-jsf2-SNAPSHOT</version>
</dependency>
</dependencies>
</project>
\ No newline at end of file
Modified:
branches/sandbox/3.3.X_JSF2/ui/componentControl/src/test/java/org/richfaces/component/ComponentControlTest.java
===================================================================
---
branches/sandbox/3.3.X_JSF2/ui/componentControl/src/test/java/org/richfaces/component/ComponentControlTest.java 2009-11-12
18:13:33 UTC (rev 15875)
+++
branches/sandbox/3.3.X_JSF2/ui/componentControl/src/test/java/org/richfaces/component/ComponentControlTest.java 2009-11-13
13:21:50 UTC (rev 15876)
@@ -68,6 +68,7 @@
input = new UIInput();
input.setId("input");
input.setValue("value");
+ input.getAttributes().put("onchange", "return true;");
form.getChildren().add(input);
componentControl = (UIComponentControl)
application.createComponent(UIComponentControl.COMPONENT_TYPE);
Modified: branches/sandbox/3.3.X_JSF2/ui/contextMenu/pom.xml
===================================================================
--- branches/sandbox/3.3.X_JSF2/ui/contextMenu/pom.xml 2009-11-12 18:13:33 UTC (rev
15875)
+++ branches/sandbox/3.3.X_JSF2/ui/contextMenu/pom.xml 2009-11-13 13:21:50 UTC (rev
15876)
@@ -51,7 +51,7 @@
<dependency>
<groupId>org.richfaces.framework</groupId>
<artifactId>richfaces-impl</artifactId>
- <version>3.3.3-SNAPSHOT</version>
+ <version>3.3.3-jsf2-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.richfaces.ui</groupId>
Modified:
branches/sandbox/3.3.X_JSF2/ui/core/src/main/config/component/actionParameter.xml
===================================================================
---
branches/sandbox/3.3.X_JSF2/ui/core/src/main/config/component/actionParameter.xml 2009-11-12
18:13:33 UTC (rev 15875)
+++
branches/sandbox/3.3.X_JSF2/ui/core/src/main/config/component/actionParameter.xml 2009-11-13
13:21:50 UTC (rev 15876)
@@ -34,7 +34,7 @@
<superclass>
org.ajax4jsf.taglib.html.jsp.ActionParamTag
</superclass>
- <test/>
+
<description>
<![CDATA[
A combination of the functionality of two JSF tags,
@@ -52,6 +52,7 @@
<br />
]]>
</description>
+ <test/>
</tag>
<taghandler generate="false">
<classname>org.ajax4jsf.taglib.html.facelets.ActionParamHandler</classname>
Modified:
branches/sandbox/3.3.X_JSF2/ui/core/src/test/java/org/ajax4jsf/component/QueueRendererTest.java
===================================================================
---
branches/sandbox/3.3.X_JSF2/ui/core/src/test/java/org/ajax4jsf/component/QueueRendererTest.java 2009-11-12
18:13:33 UTC (rev 15875)
+++
branches/sandbox/3.3.X_JSF2/ui/core/src/test/java/org/ajax4jsf/component/QueueRendererTest.java 2009-11-13
13:21:50 UTC (rev 15876)
@@ -66,7 +66,9 @@
form = (UIForm) application.createComponent(UIForm.COMPONENT_TYPE);
form.setId("theform");
- form.getChildren().add(application.createComponent(UIInput.COMPONENT_TYPE));
+ UIComponent createComponent = application.createComponent(UIInput.COMPONENT_TYPE);
+ createComponent.getAttributes().put("onchange", "return true;");
+ form.getChildren().add(createComponent);
children.add(form);
}
Modified:
branches/sandbox/3.3.X_JSF2/ui/core/src/test/java/org/ajax4jsf/component/UIAjaxFormTest.java
===================================================================
---
branches/sandbox/3.3.X_JSF2/ui/core/src/test/java/org/ajax4jsf/component/UIAjaxFormTest.java 2009-11-12
18:13:33 UTC (rev 15875)
+++
branches/sandbox/3.3.X_JSF2/ui/core/src/test/java/org/ajax4jsf/component/UIAjaxFormTest.java 2009-11-13
13:21:50 UTC (rev 15876)
@@ -63,6 +63,7 @@
}
};
child.setId("input");
+ child.getAttributes().put("onchange", "return true;");
child.addValidator(new TestAjaxFormValidator());
childInvoked = 0;
child.setId("child");
Added:
branches/sandbox/3.3.X_JSF2/ui/core/src/test/java/org/ajax4jsf/component/URLBuilder.java
===================================================================
Modified:
branches/sandbox/3.3.X_JSF2/ui/core/src/test/resources/org/ajax4jsf/component/queue-ajax-form.xhtml
===================================================================
---
branches/sandbox/3.3.X_JSF2/ui/core/src/test/resources/org/ajax4jsf/component/queue-ajax-form.xhtml 2009-11-12
18:13:33 UTC (rev 15875)
+++
branches/sandbox/3.3.X_JSF2/ui/core/src/test/resources/org/ajax4jsf/component/queue-ajax-form.xhtml 2009-11-13
13:21:50 UTC (rev 15876)
@@ -17,25 +17,25 @@
<a4j:queue oncomplete="window.testResults.viewDefault = true"/>
<a4j:form ajaxSubmit="true" id="viewDefault">
- <h:commandButton value="view default queue" id="link" />
+ <h:commandButton onclick="return true;" value="view default
queue" id="link" />
</a4j:form>
<a4j:queue oncomplete="window.testResults.viewNamed = true"
name="viewNamed" />
<a4j:form ajaxSubmit="true" eventsQueue="viewNamed"
id="viewNamed">
- <h:commandButton value="view named queue" id="link" />
+ <h:commandButton onclick="return true;" value="view named
queue" id="link" />
</a4j:form>
<a4j:form ajaxSubmit="true" id="formDefault">
<a4j:queue oncomplete="window.testResults.formDefault = true" />
- <h:commandButton value="form default queue" id="link" />
+ <h:commandButton onclick="return true;" value="form default
queue" id="link" />
</a4j:form>
<a4j:form ajaxSubmit="true" eventsQueue="formQueue"
id="formNamed">
<a4j:queue oncomplete="window.testResults.formNamed = true"
name="formQueue" />
- <h:commandButton value="form named queue" id="link" />
+ <h:commandButton onclick="return true;" value="form named
queue" id="link" />
</a4j:form>
</f:view>
</body>
Modified: branches/sandbox/3.3.X_JSF2/ui/dataFilterSlider/pom.xml
===================================================================
--- branches/sandbox/3.3.X_JSF2/ui/dataFilterSlider/pom.xml 2009-11-12 18:13:33 UTC (rev
15875)
+++ branches/sandbox/3.3.X_JSF2/ui/dataFilterSlider/pom.xml 2009-11-13 13:21:50 UTC (rev
15876)
@@ -45,7 +45,7 @@
<dependency>
<groupId>org.richfaces.framework</groupId>
<artifactId>richfaces-impl</artifactId>
- <version>3.3.3-SNAPSHOT</version>
+ <version>3.3.3-jsf2-SNAPSHOT</version>
</dependency>
</dependencies>
</project>
\ No newline at end of file
Modified: branches/sandbox/3.3.X_JSF2/ui/datascroller/pom.xml
===================================================================
--- branches/sandbox/3.3.X_JSF2/ui/datascroller/pom.xml 2009-11-12 18:13:33 UTC (rev
15875)
+++ branches/sandbox/3.3.X_JSF2/ui/datascroller/pom.xml 2009-11-13 13:21:50 UTC (rev
15876)
@@ -44,7 +44,7 @@
<dependency>
<groupId>org.richfaces.framework</groupId>
<artifactId>richfaces-impl</artifactId>
- <version>3.3.3-SNAPSHOT</version>
+ <version>3.3.3-jsf2-SNAPSHOT</version>
</dependency>
</dependencies>
</project>
\ No newline at end of file
Modified: branches/sandbox/3.3.X_JSF2/ui/dropdown-menu/pom.xml
===================================================================
--- branches/sandbox/3.3.X_JSF2/ui/dropdown-menu/pom.xml 2009-11-12 18:13:33 UTC (rev
15875)
+++ branches/sandbox/3.3.X_JSF2/ui/dropdown-menu/pom.xml 2009-11-13 13:21:50 UTC (rev
15876)
@@ -44,7 +44,7 @@
<dependency>
<groupId>org.richfaces.framework</groupId>
<artifactId>richfaces-impl</artifactId>
- <version>3.3.3-SNAPSHOT</version>
+ <version>3.3.3-jsf2-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.richfaces.ui</groupId>
Modified: branches/sandbox/3.3.X_JSF2/ui/editor/pom.xml
===================================================================
--- branches/sandbox/3.3.X_JSF2/ui/editor/pom.xml 2009-11-12 18:13:33 UTC (rev 15875)
+++ branches/sandbox/3.3.X_JSF2/ui/editor/pom.xml 2009-11-13 13:21:50 UTC (rev 15876)
@@ -62,7 +62,7 @@
<dependency>
<groupId>org.richfaces.framework</groupId>
<artifactId>richfaces-impl</artifactId>
- <version>3.3.3-SNAPSHOT</version>
+ <version>3.3.3-jsf2-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>antlr</groupId>
Modified: branches/sandbox/3.3.X_JSF2/ui/extendedDataTable/pom.xml
===================================================================
--- branches/sandbox/3.3.X_JSF2/ui/extendedDataTable/pom.xml 2009-11-12 18:13:33 UTC (rev
15875)
+++ branches/sandbox/3.3.X_JSF2/ui/extendedDataTable/pom.xml 2009-11-13 13:21:50 UTC (rev
15876)
@@ -64,7 +64,7 @@
<dependency>
<groupId>org.richfaces.framework</groupId>
<artifactId>richfaces-impl</artifactId>
- <version>3.3.3-SNAPSHOT</version>
+ <version>3.3.3-jsf2-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.richfaces.ui</groupId>
Modified: branches/sandbox/3.3.X_JSF2/ui/fileUpload/pom.xml
===================================================================
--- branches/sandbox/3.3.X_JSF2/ui/fileUpload/pom.xml 2009-11-12 18:13:33 UTC (rev 15875)
+++ branches/sandbox/3.3.X_JSF2/ui/fileUpload/pom.xml 2009-11-13 13:21:50 UTC (rev 15876)
@@ -51,7 +51,7 @@
<dependency>
<groupId>org.richfaces.framework</groupId>
<artifactId>richfaces-impl</artifactId>
- <version>3.3.3-SNAPSHOT</version>
+ <version>3.3.3-jsf2-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.richfaces.ui</groupId>
Modified: branches/sandbox/3.3.X_JSF2/ui/functions/pom.xml
===================================================================
--- branches/sandbox/3.3.X_JSF2/ui/functions/pom.xml 2009-11-12 18:13:33 UTC (rev 15875)
+++ branches/sandbox/3.3.X_JSF2/ui/functions/pom.xml 2009-11-13 13:21:50 UTC (rev 15876)
@@ -37,7 +37,7 @@
<dependency>
<groupId>org.richfaces.framework</groupId>
<artifactId>richfaces-impl</artifactId>
- <version>${project.version}</version>
+ <version>3.3.3-jsf2-SNAPSHOT</version>
</dependency>
</dependencies>
</project>
\ No newline at end of file
Modified: branches/sandbox/3.3.X_JSF2/ui/hotKey/pom.xml
===================================================================
--- branches/sandbox/3.3.X_JSF2/ui/hotKey/pom.xml 2009-11-12 18:13:33 UTC (rev 15875)
+++ branches/sandbox/3.3.X_JSF2/ui/hotKey/pom.xml 2009-11-13 13:21:50 UTC (rev 15876)
@@ -50,7 +50,7 @@
<dependency>
<groupId>org.richfaces.framework</groupId>
<artifactId>richfaces-impl</artifactId>
- <version>3.3.3-SNAPSHOT</version>
+ <version>3.3.3-jsf2-SNAPSHOT</version>
</dependency>
</dependencies>
</project>
\ No newline at end of file
Modified:
branches/sandbox/3.3.X_JSF2/ui/hotKey/src/test/java/org/richfaces/component/HotKeyComponentTest.java
===================================================================
---
branches/sandbox/3.3.X_JSF2/ui/hotKey/src/test/java/org/richfaces/component/HotKeyComponentTest.java 2009-11-12
18:13:33 UTC (rev 15875)
+++
branches/sandbox/3.3.X_JSF2/ui/hotKey/src/test/java/org/richfaces/component/HotKeyComponentTest.java 2009-11-13
13:21:50 UTC (rev 15876)
@@ -153,12 +153,12 @@
UIComponent input = application.createComponent(UIInput.COMPONENT_TYPE);
input.setId("i1");
-
+ input.getAttributes().put("onchange", "return true;");
facesContext.getViewRoot().getChildren().add(input);
input = application.createComponent(UIInput.COMPONENT_TYPE);
input.setId("i2");
-
+ input.getAttributes().put("onchange", "return true;");
this.hotKey.getParent().getChildren().add(input);
String scriptBody = processScriptBody();
Modified: branches/sandbox/3.3.X_JSF2/ui/inplaceInput/pom.xml
===================================================================
--- branches/sandbox/3.3.X_JSF2/ui/inplaceInput/pom.xml 2009-11-12 18:13:33 UTC (rev
15875)
+++ branches/sandbox/3.3.X_JSF2/ui/inplaceInput/pom.xml 2009-11-13 13:21:50 UTC (rev
15876)
@@ -51,7 +51,7 @@
<dependency>
<groupId>org.richfaces.framework</groupId>
<artifactId>richfaces-impl</artifactId>
- <version>3.3.3-SNAPSHOT</version>
+ <version>3.3.3-jsf2-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.richfaces.ui</groupId>
Modified: branches/sandbox/3.3.X_JSF2/ui/inplaceSelect/pom.xml
===================================================================
--- branches/sandbox/3.3.X_JSF2/ui/inplaceSelect/pom.xml 2009-11-12 18:13:33 UTC (rev
15875)
+++ branches/sandbox/3.3.X_JSF2/ui/inplaceSelect/pom.xml 2009-11-13 13:21:50 UTC (rev
15876)
@@ -51,12 +51,12 @@
<dependency>
<groupId>org.richfaces.framework</groupId>
<artifactId>richfaces-impl</artifactId>
- <version>3.3.3-SNAPSHOT</version>
+ <version>3.3.3-jsf2-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.richfaces.framework</groupId>
<artifactId>richfaces-api</artifactId>
- <version>3.3.3-SNAPSHOT</version>
+ <version>3.3.3-jsf2-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.richfaces.ui</groupId>
Modified: branches/sandbox/3.3.X_JSF2/ui/layout/pom.xml
===================================================================
--- branches/sandbox/3.3.X_JSF2/ui/layout/pom.xml 2009-11-12 18:13:33 UTC (rev 15875)
+++ branches/sandbox/3.3.X_JSF2/ui/layout/pom.xml 2009-11-13 13:21:50 UTC (rev 15876)
@@ -48,7 +48,7 @@
<dependency>
<groupId>org.richfaces.framework</groupId>
<artifactId>richfaces-impl</artifactId>
- <version>3.3.3-SNAPSHOT</version>
+ <version>3.3.3-jsf2-SNAPSHOT</version>
</dependency>
</dependencies>
</project>
Modified: branches/sandbox/3.3.X_JSF2/ui/menu-components/pom.xml
===================================================================
--- branches/sandbox/3.3.X_JSF2/ui/menu-components/pom.xml 2009-11-12 18:13:33 UTC (rev
15875)
+++ branches/sandbox/3.3.X_JSF2/ui/menu-components/pom.xml 2009-11-13 13:21:50 UTC (rev
15876)
@@ -44,7 +44,7 @@
<dependency>
<groupId>org.richfaces.framework</groupId>
<artifactId>richfaces-impl</artifactId>
- <version>3.3.3-SNAPSHOT</version>
+ <version>3.3.3-jsf2-SNAPSHOT</version>
</dependency>
</dependencies>
</project>
\ No newline at end of file
Modified: branches/sandbox/3.3.X_JSF2/ui/message/pom.xml
===================================================================
--- branches/sandbox/3.3.X_JSF2/ui/message/pom.xml 2009-11-12 18:13:33 UTC (rev 15875)
+++ branches/sandbox/3.3.X_JSF2/ui/message/pom.xml 2009-11-13 13:21:50 UTC (rev 15876)
@@ -45,7 +45,7 @@
<dependency>
<groupId>org.richfaces.framework</groupId>
<artifactId>richfaces-impl</artifactId>
- <version>3.3.3-SNAPSHOT</version>
+ <version>3.3.3-jsf2-SNAPSHOT</version>
</dependency>
</dependencies>
</project>
\ No newline at end of file
Modified:
branches/sandbox/3.3.X_JSF2/ui/message/src/test/java/org/richfaces/renderer/RichMessageRendererTest.java
===================================================================
---
branches/sandbox/3.3.X_JSF2/ui/message/src/test/java/org/richfaces/renderer/RichMessageRendererTest.java 2009-11-12
18:13:33 UTC (rev 15875)
+++
branches/sandbox/3.3.X_JSF2/ui/message/src/test/java/org/richfaces/renderer/RichMessageRendererTest.java 2009-11-13
13:21:50 UTC (rev 15876)
@@ -77,24 +77,28 @@
input1 =
(HtmlInputText)application.createComponent("javax.faces.HtmlInputText");
input1.setId("input1");
+ input1.getAttributes().put("onchange", "return true;");
text1 =
(HtmlOutputText)application.createComponent("javax.faces.HtmlOutputText");
text1.setValue("Error");
input2 =
(HtmlInputText)application.createComponent("javax.faces.HtmlInputText");
input2.setId("input2");
+ input2.getAttributes().put("onchange", "return true;");
text2 =
(HtmlOutputText)application.createComponent("javax.faces.HtmlOutputText");
text2.setValue("Warning");
input3 =
(HtmlInputText)application.createComponent("javax.faces.HtmlInputText");
input3.setId("input3");
+ input3.getAttributes().put("onchange", "return true;");
text3 =
(HtmlOutputText)application.createComponent("javax.faces.HtmlOutputText");
text3.setValue("Fatal");
input4 =
(HtmlInputText)application.createComponent("javax.faces.HtmlInputText");
input4.setId("input4");
+ input4.getAttributes().put("onchange", "return true;");
text4 =
(HtmlOutputText)application.createComponent("javax.faces.HtmlOutputText");
text4.setValue("Info");
Modified:
branches/sandbox/3.3.X_JSF2/ui/message/src/test/java/org/richfaces/renderer/RichMessagesRendererTest.java
===================================================================
---
branches/sandbox/3.3.X_JSF2/ui/message/src/test/java/org/richfaces/renderer/RichMessagesRendererTest.java 2009-11-12
18:13:33 UTC (rev 15875)
+++
branches/sandbox/3.3.X_JSF2/ui/message/src/test/java/org/richfaces/renderer/RichMessagesRendererTest.java 2009-11-13
13:21:50 UTC (rev 15876)
@@ -64,6 +64,7 @@
input1 =
(HtmlInputText)application.createComponent("javax.faces.HtmlInputText");
input1.setId("input1");
+ input1.getAttributes().put("onchange", "return true;");
output1 =
(HtmlOutputText)application.createComponent("javax.faces.HtmlOutputText");
output1.setId("output1");
@@ -71,6 +72,7 @@
input2 =
(HtmlInputText)application.createComponent("javax.faces.HtmlInputText");
input2.setId("input2");
+ input2.getAttributes().put("onchange", "return true;");
output2 =
(HtmlOutputText)application.createComponent("javax.faces.HtmlOutputText");
output2.setId("output2");
@@ -78,6 +80,7 @@
input3 =
(HtmlInputText)application.createComponent("javax.faces.HtmlInputText");
input3.setId("input3");
+ input3.getAttributes().put("onchange", "return true;");
output3 =
(HtmlOutputText)application.createComponent("javax.faces.HtmlOutputText");
output3.setId("output3");
@@ -85,6 +88,7 @@
input4 =
(HtmlInputText)application.createComponent("javax.faces.HtmlInputText");
input4.setId("input4");
+ input4.getAttributes().put("onchange", "return true;");
output4 =
(HtmlOutputText)application.createComponent("javax.faces.HtmlOutputText");
output4.setId("output4");
Modified:
branches/sandbox/3.3.X_JSF2/ui/orderingList/src/main/java/org/richfaces/component/UIOrderingBaseComponent.java
===================================================================
---
branches/sandbox/3.3.X_JSF2/ui/orderingList/src/main/java/org/richfaces/component/UIOrderingBaseComponent.java 2009-11-12
18:13:33 UTC (rev 15875)
+++
branches/sandbox/3.3.X_JSF2/ui/orderingList/src/main/java/org/richfaces/component/UIOrderingBaseComponent.java 2009-11-13
13:21:50 UTC (rev 15876)
@@ -530,7 +530,14 @@
data.trimToSize();
return data;
}
-
+
+ public void resetValue() {
+ this.setValue(null);
+ this.setSubmittedValue(null);
+ this.setLocalValueSet(false);
+ this.setValid(true);
+ }
+
public abstract ItemState getItemState();
public interface ItemState {
Modified: branches/sandbox/3.3.X_JSF2/ui/panel/pom.xml
===================================================================
--- branches/sandbox/3.3.X_JSF2/ui/panel/pom.xml 2009-11-12 18:13:33 UTC (rev 15875)
+++ branches/sandbox/3.3.X_JSF2/ui/panel/pom.xml 2009-11-13 13:21:50 UTC (rev 15876)
@@ -45,7 +45,8 @@
<dependency>
<groupId>org.richfaces.framework</groupId>
<artifactId>richfaces-impl</artifactId>
- <version>3.3.3-SNAPSHOT</version>
+ <version>3.3.3-jsf2-SNAPSHOT
+ </version>
</dependency>
</dependencies>
</project>
\ No newline at end of file
Modified: branches/sandbox/3.3.X_JSF2/ui/panelmenu/pom.xml
===================================================================
--- branches/sandbox/3.3.X_JSF2/ui/panelmenu/pom.xml 2009-11-12 18:13:33 UTC (rev 15875)
+++ branches/sandbox/3.3.X_JSF2/ui/panelmenu/pom.xml 2009-11-13 13:21:50 UTC (rev 15876)
@@ -44,7 +44,7 @@
<dependency>
<groupId>org.richfaces.framework</groupId>
<artifactId>richfaces-impl</artifactId>
- <version>3.3.3-SNAPSHOT</version>
+ <version>3.3.3-jsf2-SNAPSHOT</version>
</dependency>
</dependencies>
</project>
\ No newline at end of file
Modified: branches/sandbox/3.3.X_JSF2/ui/pickList/pom.xml
===================================================================
--- branches/sandbox/3.3.X_JSF2/ui/pickList/pom.xml 2009-11-12 18:13:33 UTC (rev 15875)
+++ branches/sandbox/3.3.X_JSF2/ui/pickList/pom.xml 2009-11-13 13:21:50 UTC (rev 15876)
@@ -53,13 +53,13 @@
<dependency>
<groupId>org.richfaces.framework</groupId>
<artifactId>richfaces-impl</artifactId>
- <version>3.3.3-SNAPSHOT</version>
+ <version>3.3.3-jsf2-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.richfaces.framework</groupId>
<artifactId>richfaces-api</artifactId>
- <version>3.3.3-SNAPSHOT</version>
+ <version>3.3.3-jsf2-SNAPSHOT</version>
</dependency>
Modified: branches/sandbox/3.3.X_JSF2/ui/pom.xml
===================================================================
--- branches/sandbox/3.3.X_JSF2/ui/pom.xml 2009-11-12 18:13:33 UTC (rev 15875)
+++ branches/sandbox/3.3.X_JSF2/ui/pom.xml 2009-11-13 13:21:50 UTC (rev 15876)
@@ -82,12 +82,6 @@
</profile>
<profile>
<id>jsf2</id>
- <properties>
- <jsf.api.groupId>com.sun.faces</jsf.api.groupId>
- <jsf.impl.groupId>com.sun.faces</jsf.impl.groupId>
- <jsf.api.version>2.0.1</jsf.api.version>
- <jsf.impl.version>2.0.1</jsf.impl.version>
- </properties>
<dependencies>
<dependency>
<groupId>com.sun.faces</groupId>
@@ -104,12 +98,6 @@
</profile>
<profile>
<id>jsf1.2</id>
- <properties>
- <jsf.api.groupId>javax.faces</jsf.api.groupId>
- <jsf.impl.groupId>javax.faces</jsf.impl.groupId>
- <jsf.api.version>1.2_12</jsf.api.version>
- <jsf.impl.version>1.2_12</jsf.impl.version>
- </properties>
<dependencies>
<dependency>
<groupId>javax.faces</groupId>
Modified: branches/sandbox/3.3.X_JSF2/ui/progressBAR/pom.xml
===================================================================
--- branches/sandbox/3.3.X_JSF2/ui/progressBAR/pom.xml 2009-11-12 18:13:33 UTC (rev
15875)
+++ branches/sandbox/3.3.X_JSF2/ui/progressBAR/pom.xml 2009-11-13 13:21:50 UTC (rev
15876)
@@ -45,7 +45,7 @@
<dependency>
<groupId>org.richfaces.framework</groupId>
<artifactId>richfaces-impl</artifactId>
- <version>3.3.3-SNAPSHOT</version>
+ <version>3.3.3-jsf2-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.richfaces.ui</groupId>
Modified: branches/sandbox/3.3.X_JSF2/ui/scrollableDataTable/pom.xml
===================================================================
--- branches/sandbox/3.3.X_JSF2/ui/scrollableDataTable/pom.xml 2009-11-12 18:13:33 UTC
(rev 15875)
+++ branches/sandbox/3.3.X_JSF2/ui/scrollableDataTable/pom.xml 2009-11-13 13:21:50 UTC
(rev 15876)
@@ -70,7 +70,7 @@
<dependency>
<groupId>org.richfaces.framework</groupId>
<artifactId>richfaces-impl</artifactId>
- <version>3.3.3-SNAPSHOT</version>
+ <version>3.3.3-jsf2-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.richfaces.ui</groupId>
Modified: branches/sandbox/3.3.X_JSF2/ui/simpleTogglePanel/pom.xml
===================================================================
--- branches/sandbox/3.3.X_JSF2/ui/simpleTogglePanel/pom.xml 2009-11-12 18:13:33 UTC (rev
15875)
+++ branches/sandbox/3.3.X_JSF2/ui/simpleTogglePanel/pom.xml 2009-11-13 13:21:50 UTC (rev
15876)
@@ -44,7 +44,7 @@
<dependency>
<groupId>org.richfaces.framework</groupId>
<artifactId>richfaces-impl</artifactId>
- <version>3.3.3-SNAPSHOT</version>
+ <version>3.3.3-jsf2-SNAPSHOT</version>
</dependency>
</dependencies>
</project>
\ No newline at end of file
Modified:
branches/sandbox/3.3.X_JSF2/ui/simpleTogglePanel/src/test/java/org/richfaces/component/SimpleTogglePanelComponentTest.java
===================================================================
---
branches/sandbox/3.3.X_JSF2/ui/simpleTogglePanel/src/test/java/org/richfaces/component/SimpleTogglePanelComponentTest.java 2009-11-12
18:13:33 UTC (rev 15875)
+++
branches/sandbox/3.3.X_JSF2/ui/simpleTogglePanel/src/test/java/org/richfaces/component/SimpleTogglePanelComponentTest.java 2009-11-13
13:21:50 UTC (rev 15876)
@@ -126,6 +126,7 @@
input = (UIInput)application.createComponent(UIInput.COMPONENT_TYPE);
input.setValue("");
input.setId("opened");
+ input.getAttributes().put("onchange", "return true;");
stp1.getChildren().add(input);
command = new HtmlCommandLink();
Modified: branches/sandbox/3.3.X_JSF2/ui/spacer/pom.xml
===================================================================
--- branches/sandbox/3.3.X_JSF2/ui/spacer/pom.xml 2009-11-12 18:13:33 UTC (rev 15875)
+++ branches/sandbox/3.3.X_JSF2/ui/spacer/pom.xml 2009-11-13 13:21:50 UTC (rev 15876)
@@ -44,7 +44,7 @@
<dependency>
<groupId>org.richfaces.framework</groupId>
<artifactId>richfaces-impl</artifactId>
- <version>3.3.3-SNAPSHOT</version>
+ <version>3.3.3-jsf2-SNAPSHOT</version>
</dependency>
</dependencies>
</project>
\ No newline at end of file
Modified: branches/sandbox/3.3.X_JSF2/ui/state/pom.xml
===================================================================
--- branches/sandbox/3.3.X_JSF2/ui/state/pom.xml 2009-11-12 18:13:33 UTC (rev 15875)
+++ branches/sandbox/3.3.X_JSF2/ui/state/pom.xml 2009-11-13 13:21:50 UTC (rev 15876)
@@ -37,7 +37,7 @@
<dependency>
<groupId>org.richfaces.framework</groupId>
<artifactId>richfaces-impl</artifactId>
- <version>3.3.3-SNAPSHOT</version>
+ <version>3.3.3-jsf2-SNAPSHOT</version>
</dependency>
</dependencies>
</project>
\ No newline at end of file
Modified:
branches/sandbox/3.3.X_JSF2/ui/state/src/main/java/org/richfaces/ui/application/StateApplication.java
===================================================================
---
branches/sandbox/3.3.X_JSF2/ui/state/src/main/java/org/richfaces/ui/application/StateApplication.java 2009-11-12
18:13:33 UTC (rev 15875)
+++
branches/sandbox/3.3.X_JSF2/ui/state/src/main/java/org/richfaces/ui/application/StateApplication.java 2009-11-13
13:21:50 UTC (rev 15876)
@@ -254,7 +254,7 @@
* @return
* @see javax.faces.application.Application#getConverterTypes()
*/
- public Iterator<Class> getConverterTypes() {
+ public Iterator<Class<?>> getConverterTypes() {
return parent.getConverterTypes();
}
Modified: branches/sandbox/3.3.X_JSF2/ui/suggestionbox/pom.xml
===================================================================
--- branches/sandbox/3.3.X_JSF2/ui/suggestionbox/pom.xml 2009-11-12 18:13:33 UTC (rev
15875)
+++ branches/sandbox/3.3.X_JSF2/ui/suggestionbox/pom.xml 2009-11-13 13:21:50 UTC (rev
15876)
@@ -44,7 +44,7 @@
<dependency>
<groupId>org.richfaces.framework</groupId>
<artifactId>richfaces-impl</artifactId>
- <version>3.3.3-SNAPSHOT</version>
+ <version>3.3.3-jsf2-SNAPSHOT</version>
</dependency>
</dependencies>
</project>
\ No newline at end of file
Modified:
branches/sandbox/3.3.X_JSF2/ui/suggestionbox/src/test/java/org/richfaces/component/SuggestionBoxComponentTest.java
===================================================================
---
branches/sandbox/3.3.X_JSF2/ui/suggestionbox/src/test/java/org/richfaces/component/SuggestionBoxComponentTest.java 2009-11-12
18:13:33 UTC (rev 15875)
+++
branches/sandbox/3.3.X_JSF2/ui/suggestionbox/src/test/java/org/richfaces/component/SuggestionBoxComponentTest.java 2009-11-13
13:21:50 UTC (rev 15876)
@@ -89,6 +89,7 @@
input = new UIInput();
input.setId("text");
+ input.getAttributes().put("onchange", "return true;");
form.getChildren().add(input);
sb =
(UISuggestionBox)application.createComponent("org.richfaces.SuggestionBox");
Modified: branches/sandbox/3.3.X_JSF2/ui/tabPanel/pom.xml
===================================================================
--- branches/sandbox/3.3.X_JSF2/ui/tabPanel/pom.xml 2009-11-12 18:13:33 UTC (rev 15875)
+++ branches/sandbox/3.3.X_JSF2/ui/tabPanel/pom.xml 2009-11-13 13:21:50 UTC (rev 15876)
@@ -44,7 +44,7 @@
<dependency>
<groupId>org.richfaces.framework</groupId>
<artifactId>richfaces-impl</artifactId>
- <version>3.3.3-SNAPSHOT</version>
+ <version>3.3.3-jsf2-SNAPSHOT</version>
</dependency>
</dependencies>
</project>
\ No newline at end of file
Modified: branches/sandbox/3.3.X_JSF2/ui/togglePanel/pom.xml
===================================================================
--- branches/sandbox/3.3.X_JSF2/ui/togglePanel/pom.xml 2009-11-12 18:13:33 UTC (rev
15875)
+++ branches/sandbox/3.3.X_JSF2/ui/togglePanel/pom.xml 2009-11-13 13:21:50 UTC (rev
15876)
@@ -44,7 +44,7 @@
<dependency>
<groupId>org.richfaces.framework</groupId>
<artifactId>richfaces-impl</artifactId>
- <version>3.3.3-SNAPSHOT</version>
+ <version>3.3.3-jsf2-SNAPSHOT</version>
</dependency>
</dependencies>
</project>
\ No newline at end of file
Modified: branches/sandbox/3.3.X_JSF2/ui/toolBar/pom.xml
===================================================================
--- branches/sandbox/3.3.X_JSF2/ui/toolBar/pom.xml 2009-11-12 18:13:33 UTC (rev 15875)
+++ branches/sandbox/3.3.X_JSF2/ui/toolBar/pom.xml 2009-11-13 13:21:50 UTC (rev 15876)
@@ -44,7 +44,7 @@
<dependency>
<groupId>org.richfaces.framework</groupId>
<artifactId>richfaces-impl</artifactId>
- <version>3.3.3-SNAPSHOT</version>
+ <version>3.3.3-jsf2-SNAPSHOT</version>
</dependency>
</dependencies>
</project>
\ No newline at end of file
Modified:
branches/sandbox/3.3.X_JSF2/ui/toolBar/src/test/java/org/richfaces/component/ToolBarComponentTest.java
===================================================================
---
branches/sandbox/3.3.X_JSF2/ui/toolBar/src/test/java/org/richfaces/component/ToolBarComponentTest.java 2009-11-12
18:13:33 UTC (rev 15875)
+++
branches/sandbox/3.3.X_JSF2/ui/toolBar/src/test/java/org/richfaces/component/ToolBarComponentTest.java 2009-11-13
13:21:50 UTC (rev 15876)
@@ -75,19 +75,23 @@
UICommand button = (UICommand)
application.createComponent(HtmlCommandButton.COMPONENT_TYPE);
button.setValue("Change");
+ button.getAttributes().put("onclick", "return true;");
toolBar.getChildren().add(button);
button = (UICommand)
application.createComponent(HtmlCommandButton.COMPONENT_TYPE);
button.setValue("Change");
+ button.getAttributes().put("onclick", "return true;");
toolBar.getChildren().add(button);
UIToolBarGroup toolBarGroup = (UIToolBarGroup)
application.createComponent("org.richfaces.ToolBarGroup");
toolBarGroup.setItemSeparator("disc");
button = (HtmlCommandButton)
application.createComponent(HtmlCommandButton.COMPONENT_TYPE);
button.setValue("Change");
+ button.getAttributes().put("onclick", "return true;");
toolBarGroup.getChildren().add(button);
button = (HtmlCommandButton)
application.createComponent(HtmlCommandButton.COMPONENT_TYPE);
button.setValue("Change");
+ button.getAttributes().put("onclick", "return true;");
toolBarGroup.getChildren().add(button);
toolBar.getChildren().add(toolBarGroup);
@@ -95,9 +99,11 @@
toolBarGroup.setItemSeparator("grid");
button = (HtmlCommandButton)
application.createComponent(HtmlCommandButton.COMPONENT_TYPE);
button.setValue("Change");
+ button.getAttributes().put("onclick", "return true;");
toolBarGroup.getChildren().add(button);
button = (HtmlCommandButton)
application.createComponent(HtmlCommandButton.COMPONENT_TYPE);
button.setValue("Change");
+ button.getAttributes().put("onclick", "return true;");
toolBarGroup.getChildren().add(button);
toolBar.getChildren().add(toolBarGroup);
@@ -105,9 +111,11 @@
toolBarGroup.setItemSeparator("line");
button = (HtmlCommandButton)
application.createComponent(HtmlCommandButton.COMPONENT_TYPE);
button.setValue("Change");
+ button.getAttributes().put("onclick", "return true;");
toolBarGroup.getChildren().add(button);
button = (HtmlCommandButton)
application.createComponent(HtmlCommandButton.COMPONENT_TYPE);
button.setValue("Change");
+ button.getAttributes().put("onclick", "return true;");
toolBarGroup.getChildren().add(button);
toolBar.getChildren().add(toolBarGroup);
}
Modified: branches/sandbox/3.3.X_JSF2/ui/tooltip/pom.xml
===================================================================
--- branches/sandbox/3.3.X_JSF2/ui/tooltip/pom.xml 2009-11-12 18:13:33 UTC (rev 15875)
+++ branches/sandbox/3.3.X_JSF2/ui/tooltip/pom.xml 2009-11-13 13:21:50 UTC (rev 15876)
@@ -44,7 +44,7 @@
<dependency>
<groupId>org.richfaces.framework</groupId>
<artifactId>richfaces-impl</artifactId>
- <version>3.3.3-SNAPSHOT</version>
+ <version>3.3.3-jsf2-SNAPSHOT</version>
</dependency>
</dependencies>
</project>
\ No newline at end of file
Modified:
branches/sandbox/3.3.X_JSF2/ui/tree/src/test/java/org/richfaces/component/TreeComponentTest.java
===================================================================
---
branches/sandbox/3.3.X_JSF2/ui/tree/src/test/java/org/richfaces/component/TreeComponentTest.java 2009-11-12
18:13:33 UTC (rev 15875)
+++
branches/sandbox/3.3.X_JSF2/ui/tree/src/test/java/org/richfaces/component/TreeComponentTest.java 2009-11-13
13:21:50 UTC (rev 15876)
@@ -133,7 +133,7 @@
}
};
input.setId("input");
-
+ input.getAttributes().put("onchange", "return true;");
form.getChildren().add(input);
command = new HtmlCommandLink();
Modified: branches/sandbox/3.3.X_JSF2/ui/treeModel/pom.xml
===================================================================
--- branches/sandbox/3.3.X_JSF2/ui/treeModel/pom.xml 2009-11-12 18:13:33 UTC (rev 15875)
+++ branches/sandbox/3.3.X_JSF2/ui/treeModel/pom.xml 2009-11-13 13:21:50 UTC (rev 15876)
@@ -45,7 +45,7 @@
<dependency>
<groupId>org.richfaces.framework</groupId>
<artifactId>richfaces-impl</artifactId>
- <version>3.3.3-SNAPSHOT</version>
+ <version>3.3.3-jsf2-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.richfaces.ui</groupId>