Seam SVN: r13234 - examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/booking.
by seam-commits@lists.jboss.org
Author: dan.j.allen
Date: 2010-06-17 19:25:45 -0400 (Thu, 17 Jun 2010)
New Revision: 13234
Modified:
examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/booking/BookingAgent.java
Log:
log if hotel is still managed by pc
Modified: examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/booking/BookingAgent.java
===================================================================
--- examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/booking/BookingAgent.java 2010-06-17 23:16:55 UTC (rev 13233)
+++ examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/booking/BookingAgent.java 2010-06-17 23:25:45 UTC (rev 13234)
@@ -109,6 +109,7 @@
public void validate()
{
// if we got here, all validations passed
+ log.info("Does the persistence context still contain the hotel instance? " + em.contains(booking.getHotel()));
bookingValid = true;
}
14 years, 4 months
Seam SVN: r13233 - examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/model.
by seam-commits@lists.jboss.org
Author: dan.j.allen
Date: 2010-06-17 19:16:55 -0400 (Thu, 17 Jun 2010)
New Revision: 13233
Modified:
examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/model/Booking.java
examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/model/Hotel.java
examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/model/User.java
Log:
switch to @Veto
Modified: examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/model/Booking.java
===================================================================
--- examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/model/Booking.java 2010-06-17 23:11:52 UTC (rev 13232)
+++ examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/model/Booking.java 2010-06-17 23:16:55 UTC (rev 13233)
@@ -43,6 +43,7 @@
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Pattern;
import javax.validation.constraints.Size;
+import org.jboss.weld.extensions.core.Veto;
/**
* <p><strong>Booking</strong> is the model/entity class that represents a hotel
@@ -52,7 +53,7 @@
* @author Dan Allen
*/
@Entity
-@Typed()
+@Veto
public class Booking implements Serializable
{
private Long id;
Modified: examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/model/Hotel.java
===================================================================
--- examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/model/Hotel.java 2010-06-17 23:11:52 UTC (rev 13232)
+++ examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/model/Hotel.java 2010-06-17 23:16:55 UTC (rev 13233)
@@ -34,6 +34,7 @@
import javax.validation.constraints.Min;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
+import org.jboss.weld.extensions.core.Veto;
/**
* <p>
@@ -45,6 +46,7 @@
*/
@Entity
@Table(name = "hotel")
+@Veto
public class Hotel implements Serializable
{
private Long id;
Modified: examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/model/User.java
===================================================================
--- examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/model/User.java 2010-06-17 23:11:52 UTC (rev 13232)
+++ examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/model/User.java 2010-06-17 23:16:55 UTC (rev 13233)
@@ -32,6 +32,7 @@
import javax.validation.constraints.Pattern;
import javax.validation.constraints.Size;
import org.hibernate.validator.constraints.Email;
+import org.jboss.weld.extensions.core.Veto;
/**
* <p>
@@ -44,7 +45,7 @@
*/
@Entity
@Table(name = "traveler")
-@Typed()
+@Veto
public class User implements Serializable
{
private String username;
14 years, 4 months
Seam SVN: r13232 - examples/trunk/booking-simplified/src/main/webapp.
by seam-commits@lists.jboss.org
Author: dan.j.allen
Date: 2010-06-17 19:11:52 -0400 (Thu, 17 Jun 2010)
New Revision: 13232
Modified:
examples/trunk/booking-simplified/src/main/webapp/register.xhtml
Log:
add ajax to command button
Modified: examples/trunk/booking-simplified/src/main/webapp/register.xhtml
===================================================================
--- examples/trunk/booking-simplified/src/main/webapp/register.xhtml 2010-06-17 23:07:42 UTC (rev 13231)
+++ examples/trunk/booking-simplified/src/main/webapp/register.xhtml 2010-06-17 23:11:52 UTC (rev 13232)
@@ -30,8 +30,6 @@
<h:form id="registrationForm" prependId="false">
<fieldset>
- <h:outputScript name="jsf.js" library="javax.faces" target="head"/>
-
<!-- manually append Ajax behavior -->
<p:input id="username">
<h:inputText id="input" value="#{newUser.username}"
@@ -69,7 +67,9 @@
</p:input>--></ui:remove>
<div class="buttonBox">
- <h:commandButton id="register" value="Register" action="#{registrar.register}"/>
+ <h:commandButton id="register" value="Register" action="#{registrar.register}">
+ <f:ajax execute="@form"/>
+ </h:commandButton>
#{' '}
<h:button id="cancel" value="Cancel" outcome="/home.xhtml"/>
</div>
14 years, 4 months
Seam SVN: r13231 - in examples/trunk/booking-simplified/src/main: webapp and 1 other directory.
by seam-commits@lists.jboss.org
Author: dan.j.allen
Date: 2010-06-17 19:07:42 -0400 (Thu, 17 Jun 2010)
New Revision: 13231
Modified:
examples/trunk/booking-simplified/src/main/java/org/jboss/seam/faces/component/UIInputContainer.java
examples/trunk/booking-simplified/src/main/webapp/register.xhtml
Log:
xval ajax
Modified: examples/trunk/booking-simplified/src/main/java/org/jboss/seam/faces/component/UIInputContainer.java
===================================================================
--- examples/trunk/booking-simplified/src/main/java/org/jboss/seam/faces/component/UIInputContainer.java 2010-06-17 23:07:20 UTC (rev 13230)
+++ examples/trunk/booking-simplified/src/main/java/org/jboss/seam/faces/component/UIInputContainer.java 2010-06-17 23:07:42 UTC (rev 13231)
@@ -24,6 +24,7 @@
import java.io.IOException;
import java.util.ArrayList;
import java.util.Arrays;
+import java.util.Collection;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
@@ -36,7 +37,7 @@
import javax.faces.component.NamingContainer;
import javax.faces.component.UIComponent;
import javax.faces.component.UIComponentBase;
-import javax.faces.component.UIInput;
+import javax.faces.component.UIForm;
import javax.faces.component.UIMessage;
import javax.faces.component.UINamingContainer;
import javax.faces.component.UIViewRoot;
@@ -117,6 +118,10 @@
*/
public static final String COMPONENT_TYPE = "org.jboss.seam.faces.InputContainer";
+ public static final String DYNAMIC_AJAX_BEHAVIOR = "org.jboss.seam.faces.DYNAMIC_AJAX_BEHAVIOR";
+
+ public static final String FORM_TOKEN = "@form";
+
protected static final String HTML_ID_ATTR_NAME = "id";
protected static final String HTML_CLASS_ATTR_NAME = "class";
protected static final String HTML_STYLE_ATTR_NAME = "style";
@@ -267,9 +272,11 @@
}
// temporary workaround for state saving bug; remove any ClientBehaviors added dynamically
+ // this needs to be less aggressive...need to track exactly what we added
for (EditableValueHolder i : elements.getInputs())
{
- if (i instanceof ClientBehaviorHolder)
+ if (i instanceof ClientBehaviorHolder &&
+ ((UIComponent) i).getAttributes().remove(DYNAMIC_AJAX_BEHAVIOR) != null)
{
Map<String, List<ClientBehavior>> b = ((ClientBehaviorHolder) i).getClientBehaviors();
for (String k : b.keySet())
@@ -336,7 +343,18 @@
{
if (elements == null)
{
- elements = new InputContainerElements(getId(), getAttributes());
+ UIComponent node = getParent();
+ UIForm form = null;
+ while (node != null)
+ {
+ if (node instanceof UIForm)
+ {
+ form = (UIForm) node;
+ break;
+ }
+ node = node.getParent();
+ }
+ elements = new InputContainerElements(getId(), form != null ? ":" + form.getClientId() : null, getAttributes());
}
// NOTE we need to walk the tree ignoring rendered attribute because it's
@@ -475,6 +493,7 @@
public class InputContainerElements
{
private String containerId;
+ private String formId;
private Map<String, Object> attributes;
private String propertyName;
private HtmlOutputLabel label;
@@ -483,10 +502,11 @@
private boolean validationError = false;
private boolean requiredInput = false;
- public InputContainerElements(final String containerId, final Map<String, Object> attributes)
+ public InputContainerElements(final String containerId, final String formId, final Map<String, Object> attributes)
{
this.containerId = containerId;
this.attributes = attributes;
+ this.formId = formId;
}
public HtmlOutputLabel getLabel()
@@ -518,13 +538,20 @@
if (ajaxEvent != null)
{
Map<String, List<ClientBehavior>> behaviors = bh.getClientBehaviors();
- if (!behaviors.containsKey(ajaxEvent))
+ // QUESTION should we clear or honor what is present?
+ if (behaviors.containsKey(ajaxEvent))
{
- AjaxBehavior ajax = new AjaxBehavior();
- ajax.setRender(Arrays.asList(containerId));
- bh.addClientBehavior(ajaxEvent.toLowerCase(), ajax);
+ behaviors.get(ajaxEvent).clear();
}
+ ((UIComponent) input).getAttributes().put(DYNAMIC_AJAX_BEHAVIOR, ajaxEvent);
+ AjaxBehavior ajax = new AjaxBehavior();
+ ajax.setRender(Arrays.asList(containerId));
+ bh.addClientBehavior(ajaxEvent.toLowerCase(), ajax);
}
+ else
+ {
+ interpolateAjaxTargets(bh);
+ }
}
if (input.isRequired() || isRequiredByConstraint(input, validator, context))
{
@@ -549,6 +576,35 @@
}
}
+ private void interpolateAjaxTargets(ClientBehaviorHolder bh)
+ {
+ Map<String, List<ClientBehavior>> behaviors = bh.getClientBehaviors();
+ for (List<ClientBehavior> behaviorsForEvent : behaviors.values())
+ {
+ for (ClientBehavior b : behaviorsForEvent)
+ {
+ if (b instanceof AjaxBehavior)
+ {
+ AjaxBehavior a = (AjaxBehavior) b;
+ Collection<String> original = a.getExecute();
+ Collection<String> translated = new ArrayList<String>();
+ for (String o : original)
+ {
+ translated.add(o.replace(FORM_TOKEN, formId));
+ }
+ a.setExecute(translated);
+ original = a.getRender();
+ translated = new ArrayList<String>();
+ for (String o : original)
+ {
+ translated.add(o.replace(FORM_TOKEN, formId));
+ }
+ a.setRender(translated);
+ }
+ }
+ }
+ }
+
public List<UIMessage> getMessages()
{
return messages;
Modified: examples/trunk/booking-simplified/src/main/webapp/register.xhtml
===================================================================
--- examples/trunk/booking-simplified/src/main/webapp/register.xhtml 2010-06-17 23:07:20 UTC (rev 13230)
+++ examples/trunk/booking-simplified/src/main/webapp/register.xhtml 2010-06-17 23:07:42 UTC (rev 13231)
@@ -30,7 +30,8 @@
<h:form id="registrationForm" prependId="false">
<fieldset>
-
+ <h:outputScript name="jsf.js" library="javax.faces" target="head"/>
+
<!-- manually append Ajax behavior -->
<p:input id="username">
<h:inputText id="input" value="#{newUser.username}"
@@ -40,21 +41,32 @@
</p:input>
<!-- automatically append Ajax behavior -->
- <p:input id="name" ajax="default">
+ <p:input id="name" ajax="blur">
<h:inputText id="input" value="#{newUser.name}"/>
</p:input>
- <p:input id="email" ajax="default">
+ <p:input id="email" ajax="blur">
<h:inputText id="input" value="#{newUser.email}"/>
</p:input>
- <p:input id="password" ajax="default">
+ <p:input id="password" ajax="blur">
<h:inputSecret id="input" value="#{newUser.password}" redisplay="true"/>
</p:input>
- <p:input id="confirmPassword" ajax="default">
- <h:inputSecret id="input" value="#{registrar.confirmPassword}" redisplay="true"/>
+ <p:input id="confirmPassword">
+ <h:inputSecret id="input" value="#{registrar.confirmPassword}" redisplay="true">
+ <f:ajax event="blur"
+ execute="@this @form:password:input @form:passwordCheck"
+ render="confirmPassword @form:password :messages"/>
+ </h:inputSecret>
</p:input>
+
+ <ui:remove><!--
+ <p:input id="confirmPassword">
+ <h:inputSecret id="input" value="#{registrar.confirmPassword}" redisplay="true">
+ <f:ajax event="blur" execute="@form" render="@form :messages"/>
+ </h:inputSecret>
+ </p:input>--></ui:remove>
<div class="buttonBox">
<h:commandButton id="register" value="Register" action="#{registrar.register}"/>
@@ -64,7 +76,7 @@
</fieldset>
- <s:validateForm validatorId="confirmPasswordValidator"
+ <s:validateForm id="passwordCheck" validatorId="confirmPasswordValidator"
fields="newPassword=password:input confirmPassword=confirmPassword:input"/>
</h:form>
14 years, 4 months
Seam SVN: r13230 - examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/account.
by seam-commits@lists.jboss.org
Author: dan.j.allen
Date: 2010-06-17 19:07:20 -0400 (Thu, 17 Jun 2010)
New Revision: 13230
Modified:
examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/account/ConfirmPasswordValidator.java
Log:
add comment
Modified: examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/account/ConfirmPasswordValidator.java
===================================================================
--- examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/account/ConfirmPasswordValidator.java 2010-06-17 21:31:29 UTC (rev 13229)
+++ examples/trunk/booking-simplified/src/main/java/org/jboss/seam/examples/booking/account/ConfirmPasswordValidator.java 2010-06-17 23:07:20 UTC (rev 13230)
@@ -51,14 +51,17 @@
@InputField
private String confirmPassword;
- public void validate(final FacesContext ctx, final UIComponent c, final Object value) throws ValidatorException
+ public void validate(final FacesContext ctx, final UIComponent form, final Object components) throws ValidatorException
{
+ //Map<String, UIInput> fieldMap = (Map<String, UIInput>) components;
if ((newPassword != null) && !newPassword.equals(confirmPassword))
{
throw new ValidatorException(
- new FacesMessage(messageBuilder.get().text(
- new DefaultBundleKey("account.passwordsDoNotMatch"))
- .build().getText()));
+ new FacesMessage(messageBuilder.get().text(
+ new DefaultBundleKey("account.passwordsDoNotMatch"))
+ // targets not honored yet
+ //.targets(fieldMap.get("confirmPassword").getClientId())
+ .build().getText()));
}
}
14 years, 4 months
Seam SVN: r13229 - modules/international/trunk/docs/reference/src/main/docbook/en-US.
by seam-commits@lists.jboss.org
Author: kenfinni
Date: 2010-06-17 17:31:29 -0400 (Thu, 17 Jun 2010)
New Revision: 13229
Modified:
modules/international/trunk/docs/reference/src/main/docbook/en-US/timezones.xml
Log:
Add timezone content from blog into ref guide
Modified: modules/international/trunk/docs/reference/src/main/docbook/en-US/timezones.xml
===================================================================
--- modules/international/trunk/docs/reference/src/main/docbook/en-US/timezones.xml 2010-06-17 21:21:01 UTC (rev 13228)
+++ modules/international/trunk/docs/reference/src/main/docbook/en-US/timezones.xml 2010-06-17 21:31:29 UTC (rev 13229)
@@ -1,6 +1,71 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
+<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" []>
-<chapter id="timezones">
+<chapter id="international.timezones">
<title>Timezones</title>
+ <para>
+ To support a more developer friendly way of handling TimeZones we have incorporated the use of Joda-Time through their <literal>DateTimeZone</literal>
+ class. Don't worry, it provides convenience methods to convert to JDK <literal>TimeZone</literal> if required.
+ </para>
+ <section id="defaulttz">
+ <title>Default TimeZone</title>
+ <para>
+ Starting at the application level the module provides a <literal>DateTimeZone</literal> that can be retrieved with
+<programlisting>
+@Inject
+DateTimeZone applicationTimeZone;</programlisting>
+ It can also be accessed through EL by the name "defaultTimeZone"!
+ </para>
+ <para>
+ By default the <literal>TimeZone</literal> will be set to the JVM default, unless you override the <literal>DefaultTimeZoneProducer</literal> Bean through XML Config.
+ For instance, adding this XML into <literal>seam-beans.xml</literal> or <literal>beans.xml</literal> will change the default <literal>TimeZone</literal> of the application to be Tijuana!
+ </para>
+<programlisting role="XML"><![CDATA[<beans xmlns="http://java.sun.com/xml/ns/javaee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:s="urn:java:seam:core"
+ xmlns:tz="urn:java:org.jboss.seam.international.timezone"
+ xsi:schemaLocation="
+ http://java.sun.com/xml/ns/javaee
+ http://docs.jboss.org/cdi/beans_1_0.xsd">
+
+ <tz:DefaultTimeZoneProducer>
+ <s:specializes/>
+ <tz:defaultTimeZoneId>America/Tijuana</tz:defaultTimeZoneId>
+ </tz:DefaultTimeZoneProducer>
+</beans>]]></programlisting>
+ </section>
+ <section id="usertz">
+ <title>User TimeZone</title>
+ <para>
+ We also have a <literal>DateTimeZone</literal> that is scoped to the User Session which can be retrieved with
+<programlisting>
+@Inject
+@UserTimeZone
+DateTimeZone userTimeZone;</programlisting>
+ It can also be accessed through EL using "userTimeZone".
+ </para>
+ <para>
+ By default the <literal>TimeZone</literal> will be the same as the application when the User Session is initialised. However, changing
+ the User's <literal>TimeZone</literal> is a simple matter of firing an event to update it. An example would be
+<programlisting>
+@Inject
+@Changed
+Event<DateTimeZone> tzEvent;
+
+public void setUserTimeZone()
+{
+ DateTimeZone tijuana = DateTimeZone.forID("America/Tijuana");
+ tzEvent.fire(tijuana);
+}</programlisting>
+ </para>
+ </section>
+ <section id="availtz">
+ <title>Available TimeZones</title>
+ <para>
+ We've also provided a list of available TimeZones that can be accessed via
+<programlisting>
+@Inject
+List<DateTimeZone> timeZones;</programlisting>
+ </para>
+ </section>
</chapter>
\ No newline at end of file
14 years, 4 months
Seam SVN: r13228 - in examples/trunk/booking-simplified/src/main/webapp: resources/components/property and 1 other directory.
by seam-commits@lists.jboss.org
Author: dan.j.allen
Date: 2010-06-17 17:21:01 -0400 (Thu, 17 Jun 2010)
New Revision: 13228
Modified:
examples/trunk/booking-simplified/src/main/webapp/register.xhtml
examples/trunk/booking-simplified/src/main/webapp/resources/components/property/input.xhtml
Log:
fix ajax attribute
Modified: examples/trunk/booking-simplified/src/main/webapp/register.xhtml
===================================================================
--- examples/trunk/booking-simplified/src/main/webapp/register.xhtml 2010-06-17 21:19:30 UTC (rev 13227)
+++ examples/trunk/booking-simplified/src/main/webapp/register.xhtml 2010-06-17 21:21:01 UTC (rev 13228)
@@ -40,19 +40,19 @@
</p:input>
<!-- automatically append Ajax behavior -->
- <p:input id="name" ajax="true">
+ <p:input id="name" ajax="default">
<h:inputText id="input" value="#{newUser.name}"/>
</p:input>
- <p:input id="email" ajax="true">
+ <p:input id="email" ajax="default">
<h:inputText id="input" value="#{newUser.email}"/>
</p:input>
- <p:input id="password" ajax="true">
+ <p:input id="password" ajax="default">
<h:inputSecret id="input" value="#{newUser.password}" redisplay="true"/>
</p:input>
- <p:input id="confirmPassword" ajax="true">
+ <p:input id="confirmPassword" ajax="default">
<h:inputSecret id="input" value="#{registrar.confirmPassword}" redisplay="true"/>
</p:input>
Modified: examples/trunk/booking-simplified/src/main/webapp/resources/components/property/input.xhtml
===================================================================
--- examples/trunk/booking-simplified/src/main/webapp/resources/components/property/input.xhtml 2010-06-17 21:19:30 UTC (rev 13227)
+++ examples/trunk/booking-simplified/src/main/webapp/resources/components/property/input.xhtml 2010-06-17 21:21:01 UTC (rev 13228)
@@ -10,7 +10,7 @@
<cc:interface componentType="org.jboss.seam.faces.InputContainer">
<cc:attribute name="label" required="true"/>
<cc:attribute name="required" required="false"/>
- <cc:attribute name="ajax" required="false" default="false" type="java.lang.Boolean"/>
+ <cc:attribute name="ajax" required="false" default="false"/>
<cc:attribute name="inputs" required="false" default="1"/>
</cc:interface>
14 years, 4 months
Seam SVN: r13226 - examples/trunk/booking-simplified/src/main/webapp/resources/components/model.
by seam-commits@lists.jboss.org
Author: dan.j.allen
Date: 2010-06-17 17:18:22 -0400 (Thu, 17 Jun 2010)
New Revision: 13226
Modified:
examples/trunk/booking-simplified/src/main/webapp/resources/components/model/displayHotel.xhtml
Log:
fix attribute name
Modified: examples/trunk/booking-simplified/src/main/webapp/resources/components/model/displayHotel.xhtml
===================================================================
--- examples/trunk/booking-simplified/src/main/webapp/resources/components/model/displayHotel.xhtml 2010-06-17 21:17:19 UTC (rev 13225)
+++ examples/trunk/booking-simplified/src/main/webapp/resources/components/model/displayHotel.xhtml 2010-06-17 21:18:22 UTC (rev 13226)
@@ -18,7 +18,7 @@
<p:output label="State" value="#{cc.attrs.value.state}"/>
<p:output label="Zip" value="#{cc.attrs.value.zip}"/>
<p:output label="Country" value="#{cc.attrs.value.country}"/>
- <p:output label="Class" override="true">
+ <p:output label="Class" verbatim="true">
<h:graphicImage value="/img/#{cc.attrs.value.stars}-star.gif" style="padding-top: 4px;"/>
</p:output>
<p:output label="Nightly rate" value="#{cc.attrs.value.price}">
14 years, 4 months
Seam SVN: r13225 - examples/trunk/booking-simplified/src/main/webapp/resources/components/model.
by seam-commits@lists.jboss.org
Author: dan.j.allen
Date: 2010-06-17 17:17:19 -0400 (Thu, 17 Jun 2010)
New Revision: 13225
Modified:
examples/trunk/booking-simplified/src/main/webapp/resources/components/model/displayAccount.xhtml
Log:
reverse logic on showEmail
Modified: examples/trunk/booking-simplified/src/main/webapp/resources/components/model/displayAccount.xhtml
===================================================================
--- examples/trunk/booking-simplified/src/main/webapp/resources/components/model/displayAccount.xhtml 2010-06-17 21:12:01 UTC (rev 13224)
+++ examples/trunk/booking-simplified/src/main/webapp/resources/components/model/displayAccount.xhtml 2010-06-17 21:17:19 UTC (rev 13225)
@@ -13,7 +13,7 @@
<cc:implementation>
<p:output label="Full name" value="#{cc.attrs.value.name}"/>
<p:output label="Username" value="#{cc.attrs.value.username}"/>
- <p:output label="Email address" value="#{cc.attrs.value.email}" rendered="#{not cc.attrs.showEmail}"/>
+ <p:output label="Email address" value="#{cc.attrs.value.email}" rendered="#{cc.attrs.showEmail}"/>
</cc:implementation>
</ui:composition>
14 years, 4 months