JBoss Rich Faces SVN: r11040 - trunk/ui/extendedDataTable/src/main/java/org/richfaces/renderkit.
by richfaces-svn-commits@lists.jboss.org
Author: pgolawski
Date: 2008-11-06 03:27:00 -0500 (Thu, 06 Nov 2008)
New Revision: 11040
Modified:
trunk/ui/extendedDataTable/src/main/java/org/richfaces/renderkit/AbstractExtendedTableRenderer.java
Log:
print empty sort image if column is not sortable,
sort image width and height attributes moved to extdt-header-sort-img CSS class
Modified: trunk/ui/extendedDataTable/src/main/java/org/richfaces/renderkit/AbstractExtendedTableRenderer.java
===================================================================
--- trunk/ui/extendedDataTable/src/main/java/org/richfaces/renderkit/AbstractExtendedTableRenderer.java 2008-11-06 08:24:11 UTC (rev 11039)
+++ trunk/ui/extendedDataTable/src/main/java/org/richfaces/renderkit/AbstractExtendedTableRenderer.java 2008-11-06 08:27:00 UTC (rev 11040)
@@ -1512,11 +1512,9 @@
AjaxContext.getCurrentInstance().addRenderedArea(
clientId + ":sortDiv");
- if (sortableColumn) {
- writer.startElement(HTML.SPAN_ELEM, column);
- writer.writeAttribute(HTML.class_ATTRIBUTE,
+ writer.startElement(HTML.SPAN_ELEM, column);
+ writer.writeAttribute(HTML.class_ATTRIBUTE,
"extdt-sortable-header", null);
- }
}
}
@@ -1528,8 +1526,8 @@
String clientId = dataColumn.getClientId(context) + facetName;
String tableId = dataColumn.getParent().getClientId(context);
+ String imageUrl = null;
if (sortableColumn) {
- String imageUrl = null;
if (Ordering.ASCENDING.equals(dataColumn.getSortOrder())) {
if (null != dataColumn.getSortIconAscending()) {
imageUrl = dataColumn.getSortIconAscending();
@@ -1556,21 +1554,20 @@
.getUri(context, null);
}
}
-
- if (imageUrl != null) {
- writer.startElement(HTML.IMG_ELEMENT, column);
- writer.writeAttribute(HTML.src_ATTRIBUTE, imageUrl,
- null);
- writer.writeAttribute(HTML.width_ATTRIBUTE, "15", null);
- writer
- .writeAttribute(HTML.height_ATTRIBUTE, "15",
- null);
- writer.writeAttribute(HTML.class_ATTRIBUTE,
- "extdt-header-sort-img", null);
- writer.endElement(HTML.IMG_ELEMENT);
- }
- writer.endElement(HTML.SPAN_ELEM);
}
+ else{
+ //set empty image
+ imageUrl = getResource("/org/richfaces/renderkit/html/images/s.gif").getUri(context, null);
+ }
+ if (imageUrl != null) {
+ writer.startElement(HTML.IMG_ELEMENT, column);
+ writer.writeAttribute(HTML.src_ATTRIBUTE, imageUrl,
+ null);
+ writer.writeAttribute(HTML.class_ATTRIBUTE,
+ "extdt-header-sort-img", null);
+ writer.endElement(HTML.IMG_ELEMENT);
+ }
+ writer.endElement(HTML.SPAN_ELEM);
writer.endElement(HTML.DIV_ELEM);
16 years, 10 months
JBoss Rich Faces SVN: r11039 - trunk/ui/extendedDataTable/src/main/java/org/richfaces/renderkit/html.
by richfaces-svn-commits@lists.jboss.org
Author: pgolawski
Date: 2008-11-06 03:24:11 -0500 (Thu, 06 Nov 2008)
New Revision: 11039
Modified:
trunk/ui/extendedDataTable/src/main/java/org/richfaces/renderkit/html/TableSelectionRendererContributor.java
Log:
organized imports
Modified: trunk/ui/extendedDataTable/src/main/java/org/richfaces/renderkit/html/TableSelectionRendererContributor.java
===================================================================
--- trunk/ui/extendedDataTable/src/main/java/org/richfaces/renderkit/html/TableSelectionRendererContributor.java 2008-11-06 00:56:55 UTC (rev 11038)
+++ trunk/ui/extendedDataTable/src/main/java/org/richfaces/renderkit/html/TableSelectionRendererContributor.java 2008-11-06 08:24:11 UTC (rev 11039)
@@ -16,10 +16,9 @@
import javax.faces.convert.Converter;
import org.ajax4jsf.context.AjaxContext;
-import org.ajax4jsf.javascript.JSFunctionDefinition;
-import org.ajax4jsf.javascript.JSReference;
import org.ajax4jsf.model.DataVisitor;
import org.ajax4jsf.renderkit.RendererUtils.HTML;
+import org.richfaces.component.UIExtendedDataTable;
import org.richfaces.model.selection.ClientSelection;
import org.richfaces.model.selection.Selection;
import org.richfaces.model.selection.SimpleSelection;
@@ -27,10 +26,7 @@
import org.richfaces.renderkit.RendererContributor;
import org.richfaces.renderkit.ScriptOptions;
import org.richfaces.renderkit.TableHolder;
-import org.richfaces.renderkit.html.HTMLEncodingContributor;
-import org.richfaces.component.UIExtendedDataTable;
-
/**
* Renderer contributor based on
* {@link org.richfaces.renderkit.html.SelectionRendererContributor}} adapted
16 years, 10 months
JBoss Rich Faces SVN: r11038 - in branches/jsf2.0/framework/jsf-test: src/main/java/org/richfaces/test and 2 other directories.
by richfaces-svn-commits@lists.jboss.org
Author: alexsmirnov
Date: 2008-11-05 19:56:55 -0500 (Wed, 05 Nov 2008)
New Revision: 11038
Modified:
branches/jsf2.0/framework/jsf-test/pom.xml
branches/jsf2.0/framework/jsf-test/src/main/java/org/richfaces/test/LocalServer.java
branches/jsf2.0/framework/jsf-test/src/main/java/org/richfaces/test/ServerConnection.java
branches/jsf2.0/framework/jsf-test/src/main/java/org/richfaces/test/ServerLogger.java
branches/jsf2.0/framework/jsf-test/src/main/java/org/richfaces/test/stub/NotImplementedException.java
branches/jsf2.0/framework/jsf-test/src/main/java/org/richfaces/test/stub/StubHttpRequest.java
branches/jsf2.0/framework/jsf-test/src/main/java/org/richfaces/test/stub/StubHttpResponse.java
branches/jsf2.0/framework/jsf-test/src/main/java/org/richfaces/test/stub/StubHttpSession.java
branches/jsf2.0/framework/jsf-test/src/main/java/org/richfaces/test/stub/StubServletContext.java
branches/jsf2.0/framework/jsf-test/src/test/java/org/richfaces/test/FacesServerTest.java
Log:
Add HtmlUnit support
Modified: branches/jsf2.0/framework/jsf-test/pom.xml
===================================================================
--- branches/jsf2.0/framework/jsf-test/pom.xml 2008-11-05 18:52:26 UTC (rev 11037)
+++ branches/jsf2.0/framework/jsf-test/pom.xml 2008-11-06 00:56:55 UTC (rev 11038)
@@ -33,5 +33,40 @@
<artifactId>el-impl</artifactId>
<version>1.0</version>
</dependency>
+ <dependency>
+ <groupId>commons-httpclient</groupId>
+ <artifactId>commons-httpclient</artifactId>
+ <version>3.1</version>
+ </dependency>
+ <dependency>
+ <groupId>net.sourceforge.htmlunit</groupId>
+ <artifactId>htmlunit-core-js</artifactId>
+ <version>2.2</version>
+ </dependency>
+ <dependency>
+ <groupId>net.sourceforge.cssparser</groupId>
+ <artifactId>cssparser</artifactId>
+ <version>0.9.5</version>
+ </dependency>
+ <dependency>
+ <groupId>commons-io</groupId>
+ <artifactId>commons-io</artifactId>
+ <version>1.4</version>
+ </dependency>
+ <dependency>
+ <groupId>commons-lang</groupId>
+ <artifactId>commons-lang</artifactId>
+ <version>2.4</version>
+ </dependency>
+ <dependency>
+ <groupId>commons-collections</groupId>
+ <artifactId>commons-collections</artifactId>
+ <version>3.2.1</version>
+ </dependency>
+ <dependency>
+ <groupId>net.sourceforge.nekohtml</groupId>
+ <artifactId>nekohtml</artifactId>
+ <version>1.9.9</version>
+ </dependency>
</dependencies>
</project>
\ No newline at end of file
Modified: branches/jsf2.0/framework/jsf-test/src/main/java/org/richfaces/test/LocalServer.java
===================================================================
--- branches/jsf2.0/framework/jsf-test/src/main/java/org/richfaces/test/LocalServer.java 2008-11-05 18:52:26 UTC (rev 11037)
+++ branches/jsf2.0/framework/jsf-test/src/main/java/org/richfaces/test/LocalServer.java 2008-11-06 00:56:55 UTC (rev 11038)
@@ -1,5 +1,6 @@
package org.richfaces.test;
+import java.io.IOException;
import java.net.URL;
import java.util.ArrayList;
import java.util.HashMap;
@@ -8,10 +9,12 @@
import java.util.Map;
import javax.servlet.Servlet;
+import javax.servlet.ServletContext;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
+import javax.servlet.http.HttpSession;
import org.richfaces.test.stub.ClasspathServerResource;
import org.richfaces.test.stub.ServerResource;
@@ -19,10 +22,18 @@
import org.richfaces.test.stub.ServerResourcesDirectory;
import org.richfaces.test.stub.ServletContainer;
import org.richfaces.test.stub.StaticServlet;
+import org.richfaces.test.stub.StubHttpSession;
import org.richfaces.test.stub.StubServletConfig;
import org.richfaces.test.stub.StubServletContext;
+import com.gargoylesoftware.htmlunit.WebConnection;
+import com.gargoylesoftware.htmlunit.WebRequestSettings;
+import com.gargoylesoftware.htmlunit.WebResponse;
+import com.gargoylesoftware.htmlunit.WebResponseData;
+import ch.ethz.ssh2.Session;
+
+
/**
* Hello world!
*
@@ -42,7 +53,17 @@
private StubServletContext context;
+ private class ServerHttpSession extends StubHttpSession {
+
+ public ServletContext getServletContext() {
+ return context;
+ }
+
+ }
+ private ServerHttpSession session;
+
+
public void addServlet(String mapping,Servlet servlet){
servlets.add(new ServletContainer(mapping,servlet));
}
@@ -70,6 +91,18 @@
contextListeners.add(listener);
}
+ public HttpSession getSession(){
+ return getSession(true);
+ }
+
+ public HttpSession getSession(boolean create){
+ if(null == this.session && create){
+ this.session = new ServerHttpSession();
+ // TODO - inform session listeners
+ }
+ return session;
+ }
+
public void init() throws ServletException {
// Create context.
this.context = new StubServletContext(serverRoot);
@@ -90,6 +123,11 @@
}
public void destroy(){
+ // Destroy session
+ if (null != this.session) {
+ // TODO - inform session listeners.
+ session.destroy();
+ }
// Inform listeners
for (ServletContextListener listener : contextListeners) {
listener.contextDestroyed(new ServletContextEvent(context));
@@ -108,4 +146,22 @@
public StubServletContext getContext() {
return context;
}
+
+
+ public WebConnection getWebConnection(){
+ return new WebConnection(){
+
+ public WebResponse getResponse(WebRequestSettings settings)
+ throws IOException {
+ ServerConnection connection = getConnection(settings.getUrl());
+ try {
+ connection.execute();
+ } catch (ServletException e) {
+ throw new IOException(e.getMessage());
+ }
+ return connection.getWebResponse(settings);
+ }
+
+ };
+ }
}
Modified: branches/jsf2.0/framework/jsf-test/src/main/java/org/richfaces/test/ServerConnection.java
===================================================================
--- branches/jsf2.0/framework/jsf-test/src/main/java/org/richfaces/test/ServerConnection.java 2008-11-05 18:52:26 UTC (rev 11037)
+++ branches/jsf2.0/framework/jsf-test/src/main/java/org/richfaces/test/ServerConnection.java 2008-11-06 00:56:55 UTC (rev 11038)
@@ -3,7 +3,9 @@
*/
package org.richfaces.test;
+import java.io.ByteArrayInputStream;
import java.io.IOException;
+import java.io.InputStream;
import java.io.UnsupportedEncodingException;
import java.net.URL;
import java.util.ArrayList;
@@ -16,12 +18,17 @@
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.http.Cookie;
+import javax.servlet.http.HttpSession;
+import org.apache.commons.httpclient.NameValuePair;
import org.richfaces.test.stub.ServletContainer;
import org.richfaces.test.stub.StubHttpRequest;
import org.richfaces.test.stub.StubHttpResponse;
import org.richfaces.test.stub.StubServletContext;
+import com.gargoylesoftware.htmlunit.WebRequestSettings;
+import com.gargoylesoftware.htmlunit.WebResponse;
+
/**
* This class represent single connection to the server.
* @author asmirnov
@@ -239,7 +246,21 @@
return requestParameters.get(name);
}
+ /* (non-Javadoc)
+ * @see javax.servlet.http.HttpServletRequest#getSession()
+ */
+ public HttpSession getSession() {
+ return server.getSession();
+ }
+ /* (non-Javadoc)
+ * @see javax.servlet.http.HttpServletRequest#getSession(boolean)
+ */
+ public HttpSession getSession(boolean create) {
+ return server.getSession(create);
+ }
+
+
}
@@ -257,4 +278,79 @@
}
}
+
+ public WebResponse getWebResponse(final WebRequestSettings settings) {
+ // TODO Auto-generated method stub
+ return new WebResponse(){
+
+ public InputStream getContentAsStream() throws IOException {
+ return new ByteArrayInputStream(getResponseBody());
+ }
+
+ public String getContentAsString() {
+ // TODO Auto-generated method stub
+ return response.getWriterContent();
+ }
+
+ public String getContentCharSet() {
+ return response.getCharacterEncoding();
+ }
+
+ public String getContentType() {
+ return response.getContentType();
+ }
+
+ public long getLoadTimeInMilliSeconds() {
+ return 0;
+ }
+
+ public com.gargoylesoftware.htmlunit.HttpMethod getRequestMethod() {
+ return com.gargoylesoftware.htmlunit.HttpMethod.valueOf(getMethod().toString());
+ }
+
+ public WebRequestSettings getRequestSettings() {
+ return settings;
+ }
+
+ public byte[] getResponseBody() {
+ byte[] content = response.getStreamContent();
+ if(null == content){
+ String writerContent = response.getWriterContent();
+ if(null != writerContent){
+ try {
+ content = writerContent.getBytes(response.getCharacterEncoding());
+ } catch (UnsupportedEncodingException e) {
+ content = writerContent.getBytes();
+ }
+ } else {
+ content = new byte[0];
+ }
+ }
+ return content;
+ }
+
+ public String getResponseHeaderValue(String headerName) {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ public int getStatusCode() {
+ return response.getStatus();
+ }
+
+ public String getStatusMessage() {
+ return response.getErrorMessage();
+ }
+
+ public URL getUrl() {
+ return url;
+ }
+
+ public List<NameValuePair> getResponseHeaders() {
+ // TODO Auto-generated method stub
+ return Collections.emptyList();
+ }
+
+ };
+ }
}
Modified: branches/jsf2.0/framework/jsf-test/src/main/java/org/richfaces/test/ServerLogger.java
===================================================================
--- branches/jsf2.0/framework/jsf-test/src/main/java/org/richfaces/test/ServerLogger.java 2008-11-05 18:52:26 UTC (rev 11037)
+++ branches/jsf2.0/framework/jsf-test/src/main/java/org/richfaces/test/ServerLogger.java 2008-11-06 00:56:55 UTC (rev 11038)
@@ -12,7 +12,8 @@
public enum ServerLogger {
RESOURCE("resource"),
- SERVER("server");
+ CONNECTION("connection"),
+ SERVER("server");
private static final String PREFIX="org.richfaces.test.";
Modified: branches/jsf2.0/framework/jsf-test/src/main/java/org/richfaces/test/stub/NotImplementedException.java
===================================================================
--- branches/jsf2.0/framework/jsf-test/src/main/java/org/richfaces/test/stub/NotImplementedException.java 2008-11-05 18:52:26 UTC (rev 11037)
+++ branches/jsf2.0/framework/jsf-test/src/main/java/org/richfaces/test/stub/NotImplementedException.java 2008-11-06 00:56:55 UTC (rev 11038)
@@ -4,16 +4,18 @@
package org.richfaces.test.stub;
/**
+ * This exception indicates feature not yet implemented in the stub server.
* @author asmirnov
*
*/
+@SuppressWarnings("serial")
public class NotImplementedException extends RuntimeException {
/**
*
*/
public NotImplementedException() {
- // TODO Auto-generated constructor stub
+ super("This feature not yet implemented");
}
/**
Modified: branches/jsf2.0/framework/jsf-test/src/main/java/org/richfaces/test/stub/StubHttpRequest.java
===================================================================
--- branches/jsf2.0/framework/jsf-test/src/main/java/org/richfaces/test/stub/StubHttpRequest.java 2008-11-05 18:52:26 UTC (rev 11037)
+++ branches/jsf2.0/framework/jsf-test/src/main/java/org/richfaces/test/stub/StubHttpRequest.java 2008-11-06 00:56:55 UTC (rev 11038)
@@ -13,6 +13,7 @@
import java.util.HashMap;
import java.util.Locale;
import java.util.Map;
+import java.util.logging.Logger;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletInputStream;
@@ -24,6 +25,7 @@
import org.richfaces.collections.collect.ImmutableList;
import org.richfaces.collections.collect.Multimap;
import org.richfaces.collections.collect.Multimaps;
+import org.richfaces.test.ServerLogger;
/**
* @author asmirnov
@@ -31,6 +33,8 @@
*/
public abstract class StubHttpRequest implements HttpServletRequest {
+ private static final Logger log = ServerLogger.CONNECTION.getLogger();
+
public static final String LOCALHOST = "localhost";
public static final String HTTP = "http";
public static final String LOCALHOST_IP = "127.0.0.1";
@@ -45,6 +49,7 @@
*/
public String getAuthType() {
// TODO configure test auth.
+ log.info("unimplemented request method getAuthType");
return null;
}
@@ -66,6 +71,7 @@
*/
public long getDateHeader(String name) {
// TODO create headers support
+ log.info("unimplemented request method getDateHeader");
return -1;
}
@@ -76,6 +82,7 @@
*/
public String getHeader(String name) {
// TODO create headers support
+ log.info("unimplemented request method getHeader");
return null;
}
@@ -87,6 +94,7 @@
@SuppressWarnings("unchecked")
public Enumeration getHeaderNames() {
// TODO create headers support
+ log.info("unimplemented request method getHeaderNames");
return null;
}
@@ -98,6 +106,7 @@
@SuppressWarnings("unchecked")
public Enumeration getHeaders(String name) {
// TODO create headers support
+ log.info("unimplemented request method getHeaders");
return Collections.enumeration(Collections.EMPTY_LIST);
}
@@ -108,6 +117,7 @@
*/
public int getIntHeader(String name) {
// TODO create headers support
+ log.info("unimplemented request method getIntHeader");
return -1;
}
@@ -129,6 +139,7 @@
*/
public String getRemoteUser() {
// TODO configure test auth.
+ log.info("unimplemented request method getRemoteUser");
return null;
}
@@ -154,39 +165,15 @@
}
- private StubHttpSession session;
/*
* (non-Javadoc)
*
- * @see javax.servlet.http.HttpServletRequest#getSession()
- */
- public HttpSession getSession() {
- if (session == null) {
- session = new StubHttpSession();
- }
- return session;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see javax.servlet.http.HttpServletRequest#getSession(boolean)
- */
- public HttpSession getSession(boolean create) {
- if (session == null && create) {
- session = new StubHttpSession();
- }
- return session;
- }
-
- /*
- * (non-Javadoc)
- *
* @see javax.servlet.http.HttpServletRequest#getUserPrincipal()
*/
public Principal getUserPrincipal() {
// TODO implement test auth.
+ log.info("unimplemented request method getUserPrincipal");
return null;
}
@@ -225,7 +212,8 @@
* @see javax.servlet.http.HttpServletRequest#isRequestedSessionIdValid()
*/
public boolean isRequestedSessionIdValid() {
- return session != null;
+ // TODO - check session.
+ return false;
}
/*
@@ -235,6 +223,7 @@
*/
public boolean isUserInRole(String role) {
// TODO implement test auth.
+ log.info("unimplemented request method isUserInRole");
return false;
}
@@ -283,6 +272,7 @@
* @see javax.servlet.ServletRequest#getContentType()
*/
public String getContentType() {
+ log.info("unimplemented request method getContentType");
return null;
}
@@ -293,6 +283,7 @@
*/
public ServletInputStream getInputStream() throws IOException {
// TODO implement post stream.
+ log.info("unimplemented request method getInputStream");
return null;
}
@@ -340,8 +331,8 @@
*
* @see javax.servlet.ServletRequest#getLocales()
*/
+ @SuppressWarnings("unchecked")
public Enumeration getLocales() {
- // TODO Auto-generated method stub
return Collections.enumeration(locales);
}
@@ -363,6 +354,7 @@
*/
public BufferedReader getReader() throws IOException {
// TODO implements request buffer.
+ log.info("unimplemented request method getReader");
return null;
}
@@ -409,7 +401,8 @@
*/
public RequestDispatcher getRequestDispatcher(String path) {
// TODO Auto-generated method stub
- return null;
+ throw new NotImplementedException();
+ // return null;
}
/*
@@ -454,6 +447,7 @@
* @see javax.servlet.ServletRequest#removeAttribute(java.lang.String)
*/
public void removeAttribute(String name) {
+ // TODO - inform listeners
attributes.remove(name);
}
@@ -465,6 +459,7 @@
* java.lang.Object)
*/
public void setAttribute(String name, Object o) {
+ // TODO - inform listeners
attributes.put(name, o);
}
Modified: branches/jsf2.0/framework/jsf-test/src/main/java/org/richfaces/test/stub/StubHttpResponse.java
===================================================================
--- branches/jsf2.0/framework/jsf-test/src/main/java/org/richfaces/test/stub/StubHttpResponse.java 2008-11-05 18:52:26 UTC (rev 11037)
+++ branches/jsf2.0/framework/jsf-test/src/main/java/org/richfaces/test/stub/StubHttpResponse.java 2008-11-06 00:56:55 UTC (rev 11038)
@@ -10,11 +10,15 @@
import java.util.ArrayList;
import java.util.List;
import java.util.Locale;
+import java.util.logging.Logger;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletResponse;
+import org.apache.commons.httpclient.HttpStatus;
+import org.richfaces.test.ServerLogger;
+
/**
* @author asmirnov
*
@@ -22,8 +26,11 @@
public abstract class StubHttpResponse implements HttpServletResponse {
- private int status = 0;
+ private static final Logger log = ServerLogger.CONNECTION.getLogger();
+
+ private int status = 200;
+
private String redirectLocation = null;
private String errorMessage = null;
@@ -39,6 +46,10 @@
private ServletOutputStream servletOutputStream;
private Locale locale = Locale.US;
+
+ private String contentType="text";
+
+ private String encoding = StubHttpRequest.UTF8;
/*
@@ -49,6 +60,7 @@
* long)
*/
public void addDateHeader(String name, long date) {
+ log.info("unimplemented response method addDateHeader");
// TODO Auto-generated method stub
}
@@ -61,6 +73,7 @@
*/
public void addHeader(String name, String value) {
// TODO Auto-generated method stub
+ log.info("unimplemented response method addHeader");
}
@@ -73,6 +86,7 @@
*/
public void addIntHeader(String name, int value) {
// TODO Auto-generated method stub
+ log.info("unimplemented response method addIntHeader");
}
@@ -84,6 +98,7 @@
*/
public boolean containsHeader(String name) {
// TODO Auto-generated method stub
+ log.info("unimplemented response method containsHeader");
return false;
}
@@ -106,7 +121,6 @@
* )
*/
public String encodeRedirectUrl(String url) {
- // TODO Auto-generated method stub
return encodeRedirectURL(url);
}
@@ -168,7 +182,7 @@
*/
public void setDateHeader(String name, long date) {
// TODO Auto-generated method stub
-
+ log.info("unimplemented response method setDateHeader");
}
/*
@@ -179,7 +193,7 @@
*/
public void setHeader(String name, String value) {
// TODO Auto-generated method stub
-
+ log.info("unimplemented response method setHeader");
}
/*
@@ -191,7 +205,7 @@
*/
public void setIntHeader(String name, int value) {
// TODO Auto-generated method stub
-
+ log.info("unimplemented response method setIntHeader");
}
/*
@@ -221,7 +235,7 @@
*/
public void flushBuffer() throws IOException {
// do nothing
-
+ log.info("unimplemented response method flushBuffer");
}
/*
@@ -239,7 +253,7 @@
* @see javax.servlet.ServletResponse#getCharacterEncoding()
*/
public String getCharacterEncoding() {
- return StubHttpRequest.UTF8;
+ return encoding;
}
/*
@@ -248,7 +262,7 @@
* @see javax.servlet.ServletResponse#getContentType()
*/
public String getContentType() {
- return "text/html;charset=UTF-8";
+ return contentType;
}
/*
@@ -320,6 +334,7 @@
*/
public boolean isCommitted() {
// TODO Auto-generated method stub
+ log.info("unimplemented response method isCommited");
return false;
}
@@ -365,8 +380,7 @@
* @see javax.servlet.ServletResponse#setCharacterEncoding(java.lang.String)
*/
public void setCharacterEncoding(String charset) {
- // TODO Auto-generated method stub
-
+ encoding = charset;
}
/*
@@ -376,7 +390,7 @@
*/
public void setContentLength(int len) {
// TODO Auto-generated method stub
-
+ log.info("unimplemented response method setContentLenght");
}
/*
@@ -385,8 +399,7 @@
* @see javax.servlet.ServletResponse#setContentType(java.lang.String)
*/
public void setContentType(String type) {
- // TODO Auto-generated method stub
-
+ contentType = type;
}
/*
@@ -399,4 +412,25 @@
}
+ /**
+ * @return the status
+ */
+ public int getStatus() {
+ return status;
+ }
+
+ /**
+ * @return the redirectLocation
+ */
+ public String getRedirectLocation() {
+ return redirectLocation;
+ }
+
+ /**
+ * @return the errorMessage
+ */
+ public String getErrorMessage() {
+ return errorMessage;
+ }
+
}
Modified: branches/jsf2.0/framework/jsf-test/src/main/java/org/richfaces/test/stub/StubHttpSession.java
===================================================================
--- branches/jsf2.0/framework/jsf-test/src/main/java/org/richfaces/test/stub/StubHttpSession.java 2008-11-05 18:52:26 UTC (rev 11037)
+++ branches/jsf2.0/framework/jsf-test/src/main/java/org/richfaces/test/stub/StubHttpSession.java 2008-11-06 00:56:55 UTC (rev 11038)
@@ -3,7 +3,12 @@
*/
package org.richfaces.test.stub;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collections;
import java.util.Enumeration;
+import java.util.HashMap;
+import java.util.Map;
import javax.servlet.ServletContext;
import javax.servlet.http.HttpSession;
@@ -13,47 +18,64 @@
* @author asmirnov
*
*/
-public class StubHttpSession implements HttpSession {
+public abstract class StubHttpSession implements HttpSession {
+ private static final int DEFAULT_INACTIVE_TIME = 30;
+
public static final String SESSION_ID="1234567890";
+
+ private final Map<String, Object> attributes = new HashMap<String, Object>();
+
+ private final long creationTime;
+
+
+ private int inactiveTime = DEFAULT_INACTIVE_TIME;
+
+ public StubHttpSession() {
+ this.creationTime = System.currentTimeMillis();
+ }
+
+
+ /**
+ *
+ */
+ public void destroy(){
+ }
/* (non-Javadoc)
* @see javax.servlet.http.HttpSession#getAttribute(java.lang.String)
*/
public Object getAttribute(String name) {
- // TODO Auto-generated method stub
- return null;
+ return attributes.get(name);
}
/* (non-Javadoc)
* @see javax.servlet.http.HttpSession#getAttributeNames()
*/
+ @SuppressWarnings("unchecked")
public Enumeration getAttributeNames() {
- // TODO Auto-generated method stub
- return null;
+ return Collections.enumeration(attributes.keySet());
}
/* (non-Javadoc)
* @see javax.servlet.http.HttpSession#getCreationTime()
*/
public long getCreationTime() {
- // TODO Auto-generated method stub
- return 0;
+ return creationTime;
}
/* (non-Javadoc)
* @see javax.servlet.http.HttpSession#getId()
*/
public String getId() {
- // TODO Auto-generated method stub
- return null;
+ return SESSION_ID;
}
/* (non-Javadoc)
* @see javax.servlet.http.HttpSession#getLastAccessedTime()
*/
public long getLastAccessedTime() {
- // TODO Auto-generated method stub
+ // TODO fix accessing time
return 0;
}
@@ -61,21 +83,14 @@
* @see javax.servlet.http.HttpSession#getMaxInactiveInterval()
*/
public int getMaxInactiveInterval() {
- // TODO Auto-generated method stub
- return 0;
+ return inactiveTime;
}
- /* (non-Javadoc)
- * @see javax.servlet.http.HttpSession#getServletContext()
- */
- public ServletContext getServletContext() {
- // TODO Auto-generated method stub
- return null;
- }
/* (non-Javadoc)
* @see javax.servlet.http.HttpSession#getSessionContext()
*/
+ @SuppressWarnings("deprecation")
public HttpSessionContext getSessionContext() {
// TODO Auto-generated method stub
return null;
@@ -85,16 +100,15 @@
* @see javax.servlet.http.HttpSession#getValue(java.lang.String)
*/
public Object getValue(String name) {
- // TODO Auto-generated method stub
- return null;
+ return getAttribute(name);
}
/* (non-Javadoc)
* @see javax.servlet.http.HttpSession#getValueNames()
*/
public String[] getValueNames() {
- // TODO Auto-generated method stub
- return null;
+ ArrayList<String> names = new ArrayList<String>(attributes.keySet());
+ return names.toArray(new String[names.size()]);
}
/* (non-Javadoc)
@@ -117,7 +131,7 @@
* @see javax.servlet.http.HttpSession#putValue(java.lang.String, java.lang.Object)
*/
public void putValue(String name, Object value) {
- // TODO Auto-generated method stub
+ setAttribute(name, value);
}
@@ -125,7 +139,8 @@
* @see javax.servlet.http.HttpSession#removeAttribute(java.lang.String)
*/
public void removeAttribute(String name) {
- // TODO Auto-generated method stub
+ // TODO - inform listeners
+ this.attributes.remove(name);
}
@@ -133,23 +148,22 @@
* @see javax.servlet.http.HttpSession#removeValue(java.lang.String)
*/
public void removeValue(String name) {
- // TODO Auto-generated method stub
-
+ removeAttribute(name);
}
/* (non-Javadoc)
* @see javax.servlet.http.HttpSession#setAttribute(java.lang.String, java.lang.Object)
*/
public void setAttribute(String name, Object value) {
- // TODO Auto-generated method stub
-
+ // TODO - inform listeners
+ attributes.put(name, value);
}
/* (non-Javadoc)
* @see javax.servlet.http.HttpSession#setMaxInactiveInterval(int)
*/
public void setMaxInactiveInterval(int interval) {
- // TODO Auto-generated method stub
+ this.inactiveTime = interval;
}
Modified: branches/jsf2.0/framework/jsf-test/src/main/java/org/richfaces/test/stub/StubServletContext.java
===================================================================
--- branches/jsf2.0/framework/jsf-test/src/main/java/org/richfaces/test/stub/StubServletContext.java 2008-11-05 18:52:26 UTC (rev 11037)
+++ branches/jsf2.0/framework/jsf-test/src/main/java/org/richfaces/test/stub/StubServletContext.java 2008-11-06 00:56:55 UTC (rev 11038)
@@ -13,19 +13,27 @@
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
+import java.util.logging.Level;
+import java.util.logging.Logger;
import javax.servlet.RequestDispatcher;
import javax.servlet.Servlet;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
+import org.richfaces.test.ServerLogger;
+
/**
* @author asmirnov
*
*/
public class StubServletContext implements ServletContext {
+ private static final Logger log = ServerLogger.SERVER.getLogger();
+
public static final String CONTEXT_PATH = "";
+
+ private static final String APPLICATION_NAME = "stub";
private final Map<String, Object> attributes = new HashMap<String, Object>();
private final ServerResource serverRoot;
@@ -106,6 +114,7 @@
*/
public String getMimeType(String file) {
// TODO create mime-types table.
+ log.info("unimplemented servlet context method getMimeType");
return null;
}
@@ -121,6 +130,7 @@
*/
public RequestDispatcher getNamedDispatcher(String name) {
// TODO create stub dispatcher.
+ log.info("unimplemented response method getNamedDispatcher");
return null;
}
@@ -137,6 +147,7 @@
*/
public RequestDispatcher getRequestDispatcher(String path) {
// TODO implement stub dispatcher.
+ log.info("unimplemented response method getRequestDispatcher");
return null;
}
@@ -199,6 +210,7 @@
*/
public Servlet getServlet(String name) throws ServletException {
// always return null.
+ log.info("unimplemented response method getServlet");
return null;
}
@@ -207,7 +219,7 @@
*/
public String getServletContextName() {
// Stub server has no declared name.
- return null;
+ return APPLICATION_NAME;
}
/* (non-Javadoc)
@@ -215,6 +227,7 @@
*/
@SuppressWarnings("unchecked")
public Enumeration getServletNames() {
+ log.info("unimplemented response method getServletNames");
return Collections.enumeration(Collections.EMPTY_LIST);
}
@@ -223,6 +236,7 @@
*/
@SuppressWarnings("unchecked")
public Enumeration getServlets() {
+ log.info("unimplemented response method getServlets");
return Collections.enumeration(Collections.EMPTY_LIST);
}
@@ -230,7 +244,7 @@
* @see javax.servlet.ServletContext#log(java.lang.String)
*/
public void log(String msg) {
- // TODO implement logging.
+ log.finest(msg);
}
@@ -238,7 +252,7 @@
* @see javax.servlet.ServletContext#log(java.lang.Exception, java.lang.String)
*/
public void log(Exception exception, String msg) {
- // TODO implement logging.
+ log.log(Level.FINEST, msg, exception);
}
@@ -246,14 +260,14 @@
* @see javax.servlet.ServletContext#log(java.lang.String, java.lang.Throwable)
*/
public void log(String message, Throwable throwable) {
- // TODO implement logging.
-
+ log.log(Level.FINEST, message, throwable);
}
/* (non-Javadoc)
* @see javax.servlet.ServletContext#removeAttribute(java.lang.String)
*/
public void removeAttribute(String name) {
+ // TODO - inform listeners
attributes.remove(name);
}
@@ -261,6 +275,7 @@
* @see javax.servlet.ServletContext#setAttribute(java.lang.String, java.lang.Object)
*/
public void setAttribute(String name, Object object) {
+ // TODO - inform listeners
attributes.put(name, object);
}
Modified: branches/jsf2.0/framework/jsf-test/src/test/java/org/richfaces/test/FacesServerTest.java
===================================================================
--- branches/jsf2.0/framework/jsf-test/src/test/java/org/richfaces/test/FacesServerTest.java 2008-11-05 18:52:26 UTC (rev 11037)
+++ branches/jsf2.0/framework/jsf-test/src/test/java/org/richfaces/test/FacesServerTest.java 2008-11-06 00:56:55 UTC (rev 11038)
@@ -22,6 +22,9 @@
import org.junit.BeforeClass;
import org.junit.Test;
+import com.gargoylesoftware.htmlunit.Page;
+import com.gargoylesoftware.htmlunit.WebClient;
+import com.gargoylesoftware.htmlunit.html.HtmlPage;
import com.sun.faces.config.ConfigureListener;
import com.sun.faces.util.FacesLogger;
@@ -98,10 +101,10 @@
*/
@Test
public void testGetConnection() throws Exception {
- ServerConnection connection = facesServer.getConnection(new URL(
- "http://localhost/hello.jsf"));
- connection.execute();
- System.out.println(connection.getRenderedContent());
+ WebClient webClient = new WebClient();
+ webClient.setWebConnection(facesServer.getWebConnection());
+ HtmlPage page = webClient.getPage("http://localhost/hello.jsf");
+ System.out.println(page.asXml());
}
}
16 years, 10 months
JBoss Rich Faces SVN: r11037 - in trunk/test-applications/seleniumTest/richfaces/src: main/webapp/pages/orderingList and 1 other directories.
by richfaces-svn-commits@lists.jboss.org
Author: konstantin.mishin
Date: 2008-11-05 13:52:26 -0500 (Wed, 05 Nov 2008)
New Revision: 11037
Modified:
trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/bean/OrderingListTestBean.java
trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/orderingList/orderingListTest.xhtml
trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/OrderingListTest.java
Log:
RF-4840
Modified: trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/bean/OrderingListTestBean.java
===================================================================
--- trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/bean/OrderingListTestBean.java 2008-11-05 18:32:30 UTC (rev 11036)
+++ trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/bean/OrderingListTestBean.java 2008-11-05 18:52:26 UTC (rev 11037)
@@ -39,6 +39,7 @@
private Object activeItem;
private Boolean orderControlsVisible;
+ private Boolean showButtonLabels;
public OrderingListTestBean() {
init();
@@ -52,6 +53,7 @@
}
selection = new HashSet<Item>();
orderControlsVisible = true;
+ showButtonLabels = true;
}
public Object getActionResult() {
@@ -112,6 +114,15 @@
}
+ public void setShowButtonLabels(Boolean showButtonsLabel) {
+ this.showButtonLabels = showButtonsLabel;
+ }
+
+ public Boolean getShowButtonLabels() {
+ return showButtonLabels;
+ }
+
+
private class ItemConverter implements Converter {
/* (non-Javadoc)
Modified: trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/orderingList/orderingListTest.xhtml
===================================================================
(Binary files differ)
Modified: trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/OrderingListTest.java
===================================================================
--- trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/OrderingListTest.java 2008-11-05 18:32:30 UTC (rev 11036)
+++ trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/OrderingListTest.java 2008-11-05 18:52:26 UTC (rev 11037)
@@ -68,6 +68,8 @@
private String orderControlsVisibleId;
+ private String showButtonLabelsId;
+
/**
* Check 'fastOrderControlsVisible' and 'orderControlsVisible' attributes
*/
@@ -88,6 +90,25 @@
}
/**
+ * Check Check 'showButtonsLabel' attribute
+ */
+ @Test
+ public void testShowButtonsLabel(Template template) {
+ renderPage(template, initMethod);
+ initFields();
+ Assert.assertTrue(selenium.getText(firstButtonDisabled).length()!=0);
+ Assert.assertTrue(selenium.getText(upButtonDisabled).length()!=0);
+ Assert.assertTrue(selenium.getText(downButtonDisabled).length()!=0);
+ Assert.assertTrue(selenium.getText(lastButtonDisabled).length()!=0);
+ clickAjaxCommandAndWait(showButtonLabelsId);
+ clickAjaxCommandAndWait(submitId);
+ Assert.assertFalse(selenium.getText(firstButtonDisabled).length()!=0);
+ Assert.assertFalse(selenium.getText(upButtonDisabled).length()!=0);
+ Assert.assertFalse(selenium.getText(downButtonDisabled).length()!=0);
+ Assert.assertFalse(selenium.getText(lastButtonDisabled).length()!=0);
+ }
+
+ /**
* 'required' and 'requiredMessage' attributes work
*/
@Test
@@ -252,6 +273,7 @@
server = orderingListId + ":1:_server";
messagesId = formId + "messages";
orderControlsVisibleId = attrFormId + ":orderControlsVisibleId";
+ showButtonLabelsId = attrFormId + ":showButtonLabelsId";
}
public String getTestUrl() {
16 years, 10 months
JBoss Rich Faces SVN: r11036 - in trunk/test-applications/seleniumTest/richfaces/src: main/webapp/WEB-INF and 2 other directories.
by richfaces-svn-commits@lists.jboss.org
Author: konstantin.mishin
Date: 2008-11-05 13:32:30 -0500 (Wed, 05 Nov 2008)
New Revision: 11036
Modified:
trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/bean/OrderingListTestBean.java
trunk/test-applications/seleniumTest/richfaces/src/main/webapp/WEB-INF/faces-config.xml
trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/orderingList/orderingListTest.xhtml
trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/OrderingListTest.java
Log:
RF-4839
Modified: trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/bean/OrderingListTestBean.java
===================================================================
--- trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/bean/OrderingListTestBean.java 2008-11-05 18:28:56 UTC (rev 11035)
+++ trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/bean/OrderingListTestBean.java 2008-11-05 18:32:30 UTC (rev 11036)
@@ -38,13 +38,20 @@
private Collection<Item> selection;
private Object activeItem;
+ private Boolean orderControlsVisible;
+
public OrderingListTestBean() {
+ init();
+ }
+
+ public void init() {
converter = new ItemConverter();
items = new ArrayList<Item>();
for (int i = 0; i < 4; i++) {
items.add(new Item("item" + i));
}
selection = new HashSet<Item>();
+ orderControlsVisible = true;
}
public Object getActionResult() {
@@ -96,6 +103,15 @@
}
+ public void setOrderControlsVisible(Boolean orderControlsVisible) {
+ this.orderControlsVisible = orderControlsVisible;
+ }
+
+ public Boolean getOrderControlsVisible() {
+ return orderControlsVisible;
+ }
+
+
private class ItemConverter implements Converter {
/* (non-Javadoc)
Modified: trunk/test-applications/seleniumTest/richfaces/src/main/webapp/WEB-INF/faces-config.xml
===================================================================
--- trunk/test-applications/seleniumTest/richfaces/src/main/webapp/WEB-INF/faces-config.xml 2008-11-05 18:28:56 UTC (rev 11035)
+++ trunk/test-applications/seleniumTest/richfaces/src/main/webapp/WEB-INF/faces-config.xml 2008-11-05 18:32:30 UTC (rev 11036)
@@ -144,7 +144,7 @@
<managed-bean>
<managed-bean-name>orderingListBean</managed-bean-name>
<managed-bean-class>org.ajax4jsf.bean.OrderingListTestBean</managed-bean-class>
- <managed-bean-scope>request</managed-bean-scope>
+ <managed-bean-scope>session</managed-bean-scope>
</managed-bean>
<managed-bean>
<managed-bean-name>dataTableBean</managed-bean-name>
Modified: trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/orderingList/orderingListTest.xhtml
===================================================================
(Binary files differ)
Modified: trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/OrderingListTest.java
===================================================================
--- trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/OrderingListTest.java 2008-11-05 18:28:56 UTC (rev 11035)
+++ trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/OrderingListTest.java 2008-11-05 18:32:30 UTC (rev 11036)
@@ -28,8 +28,12 @@
public class OrderingListTest extends SeleniumTestBase {
- private String orderingListId;
+ private String initMethod = "#{orderingListBean.init}";
+ private String orderingListId;
+
+ private String submitId;
+
private String firstButton;
private String firstButtonDisabled;
@@ -62,7 +66,28 @@
private String messagesId;
+ private String orderControlsVisibleId;
+
/**
+ * Check 'fastOrderControlsVisible' and 'orderControlsVisible' attributes
+ */
+ @Test
+ public void testOrderControlsVisible(Template template) {
+ renderPage(template, initMethod);
+ initFields();
+ Assert.assertTrue(selenium.isElementPresent(firstButtonDisabled));
+ Assert.assertTrue(selenium.isElementPresent(upButtonDisabled));
+ Assert.assertTrue(selenium.isElementPresent(downButtonDisabled));
+ Assert.assertTrue(selenium.isElementPresent(lastButtonDisabled));
+ clickAjaxCommandAndWait(orderControlsVisibleId);
+ clickAjaxCommandAndWait(submitId);
+ Assert.assertFalse(selenium.isElementPresent(firstButtonDisabled));
+ Assert.assertFalse(selenium.isElementPresent(upButtonDisabled));
+ Assert.assertFalse(selenium.isElementPresent(downButtonDisabled));
+ Assert.assertFalse(selenium.isElementPresent(lastButtonDisabled));
+ }
+
+ /**
* 'required' and 'requiredMessage' attributes work
*/
@Test
@@ -115,7 +140,7 @@
@Test
public void testActions(Template template) {
- renderPage(template);
+ renderPage(template, initMethod);
initFields();
writeStatus("Select two rows");
@@ -202,8 +227,9 @@
private void initFields() {
String formId = getParentId() + "_form:";
+ String attrFormId = getParentId() + "attrFormId";
orderingListId = formId + "orderingList";
-
+ submitId = formId + "submitId";
firstButton = orderingListId + "first";
firstButtonDisabled = orderingListId + "disfirst";
@@ -225,6 +251,7 @@
ajax = firstRow + ":_ajax";
server = orderingListId + ":1:_server";
messagesId = formId + "messages";
+ orderControlsVisibleId = attrFormId + ":orderControlsVisibleId";
}
public String getTestUrl() {
16 years, 10 months
JBoss Rich Faces SVN: r11035 - in trunk/test-applications/seleniumTest/richfaces/src: test/java/org/richfaces and 1 other directories.
by richfaces-svn-commits@lists.jboss.org
Author: vmolotkov
Date: 2008-11-05 13:28:56 -0500 (Wed, 05 Nov 2008)
New Revision: 11035
Added:
trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/inplaceInput/testStandartAttributes.xhtml
Modified:
trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/inplaceInput/testValidator.xhtml
trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/SeleniumEvent.java
trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/SeleniumTestBase.java
trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/InplaceInputTest.java
Log:
tests for inplaceinput
Added: trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/inplaceInput/testStandartAttributes.xhtml
===================================================================
--- trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/inplaceInput/testStandartAttributes.xhtml (rev 0)
+++ trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/inplaceInput/testStandartAttributes.xhtml 2008-11-05 18:28:56 UTC (rev 11035)
@@ -0,0 +1,40 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<ui:composition
+ xmlns:a4j="http://richfaces.org/a4j"
+ xmlns:h="http://java.sun.com/jsf/html"
+ xmlns:rich="http://richfaces.org/rich"
+ xmlns:f="http://java.sun.com/jsf/core"
+ xmlns:ui="http://java.sun.com/jsf/facelets"
+ template="../../template/caseTemplate.xhtml">
+ <ui:define name="caseName">testStandartAttributes</ui:define>
+ <ui:define name="caseBody">
+ <style>
+ .classForInplaceinput {
+ color: red;
+ }
+ </style>
+ <h:form id="_form">
+ <table cellpadding="5" >
+ <tr>
+ <td></td>
+ <td>
+ <rich:inplaceInput id="ii_tsa" value="test" style="border: 3px"
+ styleClass="classForInplaceinput"
+ onclick="EventQueue.fire('onclick')"
+ ondblclick="EventQueue.fire('ondblclick')"
+ onkeydown="EventQueue.fire('onkeydown')"
+ onkeypress="EventQueue.fire('onkeypress')"
+ onkeyup="EventQueue.fire('onkeyup')"
+ onmousedown="EventQueue.fire('onmousedown')"
+ onmousemove="EventQueue.fire('onmousemove')"
+ onmouseout="EventQueue.fire('onmouseout')"
+ onmouseover="EventQueue.fire('onmouseover')"
+ onmouseup="EventQueue.fire('onmouseup')">
+ </rich:inplaceInput>
+ </td>
+ <td></td>
+ </tr>
+ </table>
+ </h:form>
+ </ui:define>
+</ui:composition>
Modified: trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/inplaceInput/testValidator.xhtml
===================================================================
--- trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/inplaceInput/testValidator.xhtml 2008-11-05 18:04:06 UTC (rev 11034)
+++ trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/inplaceInput/testValidator.xhtml 2008-11-05 18:28:56 UTC (rev 11035)
@@ -6,16 +6,17 @@
xmlns:f="http://java.sun.com/jsf/core"
xmlns:ui="http://java.sun.com/jsf/facelets"
template="../../template/caseTemplate.xhtml">
- <ui:define name="caseName">testControlsFacet</ui:define>
+ <ui:define name="caseName">testValidator</ui:define>
<ui:define name="caseBody">
<h:form id="_form">
+ <h:panelGroup id="group_tv2">
<table cellpadding="5" >
<tr>
<td>1</td>
<td>
<rich:inplaceInput id="ii_tv1" value="test" validator="#{inplaceInputBean.validator}">
</rich:inplaceInput>
- <h:commandButton id="bn_tv1" action="#{inplaceInputBean.action}" value="Submit"></h:commandButton>
+ <a4j:commandButton id="bn_tv1" reRender="group_tv2" value="Submit"/>
</td>
<td><span id="text_tv1"><h:message for="ii_tv1"/></span></td>
</tr>
@@ -25,11 +26,12 @@
<rich:inplaceInput id="ii_tv2" value="test" >
<f:validator validatorId="inplaceInputValidator" />
</rich:inplaceInput>
- <h:commandButton id="bn_tv2" action="#{inplaceInputBean.action}" value="Submit"/>
+ <a4j:commandButton id="bn_tv2" reRender="group_tv2" value="Submit"/>
</td>
<td><span id="text_tv2"><h:message for="ii_tv2"></h:message></span></td>
</tr>
</table>
+ </h:panelGroup>
</h:form>
</ui:define>
</ui:composition>
Modified: trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/SeleniumEvent.java
===================================================================
--- trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/SeleniumEvent.java 2008-11-05 18:04:06 UTC (rev 11034)
+++ trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/SeleniumEvent.java 2008-11-05 18:28:56 UTC (rev 11035)
@@ -6,7 +6,7 @@
public enum SeleniumEvent {
ONCLICK("onclick"),
- ONDBCLICK("ondbclick"),
+ ONDBLCLICK("ondblclick"),
ONMOUSEOVER("onmouseover"),
ONMOUSEMOVE("onmousemove"),
ONMOUSEOUT("onmouseout"),
@@ -15,8 +15,12 @@
ONDRAGANDDROP("ondraganddrop"),
ONKEYDOWN("onkeydown"),
ONKEYUP("onkeyup"),
- ONKEYPRESS("onkeypress");
+ ONKEYPRESS("onkeypress"),
+ ONFOCUS("onfocus"),
+ ONBLUR("onblur"),
+ ONCHANGE("onchange");
+
private String name;
@SuppressWarnings("serial")
@@ -28,6 +32,7 @@
};
static {
STANDARD_HTML_EVENTS.add(ONCLICK);
+ STANDARD_HTML_EVENTS.add(ONDBLCLICK);
STANDARD_HTML_EVENTS.add(ONMOUSEOVER);
STANDARD_HTML_EVENTS.add(ONMOUSEMOVE);
STANDARD_HTML_EVENTS.add(ONMOUSEOUT);
@@ -36,7 +41,9 @@
STANDARD_HTML_EVENTS.add(ONKEYDOWN);
STANDARD_HTML_EVENTS.add(ONKEYUP);
STANDARD_HTML_EVENTS.add(ONKEYPRESS);
-
+ STANDARD_HTML_EVENTS.add(ONBLUR);
+ STANDARD_HTML_EVENTS.add(ONFOCUS);
+ STANDARD_HTML_EVENTS.add(ONCHANGE);
}
private SeleniumEvent(String name) {
Modified: trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/SeleniumTestBase.java
===================================================================
--- trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/SeleniumTestBase.java 2008-11-05 18:04:06 UTC (rev 11034)
+++ trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/SeleniumTestBase.java 2008-11-05 18:28:56 UTC (rev 11035)
@@ -1140,7 +1140,7 @@
for (SeleniumEvent ev : eventsExpected) {
if (ev == SeleniumEvent.ONCLICK) {
clickById(id);
- }else if (ev == SeleniumEvent.ONDBCLICK) {
+ }else if (ev == SeleniumEvent.ONDBLCLICK) {
selenium.doubleClick(id);
} else if (ev == SeleniumEvent.ONMOUSEDOWN) {
selenium.mouseDown(id);
@@ -1210,7 +1210,7 @@
for (SeleniumEvent ev : events) {
if (ev == SeleniumEvent.ONCLICK) {
clickById(id);
- }else if (ev == SeleniumEvent.ONDBCLICK) {
+ }else if (ev == SeleniumEvent.ONDBLCLICK) {
selenium.doubleClick(id);
} else if (ev == SeleniumEvent.ONMOUSEDOWN) {
selenium.mouseDown(id);
Modified: trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/InplaceInputTest.java
===================================================================
--- trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/InplaceInputTest.java 2008-11-05 18:04:06 UTC (rev 11034)
+++ trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/InplaceInputTest.java 2008-11-05 18:28:56 UTC (rev 11035)
@@ -1,9 +1,12 @@
package org.richfaces.testng;
+import java.util.ArrayList;
import java.util.HashMap;
+import java.util.List;
import java.util.Map;
import org.ajax4jsf.template.Template;
+import org.richfaces.SeleniumEvent;
import org.richfaces.SeleniumTestBase;
import org.richfaces.testng.util.CommonUtils;
import org.testng.Assert;
@@ -61,6 +64,10 @@
private static final String VALIDATOR_PAGE_ID_PREFIX = "_tv";
+ private static final String STANDART_ATTRIBUTES_PAGE = "testStandartAttributes.xhtml";
+
+ private static final String STANDART_ATTRIBUTES_ID_PREFIX = "_tsa";
+
private String testUrl;
private String formId;
@@ -325,13 +332,13 @@
String iid = inplaceInputId + VALIDATOR_PAGE_ID_PREFIX;
clickById(buttonId + VALIDATOR_PAGE_ID_PREFIX + "1");
- waitForPageToLoad();
+ waitForAjaxCompletion();
check("".equals(getTextById(messageId + VALIDATOR_PAGE_ID_PREFIX + "1")),
CommonUtils.getSuccessfulTestMessage(iid + "1"),
CommonUtils.getFailedTestMessage(iid + "1"));
clickById(buttonId + VALIDATOR_PAGE_ID_PREFIX + "2");
- waitForPageToLoad();
+ waitForAjaxCompletion();
check("".equals(getTextById(messageId + VALIDATOR_PAGE_ID_PREFIX + "2")),
CommonUtils.getSuccessfulTestMessage(iid + "2"),
CommonUtils.getFailedTestMessage(iid + "2"));
@@ -353,18 +360,49 @@
setValueById(iid + "2" + "value", "test1");
clickById(buttonId + VALIDATOR_PAGE_ID_PREFIX + "1");
- waitForPageToLoad();
+ waitForAjaxCompletion();
check("Value isn't correct!".equals(getTextById(messageId + VALIDATOR_PAGE_ID_PREFIX + "1")),
CommonUtils.getSuccessfulTestMessage(iid + "1"),
CommonUtils.getFailedTestMessage(iid + "1"));
clickById(buttonId + VALIDATOR_PAGE_ID_PREFIX + "2");
- waitForPageToLoad();
+ waitForAjaxCompletion();
check("Value isn't correct!".equals(getTextById(messageId + VALIDATOR_PAGE_ID_PREFIX + "2")),
CommonUtils.getSuccessfulTestMessage(iid + "2"),
CommonUtils.getFailedTestMessage(iid + "2"));
}
+ /**
+ * style and classes, standard HTML attributes are output to client
+ *
+ * @param template - current template
+ */
+ @Test
+ public void testStandartAttributes(Template template) {
+ setTestUrl(STANDART_ATTRIBUTES_PAGE);
+ init(template);
+
+ String iid = inplaceInputId + STANDART_ATTRIBUTES_ID_PREFIX;
+ Map<String, String> styleAttributes = new HashMap<String, String>();
+ styleAttributes.put("border", "3px");
+
+ List<SeleniumEvent> events = new ArrayList<SeleniumEvent>();
+ events.add(SeleniumEvent.ONMOUSEMOVE);
+ events.add(SeleniumEvent.ONMOUSEOUT);
+ events.add(SeleniumEvent.ONMOUSEOVER);
+ events.add(SeleniumEvent.ONCLICK);
+ events.add(SeleniumEvent.ONDBLCLICK);
+ events.add(SeleniumEvent.ONKEYDOWN);
+ events.add(SeleniumEvent.ONKEYPRESS);
+ events.add(SeleniumEvent.ONKEYUP);
+ events.add(SeleniumEvent.ONMOUSEUP);
+
+ assertClassNames(iid,new String [] {"classForInplaceinput"}, "Component's rendering invalid", true);
+ assertStyleAttributes(iid, styleAttributes);
+
+ assertEvents(iid, events);
+ }
+
private void typeAndCheck(String iid, String word, String expectedWord) {
typeWord(iid, word);
checkMessage(iid, expectedWord,
16 years, 10 months
JBoss Rich Faces SVN: r11034 - in trunk/test-applications/seleniumTest/richfaces/src: main/java/org/ajax4jsf/bean/tree and 5 other directories.
by richfaces-svn-commits@lists.jboss.org
Author: dsvyatobatsko
Date: 2008-11-05 13:04:06 -0500 (Wed, 05 Nov 2008)
New Revision: 11034
Added:
trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/bean/tree/
trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/bean/tree/TreeTestBean.java
trunk/test-applications/seleniumTest/richfaces/src/main/resources/simple-tree-data.properties
trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/tree/
trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/tree/treeAutoTest.xhtml
trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/tree/treeTest.xhtml
trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/TreeTest.java
Modified:
trunk/test-applications/seleniumTest/richfaces/src/main/webapp/WEB-INF/faces-config.xml
Log:
tree tests
Added: trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/bean/tree/TreeTestBean.java
===================================================================
--- trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/bean/tree/TreeTestBean.java (rev 0)
+++ trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/bean/tree/TreeTestBean.java 2008-11-05 18:04:06 UTC (rev 11034)
@@ -0,0 +1,106 @@
+/**
+ * License Agreement.
+ *
+ * JBoss RichFaces - Ajax4jsf Component Library
+ *
+ * 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.bean.tree;
+
+import java.io.IOException;
+import java.io.InputStream;
+import java.util.Properties;
+
+import javax.faces.FacesException;
+import javax.faces.context.ExternalContext;
+import javax.faces.context.FacesContext;
+
+import org.richfaces.model.TreeNode;
+import org.richfaces.model.TreeNodeImpl;
+
+/**
+ * Copied from demo
+ */
+public class TreeTestBean {
+
+ private TreeNode<String> rootNode = null;
+
+ private String nodeTitle;
+
+ private static final String DATA_PATH = "/simple-tree-data.properties";
+
+ private void addNodes(String path, TreeNode<String> node, Properties properties) {
+ boolean end = false;
+ int counter = 1;
+
+ while (!end) {
+ String key = path != null ? path + '.' + counter : String.valueOf(counter);
+
+ String value = properties.getProperty(key);
+ if (value != null) {
+ TreeNode<String> nodeImpl = new TreeNodeImpl<String>();
+ nodeImpl.setData(value);
+ node.addChild(new Integer(counter), nodeImpl);
+ addNodes(key, nodeImpl, properties);
+ counter++;
+ } else {
+ end = true;
+ }
+ }
+ }
+
+ private void loadTree() {
+ FacesContext facesContext = FacesContext.getCurrentInstance();
+ ExternalContext externalContext = facesContext.getExternalContext();
+ InputStream dataStream = this.getClass().getClassLoader().getResourceAsStream(DATA_PATH);
+ try {
+ Properties properties = new Properties();
+ properties.load(dataStream);
+
+ rootNode = new TreeNodeImpl<String>();
+ addNodes(null, rootNode, properties);
+
+ } catch (IOException e) {
+ throw new FacesException(e.getMessage(), e);
+ } finally {
+ if (dataStream != null) {
+ try {
+ dataStream.close();
+ } catch (IOException e) {
+ externalContext.log(e.getMessage(), e);
+ }
+ }
+ }
+ }
+
+ public TreeNode<String> getTreeNode() {
+ if (rootNode == null) {
+ loadTree();
+ }
+
+ return rootNode;
+ }
+
+ public String getNodeTitle() {
+ return nodeTitle;
+ }
+
+ public void setNodeTitle(String nodeTitle) {
+ this.nodeTitle = nodeTitle;
+ }
+
+}
Property changes on: trunk/test-applications/seleniumTest/richfaces/src/main/java/org/ajax4jsf/bean/tree/TreeTestBean.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
Added: trunk/test-applications/seleniumTest/richfaces/src/main/resources/simple-tree-data.properties
===================================================================
--- trunk/test-applications/seleniumTest/richfaces/src/main/resources/simple-tree-data.properties (rev 0)
+++ trunk/test-applications/seleniumTest/richfaces/src/main/resources/simple-tree-data.properties 2008-11-05 18:04:06 UTC (rev 11034)
@@ -0,0 +1,66 @@
+1=Daniel Defo
+1.1=Robinson Crusoe
+1.1.1=Start In Life
+1.1.2=Slavery And Escape
+1.1.3=Wrecked On A Desert Island
+1.1.4=First Weeks On The Island
+1.1.5=Builds A House - The Journal
+1.1.6=Ill And Conscience-Stricken
+1.1.7=Agricultural Experience
+1.1.8=Surveys His Position
+1.1.9=A Boat
+1.1.10=Tames Goats
+1.1.11=Finds Print Of Man's Foot On The Sand
+1.1.12=A Cave Retreat
+1.1.13=Wreck Of A Spanish Ship
+1.1.14=A Dream Realised
+1.1.15=Friday's Education
+1.1.16=Rescue Of Prisoners From Cannibals
+1.1.17=Visit Of Mutineers
+1.1.18=The Ship Recovered
+1.1.19=Return To England
+1.1.20=Fight Between Friday And A Bear
+2=Edgar Allan Poe
+2.1=Plays
+2.1.1=Politian
+2.2=Short stories
+2.2.1=The Assignation
+2.2.2=Berenice
+2.2.3=The Black Cat
+2.2.4=The Cask of Amontillado
+2.2.5=A Descent into the Maelstrom
+2.3=Poetry
+2.3.1=Alone
+2.3.2=An Enigma
+2.3.3=Annabel Lee
+2.3.4=Bridal Ballad
+3=Henry Wadsworth Longfellow
+3.1=The Song of Hiawatha
+3.1.1=Introduction
+3.1.2=I. The Peace-Pipe
+3.1.3=II. The Four Winds
+3.1.4=III. Hiawatha's Childhood
+3.1.5=IV. Hiawatha and Mudjekeewis
+3.1.6=V. Hiawatha's Fasting
+3.1.7=VI. Hiawatha's Friends
+3.1.8=VII. Hiawatha's Sailing
+3.1.9=VIII. Hiawatha's Fishing
+3.1.10=IX. Hiawatha and the Pearl-Feather
+3.1.11=X. Hiawatha's Wooing
+3.1.12=XI. Hiawatha's Wedding-Feast
+3.1.13=XII. The Son of the Evening Star
+3.1.14=XIII. Blessing the Cornfields
+3.1.15=XIV. Picture-Writing
+3.1.16=XV. Hiawatha's Lamentation
+3.1.17=XVI. Pau-Puk-Keewis
+3.1.18=XVII. The Hunting of Pau-Puk-Keewis
+3.1.19=XVIII. The Death of Kwasind
+3.1.20=XIX. The Ghosts
+3.1.21=XX. The Famine
+3.1.22=XXI. The White Man's Foot
+3.1.23=XXII. Hiawatha's Departure
+3.2=Poetry
+3.2.1=A Psalm Of Life
+3.2.2=Birds Of Passage
+3.2.3=Hiawatha's Childhood
+3.2.4=Hymn To The Night
\ No newline at end of file
Property changes on: trunk/test-applications/seleniumTest/richfaces/src/main/resources/simple-tree-data.properties
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:eol-style
+ native
Modified: trunk/test-applications/seleniumTest/richfaces/src/main/webapp/WEB-INF/faces-config.xml
===================================================================
--- trunk/test-applications/seleniumTest/richfaces/src/main/webapp/WEB-INF/faces-config.xml 2008-11-05 16:26:42 UTC (rev 11033)
+++ trunk/test-applications/seleniumTest/richfaces/src/main/webapp/WEB-INF/faces-config.xml 2008-11-05 18:04:06 UTC (rev 11034)
@@ -260,6 +260,11 @@
<managed-bean-name>autoTestBean</managed-bean-name>
<managed-bean-class>org.ajax4jsf.autotest.bean.AutoTestBean</managed-bean-class>
<managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+ <managed-bean>
+ <managed-bean-name>treeBean</managed-bean-name>
+ <managed-bean-class>org.ajax4jsf.bean.tree.TreeTestBean</managed-bean-class>
+ <managed-bean-scope>session</managed-bean-scope>
</managed-bean>
<navigation-rule>
<from-view-id>/pages/ajaxInclude/step1.xhtml</from-view-id>
Added: trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/tree/treeAutoTest.xhtml
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/tree/treeAutoTest.xhtml
___________________________________________________________________
Name: svn:mime-type
+ application/xhtml+xml
Added: trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/tree/treeTest.xhtml
===================================================================
(Binary files differ)
Property changes on: trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/tree/treeTest.xhtml
___________________________________________________________________
Name: svn:mime-type
+ application/xhtml+xml
Added: trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/TreeTest.java
===================================================================
--- trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/TreeTest.java (rev 0)
+++ trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/TreeTest.java 2008-11-05 18:04:06 UTC (rev 11034)
@@ -0,0 +1,27 @@
+package org.richfaces.testng;
+
+import org.ajax4jsf.template.Template;
+import org.richfaces.AutoTester;
+import org.richfaces.SeleniumTestBase;
+import org.testng.annotations.Test;
+
+public class TreeTest extends SeleniumTestBase {
+
+ @Test
+ public void testRenderedAttribute(Template template) {
+ AutoTester tester = getAutoTester(this);
+ tester.renderPage(template, null);
+ writeStatus("Test component with rendered = false is not present on the page");
+ tester.testRendered();
+ }
+
+ @Override
+ public String getTestUrl() {
+ return "pages/tree/treeTest.xhtml";
+ }
+
+ @Override
+ public String getAutoTestUrl() {
+ return "pages/tree/treeAutoTest.xhtml";
+ }
+}
Property changes on: trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/TreeTest.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Author Id Revision Date
Name: svn:eol-style
+ native
16 years, 10 months
JBoss Rich Faces SVN: r11033 - in trunk/test-applications/automator/src/main: java/calendar and 5 other directories.
by richfaces-svn-commits@lists.jboss.org
Author: mvitenkov
Date: 2008-11-05 11:26:42 -0500 (Wed, 05 Nov 2008)
New Revision: 11033
Added:
trunk/test-applications/automator/src/main/java/calendar/
trunk/test-applications/automator/src/main/java/calendar/CalendarHandlers.java
trunk/test-applications/automator/src/main/webapp/component/calendar.jsp
trunk/test-applications/automator/src/main/webapp/javascripts/
trunk/test-applications/automator/src/main/webapp/javascripts/handlers.js
Modified:
trunk/test-applications/automator/src/main/webapp/WEB-INF/faces-config.xml
trunk/test-applications/automator/src/main/webapp/main/componentsList.jsp
trunk/test-applications/automator/src/main/webapp/main/main.jsp
Log:
handlers example
Added: trunk/test-applications/automator/src/main/java/calendar/CalendarHandlers.java
===================================================================
--- trunk/test-applications/automator/src/main/java/calendar/CalendarHandlers.java (rev 0)
+++ trunk/test-applications/automator/src/main/java/calendar/CalendarHandlers.java 2008-11-05 16:26:42 UTC (rev 11033)
@@ -0,0 +1,46 @@
+package calendar;
+
+import general.DrawGrids;
+
+import java.util.ArrayList;
+
+import javax.faces.component.html.HtmlPanelGrid;
+import javax.faces.event.ActionEvent;
+
+import org.richfaces.component.UICalendar;
+
+import parser.Attribute;
+import parser.TLDParser;
+
+public class CalendarHandlers {
+ private HtmlPanelGrid panelGrid;
+ private final TLDParser tldParser = new TLDParser("calendar");
+ private final ArrayList<Attribute> handlers = tldParser.getAllAttributes().getHandlers();
+
+ public CalendarHandlers(){
+ ArrayList<String> allHandlers = tldParser.getAllHandlers();
+ for(String s:allHandlers){
+ System.out.println(s);
+ }
+ }
+
+ public void testEventHandlers(ActionEvent e){
+ DrawGrids.showEventGrid(panelGrid, handlers);
+ }
+
+ public HtmlPanelGrid getPanelGrid() {
+ return panelGrid;
+ }
+
+ public void setPanelGrid(HtmlPanelGrid panelGrid) {
+ this.panelGrid = panelGrid;
+ }
+
+ public TLDParser getTldParser() {
+ return tldParser;
+ }
+
+ public ArrayList<Attribute> getHandlers() {
+ return handlers;
+ }
+}
Modified: trunk/test-applications/automator/src/main/webapp/WEB-INF/faces-config.xml
===================================================================
--- trunk/test-applications/automator/src/main/webapp/WEB-INF/faces-config.xml 2008-11-05 16:24:49 UTC (rev 11032)
+++ trunk/test-applications/automator/src/main/webapp/WEB-INF/faces-config.xml 2008-11-05 16:26:42 UTC (rev 11033)
@@ -12,6 +12,11 @@
<managed-bean-class>comboBox.ComboBoxGeneral</managed-bean-class>
<managed-bean-scope>session</managed-bean-scope>
</managed-bean>
+ <managed-bean>
+ <managed-bean-name>calendarHandlers</managed-bean-name>
+ <managed-bean-class>calendar.CalendarHandlers</managed-bean-class>
+ <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
<lifecycle>
<phase-listener>phaseTracker.PhaseTracker</phase-listener>
</lifecycle>
Added: trunk/test-applications/automator/src/main/webapp/component/calendar.jsp
===================================================================
--- trunk/test-applications/automator/src/main/webapp/component/calendar.jsp (rev 0)
+++ trunk/test-applications/automator/src/main/webapp/component/calendar.jsp 2008-11-05 16:26:42 UTC (rev 11033)
@@ -0,0 +1,46 @@
+<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
+<%@ taglib uri="http://richfaces.org/a4j" prefix="a4j"%>
+<%@ taglib uri="http://richfaces.org/rich" prefix="rich"%>
+<script type="text/javascript">
+
+</script>
+
+<f:subview id="calendarSubview">
+ <div>The <rich:calendar> component is used for creating
+ monthly calendar elements on a page.</div>
+ <rich:spacer height="30"></rich:spacer>
+
+ <h:messages id="calendarMessages" style="color:red;" />
+ <rich:calendar id="calendar" onbeforedomupdate="callOnbeforedomupdate('calendar')"
+ onchanged="callOnchanged('calendar')"
+ oncollapse="callOncollapse('calendar')"
+ oncomplete="callOncomplete('calendar')"
+ oncurrentdateselect="callOncurrentdateselect('calendar')"
+ oncurrentdateselected="callOncurrentdateselected('calendar')"
+ ondatemouseout="callOndatemouseout('calendar')"
+ ondatemouseover="callOndatemouseover('calendar')"
+ ondateselect="callOndateselect('calendar')"
+ ondateselected="callOndateselected('calendar')"
+ onexpand="callOnexpand('calendar')"
+ oninputblur="callOninputblur('calendar')"
+ oninputchange="callOninputchange('calendar')"
+ oninputclick="callOninputclick('calendar')"
+ oninputfocus="callOninputfocus('calendar')"
+ oninputkeydown="callOninputkeydown('calendar')"
+ oninputkeypress="callOninputkeypress('calendar')"
+ oninputkeyup="callOninputkeyup('calendar')"
+ oninputselect="callOninputselect('calendar')"
+ ontimeselect="callOntimeselect('calendar')"
+ ontimeselected="callOntimeselected('calendar')">
+ </rich:calendar>
+
+ <a4j:commandButton value="testEventHandlers"
+ actionListener="#{calendarHandlers.testEventHandlers}"
+ reRender="handlersResult, comboBoxGrid"></a4j:commandButton>
+
+ <h:panelGrid id="handlersResult"
+ binding="#{calendarHandlers.panelGrid}" columns="2">
+ </h:panelGrid>
+</f:subview>
+
Added: trunk/test-applications/automator/src/main/webapp/javascripts/handlers.js
===================================================================
--- trunk/test-applications/automator/src/main/webapp/javascripts/handlers.js (rev 0)
+++ trunk/test-applications/automator/src/main/webapp/javascripts/handlers.js 2008-11-05 16:26:42 UTC (rev 11033)
@@ -0,0 +1,812 @@
+var count = 0;
+
+function callOnbeforedomupdate(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onbeforedomupdateID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOncomplete(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:oncompleteID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnsubmit(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onsubmitID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnchanged(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onchangedID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOncollapse(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:oncollapseID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOncurrentdateselect(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:oncurrentdateselectID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOncurrentdateselected(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:oncurrentdateselectedID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOndatemouseout(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:ondatemouseoutID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOndatemouseover(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:ondatemouseoverID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOndateselect(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:ondateselectID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOndateselected(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:ondateselectedID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnexpand(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onexpandID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOninputblur(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:oninputblurID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOninputchange(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:oninputchangeID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOninputclick(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:oninputclickID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOninputfocus(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:oninputfocusID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOninputkeydown(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:oninputkeydownID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOninputkeypress(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:oninputkeypressID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOninputkeyup(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:oninputkeyupID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOninputselect(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:oninputselectID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOntimeselect(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:ontimeselectID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOntimeselected(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:ontimeselectedID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnblur(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onblurID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnchange(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onchangeID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnclick(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onclickID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOndblclick(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:ondblclickID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnfocus(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onfocusID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnkeydown(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onkeydownID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnkeypress(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onkeypressID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnkeyup(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onkeyupID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnlistcall(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onlistcallID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnmousedown(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onmousedownID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnmousemove(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onmousemoveID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnmouseout(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onmouseoutID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnmouseover(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onmouseoverID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnmouseup(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onmouseupID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnselect(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onselectID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOngroupactivate(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:ongroupactivateID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnitemselect(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onitemselectID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnSlideSubmit(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onSlideSubmitID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnerror(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onerrorID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnslide(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onslideID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnRowClick(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onRowClickID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnRowDblClick(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onRowDblClickID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnRowMouseDown(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onRowMouseDownID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnRowMouseMove(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onRowMouseMoveID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnRowMouseOut(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onRowMouseOutID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnRowMouseOver(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onRowMouseOverID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnRowMouseUp(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onRowMouseUpID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnpagechange(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onpagechangeID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOndragend(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:ondragendID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOndragstart(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:ondragstartID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOndropout(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:ondropoutID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOndropover(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:ondropoverID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOndragenter(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:ondragenterID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOndragexit(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:ondragexitID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOndrop(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:ondropID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOndropend(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:ondropendID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnselectionchange(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onselectionchangeID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnadd(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onaddID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnclear(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onclearID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnsizerejected(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onsizerejectedID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOntyperejected(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:ontyperejectedID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnupload(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onuploadID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnuploadcanceled(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onuploadcanceledID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnuploadcomplete(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onuploadcompleteID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOninit(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:oninitID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOneditactivated(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:oneditactivatedID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOneditactivation(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:oneditactivationID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOninputdblclick(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:oninputdblclickID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOninputmousedown(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:oninputmousedownID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOninputmousemove(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:oninputmousemoveID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOninputmouseout(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:oninputmouseoutID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOninputmouseover(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:oninputmouseoverID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOninputmouseup(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:oninputmouseupID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnviewactivated(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onviewactivatedID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnviewactivation(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onviewactivationID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOndownclick(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:ondownclickID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnupclick(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onupclickID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnbottomclick(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onbottomclickID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOncopyallclick(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:oncopyallclickID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOncopyclick(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:oncopyclickID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnlistchanged(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onlistchangedID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnorderchanged(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onorderchangedID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnremoveallclick(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onremoveallclickID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnremoveclick(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onremoveclickID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOntopclick(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:ontopclickID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnclose(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:oncloseID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnopen(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onopenID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnbeforehide(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onbeforehideID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnbeforeshow(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onbeforeshowID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnhide(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onhideID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnmaskclick(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onmaskclickID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnmaskcontextmenu(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onmaskcontextmenuID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnmaskdblclick(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onmaskdblclickID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnmaskmousedown(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onmaskmousedownID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnmaskmousemove(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onmaskmousemoveID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnmaskmouseout(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onmaskmouseoutID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnmaskmouseover(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onmaskmouseoverID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnmaskmouseup(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onmaskmouseupID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnmove(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onmoveID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnresize(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onresizeID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnshow(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onshowID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnheaderclick(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onheaderclickID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnitemchange(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onitemchangeID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnenter(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onenterID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnleave(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onleaveID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOngroupcollapse(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:ongroupcollapseID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOngroupexpand(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:ongroupexpandID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnitemhover(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onitemhoverID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnobjectchange(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onobjectchangeID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnlabelclick(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onlabelclickID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnlabeldblclick(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onlabeldblclickID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnlabelkeydown(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onlabelkeydownID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnlabelkeypress(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onlabelkeypressID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnlabelkeyup(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onlabelkeyupID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnlabelmousedown(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onlabelmousedownID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnlabelmousemove(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onlabelmousemoveID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnlabelmouseup(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onlabelmouseupID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOntabenter(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:ontabenterID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOntableave(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:ontableaveID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOntabchange(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:ontabchangeID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnitemclick(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onitemclickID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnitemdblclick(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onitemdblclickID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnitemkeydown(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onitemkeydownID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnitemkeypress(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onitemkeypressID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnitemkeyup(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onitemkeyupID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnitemmousedown(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onitemmousedownID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnitemmousemove(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onitemmousemoveID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnitemmouseout(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onitemmouseoutID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnitemmouseover(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onitemmouseoverID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnitemmouseup(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onitemmouseupID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnselected(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onselectedID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOncontextmenu(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:oncontextmenuID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
+function callOnLoadMap(id){
+ var col = document.getElementById('mainForm:' + id +'Subview:onLoadMapID');
+ col.innerHTML = '<div style="COLOR: GREEN;"><b>PASSED('+ count + ')</b></div>';
+ count++;
+ return true;
+}
\ No newline at end of file
Modified: trunk/test-applications/automator/src/main/webapp/main/componentsList.jsp
===================================================================
--- trunk/test-applications/automator/src/main/webapp/main/componentsList.jsp 2008-11-05 16:24:49 UTC (rev 11032)
+++ trunk/test-applications/automator/src/main/webapp/main/componentsList.jsp 2008-11-05 16:26:42 UTC (rev 11033)
@@ -9,5 +9,9 @@
<a4j:actionparam value="/component/comboBox.jsp"
assignTo="#{general.componentPage}" />
</a4j:commandLink>
+ <a4j:commandLink reRender="componentPage" value="Calendar">
+ <a4j:actionparam value="/component/calendar.jsp"
+ assignTo="#{general.componentPage}" />
+ </a4j:commandLink>
</h:panelGrid>
</f:subview>
\ No newline at end of file
Modified: trunk/test-applications/automator/src/main/webapp/main/main.jsp
===================================================================
--- trunk/test-applications/automator/src/main/webapp/main/main.jsp 2008-11-05 16:24:49 UTC (rev 11032)
+++ trunk/test-applications/automator/src/main/webapp/main/main.jsp 2008-11-05 16:26:42 UTC (rev 11033)
@@ -7,7 +7,7 @@
<html>
<head>
<title>Automator</title>
- </head>
+ <script type="text/javascript" src="javascripts/handlers.js"></script>
<body>
<h:form id="mainForm">
<div align="center"><h:panelGrid columns="2">
16 years, 10 months
JBoss Rich Faces SVN: r11032 - trunk/test-applications/automator/src/main/java/general.
by richfaces-svn-commits@lists.jboss.org
Author: mvitenkov
Date: 2008-11-05 11:24:49 -0500 (Wed, 05 Nov 2008)
New Revision: 11032
Modified:
trunk/test-applications/automator/src/main/java/general/DrawGrids.java
Log:
Modified: trunk/test-applications/automator/src/main/java/general/DrawGrids.java
===================================================================
--- trunk/test-applications/automator/src/main/java/general/DrawGrids.java 2008-11-05 15:54:28 UTC (rev 11031)
+++ trunk/test-applications/automator/src/main/java/general/DrawGrids.java 2008-11-05 16:24:49 UTC (rev 11032)
@@ -2,6 +2,7 @@
import java.util.ArrayList;
+import javax.faces.component.html.HtmlCommandButton;
import javax.faces.component.html.HtmlOutputText;
import javax.faces.component.html.HtmlPanelGrid;
@@ -28,6 +29,7 @@
attrName.setValue(a.getName());
HtmlOutputText attrStatus = new HtmlOutputText();
attrStatus.setValue(a.getStatus());
+ attrStatus.setId(a.getName()+ "ID");
switch (a.getStatus()) {
case FAILED:
@@ -46,7 +48,47 @@
}
}
- public static void showEventGrid(HtmlPanelGrid panelGrid, ArrayList<String> events) {
+ public static void showEventGrid(final HtmlPanelGrid panelGrid, final ArrayList<Attribute> events) {
+ panelGrid.getChildren().clear();
+
+ HtmlOutputText attrNameHeader = new HtmlOutputText();
+ attrNameHeader.setValue("Handlers");
+ attrNameHeader.setStyle("font-weight: bold; font-size: large");
+
+ HtmlOutputText attrStatusHeader = new HtmlOutputText();
+ attrStatusHeader.setValue("Status");
+ attrStatusHeader.setStyle("font-weight: bold; font-size: large");
+
+ panelGrid.getChildren().add(attrNameHeader);
+ panelGrid.getChildren().add(attrStatusHeader);
+
+ for (Attribute a : events) {
+ HtmlOutputText attrName = new HtmlOutputText();
+ attrName.setValue(a.getName());
+ HtmlOutputText attrStatus = new HtmlOutputText();
+ attrStatus.setValue(a.getStatus());
+ attrStatus.setId(a.getName() + "ID");
+
+ switch (a.getStatus()) {
+ case FAILED:
+ attrStatus.setStyle("color: red");
+ break;
+ case PASSED:
+ attrStatus.setStyle("color: green");
+ break;
+ case NOT_READY:
+ attrStatus.setStyle("color: grey");
+ break;
+ }
+
+ panelGrid.getChildren().add(attrName);
+ panelGrid.getChildren().add(attrStatus);
+ }
- }
+ HtmlCommandButton button = new HtmlCommandButton();
+ button.setValue("confirm");
+ button.setId("confirmButton");
+ //button.addActionListener(new HandlersAListener());
+ panelGrid.getChildren().add(button);
+ }
}
16 years, 10 months
JBoss Rich Faces SVN: r11031 - in trunk/sandbox/ui/editor/src/main: config/resources and 2 other directories.
by richfaces-svn-commits@lists.jboss.org
Author: alevkovsky
Date: 2008-11-05 10:54:28 -0500 (Wed, 05 Nov 2008)
New Revision: 11031
Modified:
trunk/sandbox/ui/editor/src/main/config/component/editor.xml
trunk/sandbox/ui/editor/src/main/config/resources/resources-config.xml
trunk/sandbox/ui/editor/src/main/java/org/richfaces/renderkit/EditorRendererBase.java
trunk/sandbox/ui/editor/src/main/java/org/richfaces/renderkit/resources/EditorHTMLRenderer.java
Log:
Editor: basic attributes
getting mapping suffix in EditorHTMLRenderer
Modified: trunk/sandbox/ui/editor/src/main/config/component/editor.xml
===================================================================
--- trunk/sandbox/ui/editor/src/main/config/component/editor.xml 2008-11-05 15:25:10 UTC (rev 11030)
+++ trunk/sandbox/ui/editor/src/main/config/component/editor.xml 2008-11-05 15:54:28 UTC (rev 11031)
@@ -26,6 +26,8 @@
</test>
</tag>
&ui_component_attributes;
+ &ui_input_attributes;
+ &ui_output_attributes;
<property>
<name>style</name>
<classname>java.lang.String</classname>
@@ -128,7 +130,7 @@
<name>onchange</name>
<classname>java.lang.String</classname>
<description>
- Attribute enables to specify a function name to be executed when all editor instances have finished their initialization.
+ Attribute enables to specify a function name to be executed each time content is modified by TinyMCE.
</description>
</property>
<property>
@@ -152,5 +154,15 @@
Attribute defines configuration properties file name
</description>
</property>
+ <property hidden="true">
+ <name>localValueSet</name>
+ <classname>boolean</classname>
+ <description>localValueSet</description>
+ </property>
+ <property hidden="true">
+ <name>valid</name>
+ <classname>boolean</classname>
+ <description>valid</description>
+ </property>
</component>
</components>
Modified: trunk/sandbox/ui/editor/src/main/config/resources/resources-config.xml
===================================================================
--- trunk/sandbox/ui/editor/src/main/config/resources/resources-config.xml 2008-11-05 15:25:10 UTC (rev 11030)
+++ trunk/sandbox/ui/editor/src/main/config/resources/resources-config.xml 2008-11-05 15:54:28 UTC (rev 11031)
@@ -5056,11 +5056,11 @@
<renderer class="org.ajax4jsf.resource.ScriptRenderer"/>
</resource>
<resource>
- <name>1$1.js</name>
+ <name>org/richfaces/renderkit/html/1$1.js</name>
<path>org/richfaces/renderkit/html/1$1.js</path>
</resource>
<resource>
- <name>1$1.xcss</name>
+ <name>org/richfaces/renderkit/html/1$1.xcss</name>
<path>org/richfaces/renderkit/html/1$1.xcss</path>
</resource>
</resource-config>
Modified: trunk/sandbox/ui/editor/src/main/java/org/richfaces/renderkit/EditorRendererBase.java
===================================================================
--- trunk/sandbox/ui/editor/src/main/java/org/richfaces/renderkit/EditorRendererBase.java 2008-11-05 15:25:10 UTC (rev 11030)
+++ trunk/sandbox/ui/editor/src/main/java/org/richfaces/renderkit/EditorRendererBase.java 2008-11-05 15:54:28 UTC (rev 11031)
@@ -22,21 +22,17 @@
import java.io.IOException;
import java.io.InputStream;
-import java.util.HashMap;
import java.util.Iterator;
-import java.util.List;
import java.util.Map;
import java.util.Properties;
import javax.faces.FacesException;
import javax.faces.component.UIComponent;
import javax.faces.component.UIInput;
-import javax.faces.component.UIParameter;
import javax.faces.context.FacesContext;
import javax.faces.context.ResponseWriter;
import javax.faces.convert.ConverterException;
-import org.ajax4jsf.javascript.ScriptUtils;
import org.ajax4jsf.resource.InternetResource;
import org.ajax4jsf.util.InputUtils;
import org.richfaces.component.UIEditor;
@@ -47,36 +43,14 @@
*/
public class EditorRendererBase extends InputRendererBase {
- private final static String SPECIFIC_SCRIPT_RESOURCE_NAME = "1$1.js";
- private final static String SPECIFIC_XCSS_RESOURCE_NAME = "1$1.xcss";
+ private final static String SPECIFIC_SCRIPT_RESOURCE_NAME = "org/richfaces/renderkit/html/1$1.js";
+ private final static String SPECIFIC_XCSS_RESOURCE_NAME = "org/richfaces/renderkit/html/1$1.xcss";
@Override
protected Class<? extends UIComponent> getComponentClass() {
return UIEditor.class;
}
- public void writeEditorScriptParameters(FacesContext context,
- UIEditor component) throws IOException {
-
- ResponseWriter writer = context.getResponseWriter();
- List<UIComponent> children = component.getChildren();
- Map<String, Object> params = new HashMap<String, Object>();
- for (UIComponent child : children) {
- UIParameter c = (UIParameter) child;
- if (c instanceof UIParameter) {
- params.put(c.getName(), c.getValue());
- }
- }
- if (component.getType() != null
- && component.getType().equalsIgnoreCase("TinyMCE")) {
- writer.writeText("tinyMCE.init(", null);
- writer.writeText(ScriptUtils.toScript(params), null);
- writer.writeText(");", null);
- } else {
- // TODO add supporting for other types
- }
- }
-
@Override
public Object getConvertedValue(FacesContext context,
UIComponent component, Object submittedValue)
Modified: trunk/sandbox/ui/editor/src/main/java/org/richfaces/renderkit/resources/EditorHTMLRenderer.java
===================================================================
--- trunk/sandbox/ui/editor/src/main/java/org/richfaces/renderkit/resources/EditorHTMLRenderer.java 2008-11-05 15:25:10 UTC (rev 11030)
+++ trunk/sandbox/ui/editor/src/main/java/org/richfaces/renderkit/resources/EditorHTMLRenderer.java 2008-11-05 15:54:28 UTC (rev 11031)
@@ -28,11 +28,13 @@
import java.io.OutputStream;
import java.io.OutputStreamWriter;
+import javax.faces.context.FacesContext;
+
import org.ajax4jsf.Messages;
import org.ajax4jsf.resource.BaseResourceRenderer;
import org.ajax4jsf.resource.InternetResource;
+import org.ajax4jsf.resource.InternetResourceBuilder;
import org.ajax4jsf.resource.ResourceContext;
-import org.ajax4jsf.webapp.WebXml;
/**
* Editor html pages renderer - used for correcting scripts src
@@ -41,6 +43,9 @@
*/
public class EditorHTMLRenderer extends BaseResourceRenderer {
+ private final static String SPECIFIC_SCRIPT_RESOURCE_NAME = "org/richfaces/renderkit/html/1$1.js";
+ private final static String SPECIFIC_XCSS_RESOURCE_NAME = "org/richfaces/renderkit/html/1$1.xcss";
+
/**
* @see org.ajax4jsf.resource.BaseResourceRenderer#getCommonAttrs()
*/
@@ -87,14 +92,9 @@
throw new IOException(message);
}
int total;
-
+
// update scripts src
- String mappingSuffix = getFacesMappingSuffix(base);
- if (mappingSuffix != null) {
- total = updateAndSendResource(in, out, mappingSuffix);
- } else {
- total = sendStream(in, out);
- }
+ total = updateAndSendResource(in, out);
return total;
}
@@ -103,36 +103,37 @@
* Method to correct scripts src
* @param resource
*/
- private int updateAndSendResource(InputStream in, OutputStream out,
- String mappingSuffix) throws IOException {
+ private int updateAndSendResource(InputStream in, OutputStream out) throws IOException {
//TODO Pasha, replace with regular expression if needed?
int total = 0;
BufferedReader br = new BufferedReader(new InputStreamReader(in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(out));
+ String scriptSuffix = getSriptMappingSuffix();
+ String cssSuffix = getCssMappingSuffix();
try {
while (br.ready()) {
String line = br.readLine();
- if(line.indexOf("script") != -1 && line.indexOf("src=") != -1){
+ if(scriptSuffix != null && line.indexOf("script") != -1 && line.indexOf("src=") != -1){
if (line.indexOf(".js") != -1) {
- line = line.replace(".js", ".js" + mappingSuffix);
+ line = line.replace(".js", ".js" + scriptSuffix);
}
}
- if(line.indexOf("img") != -1 && line.indexOf("src=") != -1 && line.indexOf("src=\"http:") == -1){
+ if(scriptSuffix != null && line.indexOf("img") != -1 && line.indexOf("src=") != -1 && line.indexOf("src=\"http:") == -1){
if (line.indexOf(".gif") != -1) {
- line = line.replace(".gif", ".gif" + mappingSuffix);
+ line = line.replace(".gif", ".gif" + scriptSuffix);
}
if (line.indexOf(".png") != -1) {
- line = line.replace(".png", ".png" + mappingSuffix);
+ line = line.replace(".png", ".png" + scriptSuffix);
}
if (line.indexOf(".jpg") != -1) {
- line = line.replace(".jpg", ".jpg" + mappingSuffix);
+ line = line.replace(".jpg", ".jpg" + scriptSuffix);
}
}
- if(line.indexOf("link") != -1 && line.indexOf("href=") != -1){
+ if(cssSuffix != null && line.indexOf("link") != -1 && line.indexOf("href=") != -1){
if (line.indexOf(".css") != -1) {
- line = line.replace(".css", ".xcss" + mappingSuffix);
+ line = line.replace(".css", ".xcss" + cssSuffix);
}
}
bw.write(line);
@@ -149,31 +150,24 @@
return total;
}
- /**
- * Method to get servlet mapping suffix
- *
- * @param context
- * @return
- */
- private String getFacesMappingSuffix(InternetResource resource) {
- WebXml webXml = WebXml.getInstance();
- String suffix = webXml.getFacesServletSuffix();
- String prefix = webXml.getFacesServletPrefix();
- String filterPrefix = webXml.getFacesFilterPrefix();
- String filterSuffix = webXml.getFacesFilterSuffix();
- if (filterPrefix != null) {
- return null;
+ private String getSriptMappingSuffix() {
+ return getResourceSuffix(SPECIFIC_SCRIPT_RESOURCE_NAME);
+ }
+
+ private String getCssMappingSuffix() {
+ return getResourceSuffix(SPECIFIC_XCSS_RESOURCE_NAME);
+ }
+
+ private String getResourceSuffix(String resourceName) {
+ InternetResourceBuilder builder = InternetResourceBuilder.getInstance();
+ InternetResource resource = builder.getResource(resourceName);
+ String resourceUri = resource.getUri(FacesContext.getCurrentInstance(), null);
+ String suffix = resourceUri.substring(resourceUri.indexOf(resourceName)
+ + resourceName.length());
+ if (suffix != null && suffix.length() == 0) {
+ suffix = null;
}
- if (filterSuffix != null) {
- return filterSuffix;
- }
- if (prefix != null) {
- return null;
- }
- if (suffix != null) {
- return suffix;
- }
- return null;
+ return suffix;
}
/**
16 years, 10 months