JBoss Rich Faces SVN: r10549 - in trunk/test-applications/seleniumTest/richfaces/src: test/java/org/richfaces/testng and 1 other directory.
by richfaces-svn-commits@lists.jboss.org
Author: dsvyatobatsko
Date: 2008-09-24 11:40:23 -0400 (Wed, 24 Sep 2008)
New Revision: 10549
Modified:
trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/graphValidator/graphValidatorTest.xhtml
trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/GraphValidatorTest.java
Log:
GraphValidator test extension
Modified: trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/graphValidator/graphValidatorTest.xhtml
===================================================================
(Binary files differ)
Modified: trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/GraphValidatorTest.java
===================================================================
--- trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/GraphValidatorTest.java 2008-09-24 13:53:10 UTC (rev 10548)
+++ trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/GraphValidatorTest.java 2008-09-24 15:40:23 UTC (rev 10549)
@@ -6,11 +6,100 @@
public class GraphValidatorTest extends SeleniumTestBase {
+ private static final String NAME = "name";
+
+ private static final String AGE = "age";
+
+ private static final String EMAIL = "email";
+
+ private static final String ERR_MSG_POSTFIX = "_err_msg";
+
+ private static final String ALL_MSGS = "all_messages";
+
+ private static final String SAVE_BTN = "_save";
+
@Test
- public void testGraphValidatorComponent(Template template) {
+ public void testGraphValidatorComponentWithComponentSubtree(Template template) {
renderPage(template);
+
+ writeStatus("Check that components subtree confined by the component is validated " +
+ "with Hibernate Validator properly");
+ String parentId = getParentId() + "_form:";
+
+ String tfNameId = parentId + NAME;
+ String tfEmailId = parentId + EMAIL;
+ String tfAgeId = parentId + AGE;
+
+ String tfNameErrMsg = tfNameId + ERR_MSG_POSTFIX;
+ String tfEmailErrMsg = tfEmailId + ERR_MSG_POSTFIX;
+ String tfAgeErrMsg = tfAgeId + ERR_MSG_POSTFIX;
+
+ String saveBtn = parentId + SAVE_BTN;
+
+ assertNotPresent(tfNameErrMsg);
+ assertNotPresent(tfEmailErrMsg);
+ assertNotPresent(tfAgeErrMsg);
+
+ writeStatus("Name must be between 3 and 12 at length. Type shorter one");
+ type(tfNameId, "Mi");
+
+ writeStatus("Email must be an email. Type not a well-formed email");
+ type(tfEmailId, "notemail");
+
+ writeStatus("Age must be between 18 and 100. Type less than that");
+ type(tfAgeId, "3");
+
+ writeStatus("Try to save an input");
+ clickAjaxCommandAndWait(saveBtn);
+
+ assertPresent(tfNameErrMsg);
+ assertPresent(tfAgeErrMsg);
+ assertPresent(tfEmailErrMsg);
+
+ writeStatus("Correct the input and resubmit form. Error messages have to disappear");
+
+ type(tfNameId, "Mick");
+ type(tfAgeId, "33");
+ type(tfEmailId, "email(a)ya.com");
+
+ writeStatus("Try to save an input once more");
+ clickAjaxCommandAndWait(saveBtn);
+
+ assertNotPresent(tfNameErrMsg);
+ assertNotPresent(tfAgeErrMsg);
+ assertNotPresent(tfEmailErrMsg);
+
}
+ @Test
+ public void testGraphValidatorComponentWithValueBoundToBean(Template template) {
+ renderPage(template);
+
+ writeStatus("Check that component validates a bean bound to component value property. " +
+ "After model is updated the bean must be validated again.");
+
+ String parentId = getParentId() + "_form1:";
+
+ String firstCompId = parentId + "table:0:time";
+ String firstCompErrMsg = parentId + "table:0:time" + ERR_MSG_POSTFIX;
+ String saveBtn = parentId + SAVE_BTN;
+ String allMessages = parentId + ALL_MSGS;
+
+// writeStatus("Try to save an input. Model validation cannot be passed");
+// clickAjaxCommandAndWait(saveBtn);
+//
+// AssertTextEquals(allMessages, "Invalid values: Please fill at least one entry");
+
+ }
+
+ private void assertPresent(String id) {
+ AssertTextNotEquals(id, "", "Message [" + id + "] must not be empty on the page");
+ }
+
+ private void assertNotPresent(String id) {
+ AssertTextEquals(id, "", "Message [" + id + "] must be empty on the page");
+ }
+
@Override
public String getTestUrl() {
return "pages/graphValidator/graphValidatorTest.xhtml";
16 years, 3 months
JBoss Rich Faces SVN: r10548 - trunk/test-applications/regressionArea/Seam-web.
by richfaces-svn-commits@lists.jboss.org
Author: andrei_exadel
Date: 2008-09-24 09:53:10 -0400 (Wed, 24 Sep 2008)
New Revision: 10548
Modified:
trunk/test-applications/regressionArea/Seam-web/pom.xml
Log:
Fix problem with projects dependencies
Modified: trunk/test-applications/regressionArea/Seam-web/pom.xml
===================================================================
--- trunk/test-applications/regressionArea/Seam-web/pom.xml 2008-09-24 13:33:56 UTC (rev 10547)
+++ trunk/test-applications/regressionArea/Seam-web/pom.xml 2008-09-24 13:53:10 UTC (rev 10548)
@@ -124,15 +124,7 @@
<activation>
<activeByDefault>false</activeByDefault>
</activation>
- <dependencies>
- <dependency>
- <groupId>org.richfaces.test-applications.regressionArea</groupId>
- <artifactId>Seam-ear</artifactId>
- <version>${project.version}</version>
- <type>ear</type>
- <scope>provided</scope>
- </dependency>
- </dependencies>
+
<build>
<plugins>
<plugin>
16 years, 3 months
JBoss Rich Faces SVN: r10547 - management/design.
by richfaces-svn-commits@lists.jboss.org
Author: ilya_shaikovsky
Date: 2008-09-24 09:33:56 -0400 (Wed, 24 Sep 2008)
New Revision: 10547
Removed:
management/design/globalQueue/
Log:
moved to queue folder
16 years, 3 months
JBoss Rich Faces SVN: r10546 - in management/design: queue and 1 other directory.
by richfaces-svn-commits@lists.jboss.org
Author: ilya_shaikovsky
Date: 2008-09-24 09:30:39 -0400 (Wed, 24 Sep 2008)
New Revision: 10546
Added:
management/design/queue/
management/design/queue/RS - queue.doc
management/design/queue/Vision queue.doc
Log:
Added: management/design/queue/RS - queue.doc
===================================================================
(Binary files differ)
Property changes on: management/design/queue/RS - queue.doc
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: management/design/queue/Vision queue.doc
===================================================================
(Binary files differ)
Property changes on: management/design/queue/Vision queue.doc
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
16 years, 3 months
JBoss Rich Faces SVN: r10545 - in trunk/sandbox: samples/editor-sample/src/main/java/org/richfaces and 6 other directories.
by richfaces-svn-commits@lists.jboss.org
Author: alevkovsky
Date: 2008-09-24 08:32:06 -0400 (Wed, 24 Sep 2008)
New Revision: 10545
Modified:
trunk/sandbox/samples/editor-sample/
trunk/sandbox/samples/editor-sample/src/main/java/org/richfaces/EditorBean.java
trunk/sandbox/samples/editor-sample/src/main/webapp/pages/editor.jsp
trunk/sandbox/ui/editor/
trunk/sandbox/ui/editor/src/main/config/component/editor.xml
trunk/sandbox/ui/editor/src/main/java/org/richfaces/component/UIEditor.java
trunk/sandbox/ui/editor/src/main/java/org/richfaces/renderkit/EditorRendererBase.java
trunk/sandbox/ui/editor/src/main/templates/editor.jspx
Log:
Developing Editor component
Property changes on: trunk/sandbox/samples/editor-sample
___________________________________________________________________
Name: svn:ignore
- target
.classpath
.project
+ target
.classpath
.project
copy-web-pages.bat
.settings
.classpath
.project
Modified: trunk/sandbox/samples/editor-sample/src/main/java/org/richfaces/EditorBean.java
===================================================================
--- trunk/sandbox/samples/editor-sample/src/main/java/org/richfaces/EditorBean.java 2008-09-23 17:16:55 UTC (rev 10544)
+++ trunk/sandbox/samples/editor-sample/src/main/java/org/richfaces/EditorBean.java 2008-09-24 12:32:06 UTC (rev 10545)
@@ -3,23 +3,22 @@
import java.util.HashMap;
import java.util.Map;
+import org.richfaces.component.UIEditor;
+
public class EditorBean {
private String value = "Some value....";
+ private UIEditor editor;
+ private boolean rendered = true;
+ private Map<String, Object> dataMap;
- private Map<String, Object> dataMap;
public EditorBean () {
dataMap = new HashMap<String, Object>();
dataMap.put("name1", "value1");
dataMap.put("name2", false);
}
- public Map<String, Object> getDataMap() {
- return dataMap;
- }
- public void setDataMap(Map<String, Object> dataMap) {
- this.dataMap = dataMap;
- }
+
public String getValue() {
return value;
}
@@ -31,4 +30,43 @@
value += "1";
return null;
}
+
+ public String action2(){
+ editor.setValue(editor.getValue() + "1");
+ return null;
+ }
+
+ public String changeRendered(){
+ if(rendered) {
+ rendered = false;
+ }else{
+ rendered = true;
+ }
+ return null;
+ }
+
+ public Map<String, Object> getDataMap() {
+ return dataMap;
+ }
+ public void setDataMap(Map<String, Object> dataMap) {
+ this.dataMap = dataMap;
+ }
+
+ public UIEditor getEditor() {
+ return editor;
+ }
+
+ public void setEditor(UIEditor editor) {
+ this.editor = editor;
+ }
+
+ public boolean isRendered() {
+ return rendered;
+ }
+
+ public void setRendered(boolean rendered) {
+ this.rendered = rendered;
+ }
+
+
}
Modified: trunk/sandbox/samples/editor-sample/src/main/webapp/pages/editor.jsp
===================================================================
--- trunk/sandbox/samples/editor-sample/src/main/webapp/pages/editor.jsp 2008-09-23 17:16:55 UTC (rev 10544)
+++ trunk/sandbox/samples/editor-sample/src/main/webapp/pages/editor.jsp 2008-09-24 12:32:06 UTC (rev 10545)
@@ -5,22 +5,79 @@
<html>
<head>
<title></title>
+ <style>
+ .editor-new{
+ font-size: 20;
+ }
+ </style>
+ <script type="text/javascript">
+ <!--
+ function testEvent(element, event){
+ element = document.getElementById(element.id + '_' + event)
+ element.innerHTML = '+';
+ }
+ </script>
</head>
<body>
<f:view >
- <h:form>
- <h:panelGroup>
- <ed:editor id="editorId" value="#{editorBean.value}" width="100" height="100">
- <f:param name="mode" value="textareas"/>
- <f:param name="theme" value="advanced"/>
- </ed:editor>
-
- </h:panelGroup>
-
+ <h:form id="formId">
+
+ <ed:editor id="editorId"
+ styleClass="editor-new"
+ style="color: red"
+ value="#{editorBean.value}"
+ width="300"
+ height="175"
+ rendered="#{editorBean.rendered}"
+ binding="#{editorBean.editor}"
+ theme="advanced"
+ onclick="testEvent(this, 'onclick')"
+ ondblclick="testEvent(this, 'ondblclick')"
+ onkeydown="testEvent(this, 'onkeydown')"
+ onkeypress="testEvent(this, 'onkeypress')"
+ onkeyup="testEvent(this, 'onkeyup')"
+ onmousedown="testEvent(this, 'onmousedown')"
+ onmousemove="testEvent(this, 'onmousemove')"
+ onmouseout="testEvent(this, 'onmouseout')"
+ onmouseover="testEvent(this, 'onmouseover')"
+ onmouseup="testEvent(this, 'onmouseup')"/>
+
+
+ <h:outputText value="Editor value: #{editorBean.value}" />
<br/>
+ <h:panelGrid columns="10" border="1">
+ <h:outputText value="onclick"/>
+ <h:outputText value="ondblclick"/>
+ <h:outputText value="onmouseup"/>
+ <h:outputText value="onmousedown"/>
+ <h:outputText value="onmousemove"/>
+ <h:outputText value="onmouseover"/>
+ <h:outputText value="onmouseout"/>
+ <h:outputText value="onkeydown"/>
+ <h:outputText value="onkeypress"/>
+ <h:outputText value="onkeyup"/>
+ <h:outputText id="editorId_onclick" value="-"/>
+ <h:outputText id="editorId_ondblclick" value="-"/>
+ <h:outputText id="editorId_onmouseup" value="-"/>
+ <h:outputText id="editorId_onmousedown" value="-"/>
+ <h:outputText id="editorId_onmousemove" value="-"/>
+ <h:outputText id="editorId_onmouseover" value="-"/>
+ <h:outputText id="editorId_onmouseout" value="-"/>
+ <h:outputText id="editorId_onkeydown" value="-"/>
+ <h:outputText id="editorId_onkeypress" value="-"/>
+ <h:outputText id="editorId_onkeyup" value="-"/>
+ </h:panelGrid>
+ <br/>
<h:commandButton value="h:commandButton" action="#{editorBean.action1}"/>
<a4j:commandButton value="a4j:commandButton" action="#{editorBean.action1}"
- reRender="editorId"/>
+ reRender="editorId"/>
+ <br/>
+ <h:commandButton value="h:commandButton2" action="#{editorBean.action2}"/>
+ <a4j:commandButton value="a4j:commandButton2" action="#{editorBean.action2}"
+ reRender="editorId"/>
+
+ <br/>
+ <h:commandButton value="change rendered" action="#{editorBean.changeRendered}"/>
</h:form>
</f:view>
</body>
Property changes on: trunk/sandbox/ui/editor
___________________________________________________________________
Name: svn:ignore
- target
+ target
.settings
.classpath
.project
Modified: trunk/sandbox/ui/editor/src/main/config/component/editor.xml
===================================================================
--- trunk/sandbox/ui/editor/src/main/config/component/editor.xml 2008-09-23 17:16:55 UTC (rev 10544)
+++ trunk/sandbox/ui/editor/src/main/config/component/editor.xml 2008-09-24 12:32:06 UTC (rev 10545)
@@ -50,5 +50,21 @@
</description>
<defaultvalue>200</defaultvalue>
</property>
+ <property>
+ <name>theme</name>
+ <classname>java.lang.String</classname>
+ <description>
+ Attribute defines Editor theme
+ </description>
+ <defaultvalue>"simple"</defaultvalue>
+ </property>
+ <property hidden="true">
+ <name>mode</name>
+ <classname>java.lang.String</classname>
+ <description>
+ Attribute defines Editor mode
+ </description>
+ <defaultvalue>"textareas"</defaultvalue>
+ </property>
</component>
</components>
Modified: trunk/sandbox/ui/editor/src/main/java/org/richfaces/component/UIEditor.java
===================================================================
--- trunk/sandbox/ui/editor/src/main/java/org/richfaces/component/UIEditor.java 2008-09-23 17:16:55 UTC (rev 10544)
+++ trunk/sandbox/ui/editor/src/main/java/org/richfaces/component/UIEditor.java 2008-09-24 12:32:06 UTC (rev 10545)
@@ -30,7 +30,15 @@
public abstract int getHeight();
public abstract void setHeight(int height);
+
+ public abstract void setTheme(String theme);
+ public abstract String getTheme();
+
+ public abstract void setMode(String mode);
+
+ public abstract String getMode();
+
public boolean getRendersChildren() {
return true;
}
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-09-23 17:16:55 UTC (rev 10544)
+++ trunk/sandbox/ui/editor/src/main/java/org/richfaces/renderkit/EditorRendererBase.java 2008-09-24 12:32:06 UTC (rev 10545)
@@ -60,11 +60,9 @@
}
if (component.getType() != null
&& component.getType().equalsIgnoreCase("TinyMCE")) {
- writer.writeText("//<![CDATA[ \n", null);
writer.writeText("tinyMCE.init(", null);
writer.writeText(ScriptUtils.toScript(params), null);
writer.writeText(");", null);
- writer.writeText("\n //]]>", null);
} else {
// TODO add supporting for other types
}
Modified: trunk/sandbox/ui/editor/src/main/templates/editor.jspx
===================================================================
--- trunk/sandbox/ui/editor/src/main/templates/editor.jspx 2008-09-23 17:16:55 UTC (rev 10544)
+++ trunk/sandbox/ui/editor/src/main/templates/editor.jspx 2008-09-24 12:32:06 UTC (rev 10545)
@@ -14,7 +14,17 @@
<h:styles>css/editor.xcss</h:styles>
<h:scripts>scripts/tiny_mce/tiny_mce_src.js, scripts/editor.js</h:scripts>
<div id="#{clientId}" x:passThruWithExclusions="id,value,styleClass,class"
- class="rich-editor #{component.attributes['styleClass']}">
+ class="rich-editor #{component.attributes['styleClass']}"
+ onclick="#{component.attributes['onclick']}"
+ ondblclick="#{component.attributes['ondblclick']}"
+ onmouseup="#{component.attributes['onmouseup']}"
+ onmousedown="#{component.attributes['onmousedown']}"
+ onmousemove="#{component.attributes['onmousemove']}"
+ onmouseover="#{component.attributes['onmouseover']}"
+ onmouseout="#{component.attributes['onmouseout']}"
+ onkeydown="#{component.attributes['onkeydown']}"
+ onkeypress="#{component.attributes['onkeypress']}"
+ onkeyup="#{component.attributes['onkeyup']}">
<textarea id="#{clientId}TextArea" name='#{clientId}'
style="width: #{component.attributes['width']}px; height: #{component.attributes['height']}px;">
@@ -31,7 +41,10 @@
</textarea>
<script type="text/javascript">
- <f:call name="writeEditorScriptParameters" />
+ tinyMCE.init({
+ mode: '#{component.attributes['mode']}',
+ theme: '#{component.attributes['theme']}'
+ });
</script>
</div>
</f:root>
16 years, 3 months
JBoss Rich Faces SVN: r10544 - in trunk: samples/beanValidatorSample/src/main/webapp/WEB-INF and 5 other directories.
by richfaces-svn-commits@lists.jboss.org
Author: alexsmirnov
Date: 2008-09-23 13:16:55 -0400 (Tue, 23 Sep 2008)
New Revision: 10544
Added:
trunk/samples/seamIntegration/profiles.xml
Modified:
trunk/framework/api/src/main/java/org/ajax4jsf/javascript/ScriptUtils.java
trunk/samples/beanValidatorSample/src/main/webapp/WEB-INF/faces-config.xml
trunk/samples/beanValidatorSample/src/main/webapp/pages/index.xhtml
trunk/samples/seamIntegration/pom.xml
trunk/samples/seamIntegration/src/main/webapp/WEB-INF/components.xml
trunk/samples/seamIntegration/src/main/webapp/WEB-INF/web.xml
trunk/ui/beanValidator/pom.xml
trunk/ui/core/src/main/java/org/ajax4jsf/renderkit/html/AjaxFormRenderer.java
Log:
Move getValidJavaScriptName method to the ScriptUtils.
Fix Seam sample.
Modified: trunk/framework/api/src/main/java/org/ajax4jsf/javascript/ScriptUtils.java
===================================================================
--- trunk/framework/api/src/main/java/org/ajax4jsf/javascript/ScriptUtils.java 2008-09-23 16:19:50 UTC (rev 10543)
+++ trunk/framework/api/src/main/java/org/ajax4jsf/javascript/ScriptUtils.java 2008-09-23 17:16:55 UTC (rev 10544)
@@ -22,6 +22,7 @@
package org.ajax4jsf.javascript;
import java.beans.PropertyDescriptor;
+import java.io.UnsupportedEncodingException;
import java.lang.reflect.Array;
import java.util.Collection;
import java.util.Iterator;
@@ -161,4 +162,56 @@
}
}
}
+
+ public static String getValidJavascriptName(String s) {
+
+ StringBuffer buf = null;
+ for (int i = 0, len = s.length(); i < len; i++) {
+ char c = s.charAt(i);
+
+ if (Character.isLetterOrDigit(c)||c=='_' ) {
+ // allowed char
+ if (buf != null)
+ buf.append(c);
+ } else {
+ if (buf == null) {
+ buf = new StringBuffer(s.length() + 10);
+ buf.append(s.substring(0, i));
+ }
+
+ buf.append('_');
+ if (c < 16) {
+ // pad single hex digit values with '0' on the left
+ buf.append('0');
+ }
+
+ if (c < 128) {
+ // first 128 chars match their byte representation in UTF-8
+ buf.append(Integer.toHexString(c).toUpperCase());
+ } else {
+ byte[] bytes;
+ try {
+ bytes = Character.toString(c).getBytes("UTF-8");
+ } catch (UnsupportedEncodingException e) {
+ throw new RuntimeException(e);
+ }
+
+ for (int j = 0; j < bytes.length; j++) {
+ int intVal = bytes[j];
+ if (intVal < 0) {
+ // intVal will be >= 128
+ intVal = 256 + intVal;
+ } else if (intVal < 16) {
+ // pad single hex digit values with '0' on the left
+ buf.append('0');
+ }
+ buf.append(Integer.toHexString(intVal).toUpperCase());
+ }
+ }
+ }
+
+ }
+
+ return buf == null ? s : buf.toString();
+ }
}
Modified: trunk/samples/beanValidatorSample/src/main/webapp/WEB-INF/faces-config.xml
===================================================================
--- trunk/samples/beanValidatorSample/src/main/webapp/WEB-INF/faces-config.xml 2008-09-23 16:19:50 UTC (rev 10543)
+++ trunk/samples/beanValidatorSample/src/main/webapp/WEB-INF/faces-config.xml 2008-09-23 17:16:55 UTC (rev 10544)
@@ -17,4 +17,9 @@
<managed-bean-class>org.richfaces.LengthBean</managed-bean-class>
<managed-bean-scope>session</managed-bean-scope>
</managed-bean>
+ <managed-bean>
+ <managed-bean-name>minMaxBean</managed-bean-name>
+ <managed-bean-class>org.richfaces.MinMaxBean</managed-bean-class>
+ <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
</faces-config>
Modified: trunk/samples/beanValidatorSample/src/main/webapp/pages/index.xhtml
===================================================================
--- trunk/samples/beanValidatorSample/src/main/webapp/pages/index.xhtml 2008-09-23 16:19:50 UTC (rev 10543)
+++ trunk/samples/beanValidatorSample/src/main/webapp/pages/index.xhtml 2008-09-23 17:16:55 UTC (rev 10544)
@@ -18,12 +18,23 @@
<f:facet name="header">
<h:outputText>Single input field with label and message. Validated by AJAX on every char.</h:outputText>
</f:facet>
+ <h:panelGrid columns="3">
<h:outputLabel for="ltext" value="#{lengthBean.textDescription}" />
- <h:inputText id="ltext" value="#{lengthBean.text}">
+ <h:inputText id="ltext" value="#{lengthBean.text}" label="3-letter text">
<v:ajaxValidator event="onkeyup" summary="Invalid Id"/>
</h:inputText>
<rich:message for="ltext" showDetail="true" showSummary="true" />
+ <h:outputLabel for="mtext" value="#{minMaxBean.intDescription}" />
+ <h:inputText id="mtext" value="#{minMaxBean.intValue}" label="value">
+ <v:ajaxValidator event="onkeyup" summary="Invalid value"/>
+ </h:inputText>
+ <rich:message for="mtext" showDetail="true" showSummary="true" />
+ </h:panelGrid>
+ <h:commandButton value="Submit"></h:commandButton>
</rich:panel>
+ <rich:messages />
+ </h:form>
+ <h:form id="form1">
<h2>Input fields with label and message in the JSF dataTable.
Each field validated by AJAX on 'onblur' event</h2>
<v:graphValidator value="#{data}">
Modified: trunk/samples/seamIntegration/pom.xml
===================================================================
--- trunk/samples/seamIntegration/pom.xml 2008-09-23 16:19:50 UTC (rev 10543)
+++ trunk/samples/seamIntegration/pom.xml 2008-09-23 17:16:55 UTC (rev 10544)
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<project
+<project xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<parent>
@@ -12,6 +12,9 @@
<artifactId>seamIntegration</artifactId>
<packaging>war</packaging>
<name>seamIntegration Maven Webapp</name>
+ <properties>
+ <seam.version>2.1.0-SNAPSHOT</seam.version>
+ </properties>
<build>
<finalName>seamIntegration</finalName>
<plugins>
@@ -70,31 +73,33 @@
<groupId>org.slf4j</groupId>
<artifactId>slf4j-jcl</artifactId>
<version>1.4.2</version>
+ <scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
- <version>3.1.0.CR2</version>
+ <version>3.1.0.GA</version>
</dependency>
<dependency>
<groupId>org.jboss.seam</groupId>
<artifactId>jboss-seam</artifactId>
- <version>2.0.2.GA</version>
+ <version>${seam.version}</version>
</dependency>
<dependency>
<groupId>org.jboss.seam</groupId>
<artifactId>jboss-seam-ui</artifactId>
- <version>2.0.2.GA</version>
+ <version>${seam.version}</version>
</dependency>
<dependency>
<groupId>org.jboss.seam</groupId>
<artifactId>jboss-seam-ioc</artifactId>
- <version>2.0.2.GA</version>
+ <version>${seam.version}</version>
</dependency>
<dependency>
<groupId>org.jboss.seam</groupId>
<artifactId>jboss-seam-debug</artifactId>
- <version>2.0.2.GA</version>
+ <version>${seam.version}</version>
+ <scope>runtime</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
Added: trunk/samples/seamIntegration/profiles.xml
===================================================================
--- trunk/samples/seamIntegration/profiles.xml (rev 0)
+++ trunk/samples/seamIntegration/profiles.xml 2008-09-23 17:16:55 UTC (rev 10544)
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8"?>
+ <!--
+ /* * Licensed to the Apache Software Foundation (ASF) under one or
+ more * contributor license agreements. See the NOTICE file distributed
+ with * this work for additional information regarding copyright
+ ownership. * The ASF licenses this file to you under the Apache
+ License, Version 2.0 * (the "License"); you may not use this file
+ except in compliance with * the License. You may obtain a copy of the
+ License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless
+ required by applicable law or agreed to in writing, software *
+ distributed under the License is distributed on an "AS IS" BASIS, *
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. * See the License for the specific language governing
+ permissions and * limitations under the License. * * $Id: profiles.xml
+ 495383 2007-01-11 21:31:37Z rahul $ */
+ -->
+<profilesXml>
+ <profiles>
+ <profile>
+ <id>seam-devel</id>
+ <properties>
+ <seam.version>2.1.0-SNAPSHOT</seam.version>
+ </properties>
+ </profile>
+ </profiles>
+</profilesXml>
\ No newline at end of file
Property changes on: trunk/samples/seamIntegration/profiles.xml
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Modified: trunk/samples/seamIntegration/src/main/webapp/WEB-INF/components.xml
===================================================================
--- trunk/samples/seamIntegration/src/main/webapp/WEB-INF/components.xml 2008-09-23 16:19:50 UTC (rev 10543)
+++ trunk/samples/seamIntegration/src/main/webapp/WEB-INF/components.xml 2008-09-23 17:16:55 UTC (rev 10544)
@@ -14,7 +14,7 @@
http://jboss.com/products/seam/bpm http://jboss.com/products/seam/bpm-2.0.xsd
http://jboss.com/products/seam/security http://jboss.com/products/seam/security-2.0.xsd
http://jboss.com/products/seam/mail http://jboss.com/products/seam/mail-2.0.xsd
- http://jboss.com/products/seam/transaction http://jboss.com/products/seam/transaction-2.1.xsd
+ http://jboss.com/products/seam/transaction http://jboss.com/products/seam/transaction-2.0.xsd
http://jboss.com/products/seam/components http://jboss.com/products/seam/components-2.0.xsd">
<core:init debug="true" /><!-- transaction-management-enabled="false" -->
Modified: trunk/samples/seamIntegration/src/main/webapp/WEB-INF/web.xml
===================================================================
--- trunk/samples/seamIntegration/src/main/webapp/WEB-INF/web.xml 2008-09-23 16:19:50 UTC (rev 10543)
+++ trunk/samples/seamIntegration/src/main/webapp/WEB-INF/web.xml 2008-09-23 17:16:55 UTC (rev 10544)
@@ -1,9 +1,10 @@
<?xml version="1.0" ?>
-<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
- version="2.4">
+<web-app version="2.5"
+ xmlns="http://java.sun.com/xml/ns/javaee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
+
<!-- Ajax4jsf -->
<context-param>
Modified: trunk/ui/beanValidator/pom.xml
===================================================================
--- trunk/ui/beanValidator/pom.xml 2008-09-23 16:19:50 UTC (rev 10543)
+++ trunk/ui/beanValidator/pom.xml 2008-09-23 17:16:55 UTC (rev 10544)
@@ -50,7 +50,7 @@
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
- <version>3.1.0.CR1</version>
+ <version>3.1.0.GA</version>
<exclusions>
<!--
<exclusion> <artifactId>hibernate-core</artifactId>
Modified: trunk/ui/core/src/main/java/org/ajax4jsf/renderkit/html/AjaxFormRenderer.java
===================================================================
--- trunk/ui/core/src/main/java/org/ajax4jsf/renderkit/html/AjaxFormRenderer.java 2008-09-23 16:19:50 UTC (rev 10543)
+++ trunk/ui/core/src/main/java/org/ajax4jsf/renderkit/html/AjaxFormRenderer.java 2008-09-23 17:16:55 UTC (rev 10544)
@@ -22,7 +22,6 @@
package org.ajax4jsf.renderkit.html;
import java.io.IOException;
-import java.io.UnsupportedEncodingException;
import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;
@@ -38,6 +37,7 @@
import org.ajax4jsf.component.UIAjaxForm;
import org.ajax4jsf.event.AjaxEvent;
import org.ajax4jsf.javascript.JSFunction;
+import org.ajax4jsf.javascript.ScriptUtils;
import org.ajax4jsf.renderkit.AjaxComponentRendererBase;
import org.ajax4jsf.renderkit.AjaxRendererUtils;
import org.ajax4jsf.renderkit.RendererUtils.HTML;
@@ -300,7 +300,7 @@
script.append("\n}");
script.append("\n");
script.append("function ").append("clearFormHiddenParams_").append(
- getValidJavascriptName(formName));
+ ScriptUtils.getValidJavascriptName(formName));
script.append("(){").append(functionName).append("();}\n");
// MyFaces 1.1.5 clear form function name
@@ -335,59 +335,7 @@
* @return String
*/
public String getClearHiddenCommandFormParamsFunctionName(String formName) {
- return "clear_" + getValidJavascriptName(formName);
+ return "clear_" + ScriptUtils.getValidJavascriptName(formName);
}
- public String getValidJavascriptName(String s) {
-
- StringBuffer buf = null;
- for (int i = 0, len = s.length(); i < len; i++) {
- char c = s.charAt(i);
-
- if (Character.isLetterOrDigit(c)||c=='_' ) {
- // allowed char
- if (buf != null)
- buf.append(c);
- } else {
- if (buf == null) {
- buf = new StringBuffer(s.length() + 10);
- buf.append(s.substring(0, i));
- }
-
- buf.append('_');
- if (c < 16) {
- // pad single hex digit values with '0' on the left
- buf.append('0');
- }
-
- if (c < 128) {
- // first 128 chars match their byte representation in UTF-8
- buf.append(Integer.toHexString(c).toUpperCase());
- } else {
- byte[] bytes;
- try {
- bytes = Character.toString(c).getBytes("UTF-8");
- } catch (UnsupportedEncodingException e) {
- throw new RuntimeException(e);
- }
-
- for (int j = 0; j < bytes.length; j++) {
- int intVal = bytes[j];
- if (intVal < 0) {
- // intVal will be >= 128
- intVal = 256 + intVal;
- } else if (intVal < 16) {
- // pad single hex digit values with '0' on the left
- buf.append('0');
- }
- buf.append(Integer.toHexString(intVal).toUpperCase());
- }
- }
- }
-
- }
-
- return buf == null ? s : buf.toString();
- }
-
}
16 years, 3 months
JBoss Rich Faces SVN: r10543 - in trunk/test-applications/seleniumTest/richfaces: src/test/java/org/richfaces and 1 other directory.
by richfaces-svn-commits@lists.jboss.org
Author: dsvyatobatsko
Date: 2008-09-23 12:19:50 -0400 (Tue, 23 Sep 2008)
New Revision: 10543
Modified:
trunk/test-applications/seleniumTest/richfaces/pom.xml
trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/SeleniumTestBase.java
Log:
renamed WAR
Modified: trunk/test-applications/seleniumTest/richfaces/pom.xml
===================================================================
--- trunk/test-applications/seleniumTest/richfaces/pom.xml 2008-09-23 15:14:30 UTC (rev 10542)
+++ trunk/test-applications/seleniumTest/richfaces/pom.xml 2008-09-23 16:19:50 UTC (rev 10543)
@@ -14,7 +14,7 @@
<name>seleniumTest Maven Webapp</name>
<version>3.3.0-SNAPSHOT</version>
<build>
- <finalName>seleniumTest</finalName>
+ <finalName>richfaces</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
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-09-23 15:14:30 UTC (rev 10542)
+++ trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/SeleniumTestBase.java 2008-09-23 16:19:50 UTC (rev 10543)
@@ -80,7 +80,7 @@
private Object[][] data;
/** Defines the name of current j2ee application name */
- public static final String APPLICATION_NAME = "seleniumTest";
+ public static final String APPLICATION_NAME = "richfaces";
public SeleniumTestBase() {
this("http", "localhost", serverPort);
16 years, 3 months
JBoss Rich Faces SVN: r10542 - in trunk/test-applications/seleniumTest/richfaces/src: test/java/org/richfaces/testng and 1 other directory.
by richfaces-svn-commits@lists.jboss.org
Author: dsvyatobatsko
Date: 2008-09-23 11:14:30 -0400 (Tue, 23 Sep 2008)
New Revision: 10542
Modified:
trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/beanValidator/beanValidatorTest.xhtml
trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/BeanValidatorTest.java
Log:
BeanValidator test completed
Modified: trunk/test-applications/seleniumTest/richfaces/src/main/webapp/pages/beanValidator/beanValidatorTest.xhtml
===================================================================
(Binary files differ)
Modified: trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/BeanValidatorTest.java
===================================================================
--- trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/BeanValidatorTest.java 2008-09-23 10:44:51 UTC (rev 10541)
+++ trunk/test-applications/seleniumTest/richfaces/src/test/java/org/richfaces/testng/BeanValidatorTest.java 2008-09-23 15:14:30 UTC (rev 10542)
@@ -6,11 +6,77 @@
public class BeanValidatorTest extends SeleniumTestBase {
+ private static final String NAME = "name";
+
+ private static final String AGE = "age";
+
+ private static final String EMAIL = "email";
+
+ private static final String ERR_MSG_POSTFIX = "_err_msg";
+
+ private static final String SUBMIT_BTN = "_submit";
+
@Test
public void testBeanValidatorComponent(Template template) {
renderPage(template);
+
+ writeStatus("Check bean validator component with model-based constraints defined using hibernate validator.");
+
+ String parentId = getParentId() + "_form:";
+
+ String tfNameId = parentId + NAME;
+ String tfAgeId = parentId + AGE;
+ String tfEmailId = parentId + EMAIL;
+
+ String tfNameErrMsg = tfNameId + ERR_MSG_POSTFIX;
+ String tfAgeErrMsg = tfAgeId + ERR_MSG_POSTFIX;
+ String tfEmailErrMsg = tfEmailId + ERR_MSG_POSTFIX;
+
+ assertNotPresent(tfNameErrMsg);
+ assertNotPresent(tfAgeErrMsg);
+ assertNotPresent(tfEmailErrMsg);
+
+ writeStatus("Name must be between 3 and 12 at length. Type shorter one");
+ type(tfNameId, "Mi");
+
+ writeStatus("Age must be between 18 and 100. Type less than that");
+ type(tfAgeId, "3");
+
+ writeStatus("Email must be an email. Type not a well-formed email");
+ type(tfEmailId, "notemail");
+
+ submit();
+
+ assertPresent(tfNameErrMsg);
+ assertPresent(tfAgeErrMsg);
+ assertPresent(tfEmailErrMsg);
+
+ writeStatus("Correct the inputs and resubmit form. Error messages have to disappear");
+
+ type(tfNameId, "Mick");
+ type(tfAgeId, "33");
+ type(tfEmailId, "email(a)ya.com");
+
+ submit();
+
+ assertNotPresent(tfNameErrMsg);
+ assertNotPresent(tfAgeErrMsg);
+ assertNotPresent(tfEmailErrMsg);
+
}
+ private void submit() {
+ clickAjaxCommandAndWait(getParentId() + "_form:" + SUBMIT_BTN);
+ }
+
+ private void assertPresent(String id) {
+ AssertTextNotEquals(id, "", "Message [" + id + "] must not be empty on the page");
+ }
+
+ private void assertNotPresent(String id) {
+ AssertTextEquals(id, "", "Message [" + id + "] must be empty on the page");
+ }
+
@Override
public String getTestUrl() {
return "pages/beanValidator/beanValidatorTest.xhtml";
16 years, 3 months
JBoss Rich Faces SVN: r10541 - in trunk/test-applications/regressionArea: Seam-web and 1 other directory.
by richfaces-svn-commits@lists.jboss.org
Author: andrei_exadel
Date: 2008-09-23 06:44:51 -0400 (Tue, 23 Sep 2008)
New Revision: 10541
Modified:
trunk/test-applications/regressionArea/Seam-web/pom.xml
trunk/test-applications/regressionArea/readMe.txt
Log:
Maven copy data source file under Jboss
Modified: trunk/test-applications/regressionArea/Seam-web/pom.xml
===================================================================
--- trunk/test-applications/regressionArea/Seam-web/pom.xml 2008-09-23 08:01:37 UTC (rev 10540)
+++ trunk/test-applications/regressionArea/Seam-web/pom.xml 2008-09-23 10:44:51 UTC (rev 10541)
@@ -136,6 +136,23 @@
<build>
<plugins>
<plugin>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>copyDataSource</id>
+ <phase>pre-integration-test</phase>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ <configuration>
+ <tasks>
+ <copy file="../Seam-ear/resources/seam-ds.xml" toDir="${jbosshome}/server/${jbosscontext}/deploy"/>
+ </tasks>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
<groupId>org.codehaus.cargo</groupId>
<artifactId>cargo-maven2-plugin</artifactId>
<version>0.3.1</version>
@@ -176,12 +193,10 @@
<type>installed</type>
<deployables>
<deployable>
- <!--groupId>org.richfaces.test-applications.regressionArea</groupId>
- <artifactId>Seam-ear</artifactId-->
<location>${settings.localRepository}/org/richfaces/test-applications/regressionArea/Seam-ear/${version}/Seam-ear-${version}.ear</location>
<type>ear</type>
</deployable>
- </deployables>
+ </deployables>
</deployer>
</configuration>
</plugin>
Modified: trunk/test-applications/regressionArea/readMe.txt
===================================================================
--- trunk/test-applications/regressionArea/readMe.txt 2008-09-23 08:01:37 UTC (rev 10540)
+++ trunk/test-applications/regressionArea/readMe.txt 2008-09-23 10:44:51 UTC (rev 10541)
@@ -2,12 +2,10 @@
2. Open regressionArea/pom.xml file. Define there jboss home property.
-3. Copy data source file from /regreassionArea/Seam-ear/resources/seam-ds.xml to jboss deploy dir.
+3. Launch 'build.bat' to build project.
-4. Launch 'build.bat' to build project.
+4. Launch 'Test.bat' to start selenium testing.
-5. Launch 'Test.bat' to start selenium testing.
-
-----------------------------------------------------
16 years, 3 months
JBoss Rich Faces SVN: r10540 - in trunk/samples/extendedDataTable-sample/src/main: resources/i18n and 1 other directories.
by richfaces-svn-commits@lists.jboss.org
Author: pkawiak
Date: 2008-09-23 04:01:37 -0400 (Tue, 23 Sep 2008)
New Revision: 10540
Modified:
trunk/samples/extendedDataTable-sample/src/main/java/org/richfaces/samples/extdt/beans/ExtendedDataTableControlBean.java
trunk/samples/extendedDataTable-sample/src/main/resources/i18n/messages.properties
trunk/samples/extendedDataTable-sample/src/main/resources/i18n/messages_en.properties
trunk/samples/extendedDataTable-sample/src/main/resources/i18n/messages_pl.properties
trunk/samples/extendedDataTable-sample/src/main/webapp/pages/index.jsp
Log:
Updating the demo to show selection handling
Modified: trunk/samples/extendedDataTable-sample/src/main/java/org/richfaces/samples/extdt/beans/ExtendedDataTableControlBean.java
===================================================================
--- trunk/samples/extendedDataTable-sample/src/main/java/org/richfaces/samples/extdt/beans/ExtendedDataTableControlBean.java 2008-09-23 06:39:57 UTC (rev 10539)
+++ trunk/samples/extendedDataTable-sample/src/main/java/org/richfaces/samples/extdt/beans/ExtendedDataTableControlBean.java 2008-09-23 08:01:37 UTC (rev 10540)
@@ -7,7 +7,7 @@
public class ExtendedDataTableControlBean {
- String width = "500px";
+ String width = "100%";
String height = "500px";
List<SelectItem> sortModeSelectItems = new ArrayList<SelectItem>();
List<SelectItem> selectionModeSelectItems = new ArrayList<SelectItem>();
Modified: trunk/samples/extendedDataTable-sample/src/main/resources/i18n/messages.properties
===================================================================
--- trunk/samples/extendedDataTable-sample/src/main/resources/i18n/messages.properties 2008-09-23 06:39:57 UTC (rev 10539)
+++ trunk/samples/extendedDataTable-sample/src/main/resources/i18n/messages.properties 2008-09-23 08:01:37 UTC (rev 10540)
@@ -14,3 +14,4 @@
demo.testPageTitle=Component state test page
table.paginated=Enable paginator
table.rowsNumber=Number of rows
+table.selectedPatients=Selected patients
Modified: trunk/samples/extendedDataTable-sample/src/main/resources/i18n/messages_en.properties
===================================================================
--- trunk/samples/extendedDataTable-sample/src/main/resources/i18n/messages_en.properties 2008-09-23 06:39:57 UTC (rev 10539)
+++ trunk/samples/extendedDataTable-sample/src/main/resources/i18n/messages_en.properties 2008-09-23 08:01:37 UTC (rev 10540)
@@ -14,3 +14,4 @@
demo.testPageTitle=Component state test page
table.paginated=Enable paginator
table.rowsNumber=Number of rows
+table.selectedPatients=Selected patients
Modified: trunk/samples/extendedDataTable-sample/src/main/resources/i18n/messages_pl.properties
===================================================================
--- trunk/samples/extendedDataTable-sample/src/main/resources/i18n/messages_pl.properties 2008-09-23 06:39:57 UTC (rev 10539)
+++ trunk/samples/extendedDataTable-sample/src/main/resources/i18n/messages_pl.properties 2008-09-23 08:01:37 UTC (rev 10540)
@@ -14,3 +14,4 @@
demo.testPageTitle=Component state test page
table.paginated=Enable paginator
table.rowsNumber=Number of rows
+table.selectedPatients=Selected patients
Modified: trunk/samples/extendedDataTable-sample/src/main/webapp/pages/index.jsp
===================================================================
--- trunk/samples/extendedDataTable-sample/src/main/webapp/pages/index.jsp 2008-09-23 06:39:57 UTC (rev 10539)
+++ trunk/samples/extendedDataTable-sample/src/main/webapp/pages/index.jsp 2008-09-23 08:01:37 UTC (rev 10540)
@@ -23,6 +23,11 @@
height: 100%;
}
+ table {
+ cell-padding: 10;
+ cell-spacing: 10;
+ }
+
#mainPanel {
width: 100%;
height: 100%;
@@ -41,12 +46,15 @@
</head>
<body>
- <h:panelGrid columns="2" id="mainPanel" columnClasses="leftColumn, rightColumn">
+ <h:panelGrid style="table-layout: fixed;" columns="2" id="mainPanel" columnClasses="leftColumn, rightColumn">
+ <rich:spacer></rich:spacer>
+ <rich:spacer></rich:spacer>
<rich:panel id="leftPanel">
- <h:form>
+ <h:form id="form1">
<extdt:extendedDataTable id="demoTable"
value="#{extendedDataTableBean.dataModel}"
var="patient"
+ style="margin: 0 auto;"
rows="#{extendedDataTableControlBean.rowsNumber}"
width="#{extendedDataTableControlBean.width}"
height="#{extendedDataTableControlBean.height}"
@@ -59,7 +67,7 @@
tableState="#{extendedDataTableBean.tableState}">
<rich:column id="firstName"
headerClass="dataTableHeader"
- width="150"
+ width="25%"
label="#{msg['patient.firstName']}"
sortable="true"
sortBy="#{patient.firstName}"
@@ -68,11 +76,15 @@
<f:facet name="header">
<h:outputText value="#{msg['patient.firstName']}" />
</f:facet>
- <h:outputText value="#{patient.firstName}" />
+ <h:outputText id="text" value="#{patient.firstName}" >
+ <rich:toolTip for="text" >
+ <h:outputText value="sasasasasasa" />
+ </rich:toolTip>
+ </h:outputText>
</rich:column>
<rich:column id="lastName"
headerClass="dataTableHeader"
- width="150"
+ width="25%"
label="#{msg['patient.lastName']}"
sortable="true"
sortBy="#{patient.lastName}"
@@ -85,7 +97,7 @@
</rich:column>
<rich:column id="admissionDate"
headerClass="dataTableHeader"
- width="150"
+ width="50%"
label="#{msg['patient.admissionDate']}"
sortable="true"
sortBy="#{patient.admissionDate}">
@@ -94,13 +106,15 @@
</f:facet>
<h:outputText value="#{patient.admissionDate}" />
</rich:column>
+ <a4j:support event="onselectionchange" action="#{extendedDataTableBean.takeSelection}" reRender="selectedPatients">
+ </a4j:support>
</extdt:extendedDataTable>
<rich:datascroller
style="width: #{extendedDataTableControlBean.width}"
rendered="#{extendedDataTableControlBean.paginated}"
for="demoTable">
</rich:datascroller>
- </h:form>
+ </h:form>
</rich:panel>
<rich:panel id="rightPanel">
<h:form>
@@ -146,6 +160,29 @@
action="stateTest"
>
</a4j:commandButton>
+ <rich:spacer height="5px" width="100%">
+ </rich:spacer>
+ <rich:dataTable id="selectedPatients" value="#{extendedDataTableBean.selectedItems}" var="selectedPatient">
+ <f:facet name="header">
+ <h:outputText value="#{msg['table.selectedPatients']}" />
+ </f:facet>
+ <rich:column id="selectedFirstName"
+ headerClass="dataTableHeader"
+ label="#{msg['patient.firstName']}">
+ <f:facet name="header">
+ <h:outputText value="#{msg['patient.firstName']}" />
+ </f:facet>
+ <h:outputText value="#{selectedPatient.firstName}" />
+ </rich:column>
+ <rich:column id="selectedLastName"
+ headerClass="dataTableHeader"
+ label="#{msg['patient.lastName']}">
+ <f:facet name="header">
+ <h:outputText value="#{msg['patient.lastName']}" />
+ </f:facet>
+ <h:outputText value="#{selectedPatient.lastName}" />
+ </rich:column>
+ </rich:dataTable>
<rich:messages>
</rich:messages>
</h:form>
16 years, 3 months