[corejsf~subversion:175] Processed submitted bug reports

  • From: cayhorstmann@kenai.com
  • To: commits@corejsf.kenai.com
  • Subject: [corejsf~subversion:175] Processed submitted bug reports
  • Date: Mon, 27 Jun 2011 05:11:53 +0000

Project:    corejsf
Repository: subversion
Revision:   175
Author:     cayhorstmann
Date:       2011-06-27 05:11:45 UTC
Link:       

Log Message:
------------
Processed submitted bug reports


Revisions:
----------
175


Modified Paths:
---------------
ch09/composite-login/web/resources/util/login.xhtml
ch07/custom-tags/web/WEB-INF/corejsf.taglib.xml
ch03/javaquiz/web/index.xhtml
ch04/select/web/showInformation.xhtml
ch13/fileupload/src/java/com/corejsf/UploadFilter.java
ch08/tabbedpane/src/java/com/corejsf/messages.properties
ch13/popup/web/resources/javascript/popup2.js
ch11/spinner-ajax2/src/java/com/corejsf/JSSpinnerRenderer.java
ch09/simple-composite/web/resources/util/debug.xhtml
ch09/composite-login/web/welcome.xhtml
ch10/autoComplete/src/java/com/corejsf/AutoComplete.java
ch07/custom-tags/src/java/com/corejsf/CreditCardValidator.java
ch10/autoComplete/web/index.xhtml
build.xml
ch11/spinner-js/web/resources/javascript/spinner.js
build.properties.glassfish
ch12/sfsb/src/java/com/corejsf/UserBean.java
ch09/composite-login/web/register.xhtml
ch11/spinner-ajax/src/java/com/corejsf/FontSpinnerRenderer.java
ch12/slsb/src/java/com/corejsf/CredentialsManager.java
build.properties
ch10/autoComplete/web/resources/javascript/autoComplete.js
ch07/validator3
ch01/login/web/WEB-INF/web.xml
ch11/spinner/src/java/com/corejsf/UISpinner.java
ch06/database/web/misc/customers.sql
ch05/planets/web/sections/planetarium/sidebarLeft.xhtml
ch08/rushmore/src/java/com/corejsf/messages.properties
ch04/select/web/index.xhtml
ch10/autoComplete/src/java/com/corejsf/UserBean.java
ch07/custom-tags/src/java/com/corejsf/CreditCardConverter.java
ch09/composite-login/web/index.xhtml
ch13/popup/web/resources/javascript/popup1.js
ch10/autoComplete/web/resources/util/autoComplete.xhtml
ch11/spinner-ajax2/src/java/com/corejsf/UISpinner.java
ch09/composite-login/web/resources/util/icon.xhtml
ch09/composite-date/src/java/util/date.java
ch09/composite-date/web/resources/util/date.xhtml
ch13/clientside-validator/src/java/com/corejsf/CreditCardValidator.java
ch09/composite-date
ch11/tabbedpane/src/java/com/corejsf/messages.properties
ch04/flags
ch12/jpa/src/java/com/corejsf/UserBean.java
ch10/autoComplete/src/java/com/corejsf/AutocompleteListener.java
ch08/system-events/src/java/com/corejsf/UserBean.java
ch06/sorting/src/java/com/corejsf/SortFilterModel.java
ch12/db/src/java/com/corejsf/UserBean.java
ch07/validator2/web/result.xhtml


Diffs:
------
Index: build.properties.tomcat
===================================================================
--- build.properties.tomcat     (revision 174)
+++ build.properties.tomcat     (revision 175)
@@ -1,29 +0,0 @@
-# http://tomcat.apache.org/
-appserver.dir=/home/apps/apache-tomcat-6.0.20
-deploy.dir=${appserver.dir}/webapps
-
-# http://javaserverfaces.dev.java.net/
-jsf.dir=/home/apps/mojarra-2.0.2-FCS
-
-# http://download.java.net/maven/2/javax/el/el-api/2.2/el-api-2.2.jar
-# 
http://download.java.net/maven/2/org/glassfish/web/el-impl/2.2/el-impl-2.2.jar
-el.dir=/home/apps/el-2.2
-
-# http://seamframework.org/Weld
-cdi.dir=/home/apps/weld-1.0.0.SP1
-
-bean-validation-dir=/home/apps/hibernate-validator-4.0.2.GA
-
-use-jsf-libs=true
-
-jsf.api.jar=${jsf.dir}/lib/jsf-api.jar
-jsf.impl.jar=${jsf.dir}/lib/jsf-impl.jar
-servlet.api.jar=${appserver.dir}/lib/servlet-api.jar
-el.api.jar=${el.dir}/el-api-2.2.jar
-el.impl.jar=${el.dir}/el-impl-2.2.jar
-bean-validation.api.jar=${bean-validation.dir}/lib/validation-api-1.0.0.GA.jar
-bean-validation.impl.jar=${bean-validation.dir}/hibernate-validator-4.0.2.GA.jar
-bean-validation.lib.dir=${bean-validation.dir}/lib
-cdi.api.jar=${cdi.dir}/artifacts/weld/weld-servlet.jar
-cdi.impl.jar=${cdi.dir}/artifacts/weld/weld-servlet.jar
-
Index: build.properties
===================================================================
--- build.properties    (revision 174)
+++ build.properties    (revision 175)
@@ -1,4 +1,5 @@
 appserver.dir=${env.GLASSFISH_HOME}
+glassfish=true
 jsf.api.jar=${appserver.dir}/modules/jsf-api.jar
 servlet.api.jar=${appserver.dir}/modules/javax.servlet.jar
 el.api.jar=${appserver.dir}/modules/javax.servlet.jsp.jar
@@ -8,5 +9,5 @@
 bean-validation.api.jar=${appserver.dir}/modules/bean-validator.jar
 cdi.api.jar=${appserver.dir}/modules/weld-osgi-bundle.jar
 mail.api.jar=${appserver.dir}/modules/mail.jar
-deploy.dir=/home/domains/domain1/autodeploy
+deploy.dir=${appserver.dir}/domains/domain1/autodeploy
 
Index: ch01/login/web/WEB-INF/web.xml
===================================================================
--- ch01/login/web/WEB-INF/web.xml      (revision 174)
+++ ch01/login/web/WEB-INF/web.xml      (revision 175)
@@ -20,4 +20,4 @@
       <param-name>javax.faces.PROJECT_STAGE</param-name>
       <param-value>Development</param-value>
    </context-param>
-</web-app>
\ No newline at end of file
+</web-app>
Index: ch10/autoComplete/src/java/com/corejsf/AutoComplete.java
===================================================================
--- ch10/autoComplete/src/java/com/corejsf/AutoComplete.java    (revision 174)
+++ ch10/autoComplete/src/java/com/corejsf/AutoComplete.java    (revision 175)
@@ -1,5 +1,7 @@
 package com.corejsf;
 
+import java.io.Serializable;
+
 import javax.inject.Named;
    // or import javax.faces.bean.ManagedBean;
 import javax.enterprise.context.ApplicationScoped;
@@ -7,7 +9,7 @@
 
 @Named //@ManagedBean
 @ApplicationScoped
-public class AutoComplete {
+public class AutoComplete implements Serializable {
    public String[] getLocations() {
       return new String[] {
           "Arvada", "Colorado Springs", "Baltimore", "Brittany", "Bahamas",
@@ -16,4 +18,4 @@
           "Loveland", "Vail"
       };
    }
-}
\ No newline at end of file
+}
Index: ch10/autoComplete/src/java/com/corejsf/UserBean.java
===================================================================
--- ch10/autoComplete/src/java/com/corejsf/UserBean.java        (revision 174)
+++ ch10/autoComplete/src/java/com/corejsf/UserBean.java        (revision 175)
@@ -12,10 +12,14 @@
 public class UserBean implements Serializable {
    private String name = "";
    private String password;
+   private String city = "";
 
    public String getName() { return name; }
    public void setName(String newValue) { name = newValue; }
 
    public String getPassword() { return password; }
    public void setPassword(String newValue) { password = newValue; }
+
+   public String getCity() { return city; }
+   public void setCity(String newValue) { city = newValue; }
 }
Index: ch10/autoComplete/src/java/com/corejsf/AutocompleteListener.java
===================================================================
--- ch10/autoComplete/src/java/com/corejsf/AutocompleteListener.java    
(revision 174)
+++ ch10/autoComplete/src/java/com/corejsf/AutocompleteListener.java    
(revision 175)
@@ -1,5 +1,7 @@
 package com.corejsf;
 
+import java.io.Serializable;
+
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
@@ -17,7 +19,7 @@
 
 @Named // @ManagedBean
 @SessionScoped
-public class AutocompleteListener {
+public class AutocompleteListener implements Serializable {
    private static String COMPLETION_ITEMS_ATTR = "corejsf.completionItems";
   
    public void valueChanged(ValueChangeEvent e) {
@@ -39,8 +41,7 @@
       List<String> newItems = new ArrayList<String>();
     
       for (String item : completionItems) {
-         String s = item.substring(0, inputValue.length());
-         if (s.equalsIgnoreCase(inputValue))
+         if (item.toLowerCase().startsWith(inputValue.toLowerCase()))
            newItems.add(item);
       }
     
@@ -71,13 +72,13 @@
    }
   
    public void completionItemSelected(ValueChangeEvent e) {
-     UISelectOne listbox = (UISelectOne)e.getSource();
-     UIInput input = (UIInput)listbox.findComponent("input");
+      UISelectOne listbox = (UISelectOne)e.getSource();
+      UIInput input = (UIInput)listbox.findComponent("input");
     
-     if(input != null) {
-        input.setValue(listbox.getValue());
-     }
-     Map<String, Object> attrs = listbox.getAttributes();
-     attrs.put("style", "display: none");
+      if(input != null) {
+         input.setValue(listbox.getValue());
+      }
+      Map<String, Object> attrs = listbox.getAttributes();
+      attrs.put("style", "display: none");
    }
-}
\ No newline at end of file
+}
Index: ch10/autoComplete/web/index.xhtml
===================================================================
--- ch10/autoComplete/web/index.xhtml   (revision 174)
+++ ch10/autoComplete/web/index.xhtml   (revision 175)
@@ -1,3 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd";>
 <html xmlns="http://www.w3.org/1999/xhtml";
@@ -12,10 +13,10 @@
          <h:form>
             <h:panelGrid columns="2">
                #{msgs.locationsPrompt}
-               <util:autoComplete value="#{user.name}"
+               <util:autoComplete value="#{user.city}"
                      completionItems="#{autoComplete.locations}" />
             </h:panelGrid>
          </h:form>
       </div>
    </h:body>
-</html> 
\ No newline at end of file
+</html> 
Index: ch10/autoComplete/web/resources/javascript/autoComplete.js
===================================================================
--- ch10/autoComplete/web/resources/javascript/autoComplete.js  (revision 174)
+++ ch10/autoComplete/web/resources/javascript/autoComplete.js  (revision 175)
@@ -1,41 +1,40 @@
-if ( ! com) var com = {}
+if (!com) var com = {}
 if (!com.corejsf) {
-  var focusLostTimeout
-       com.corejsf = {   
-         errorHandler: function(data) { 
-           alert("Error occurred during Ajax call: " + data.description) 
-         },
+   var focusLostTimeout
+   com.corejsf = {   
+      errorHandler: function(data) { 
+            alert("Error occurred during Ajax call: " + data.description) 
+      },
 
-         updateCompletionItems: function(input, event) { 
-                 var keystrokeTimeout
+      updateCompletionItems: function(input, event) { 
+         var keystrokeTimeout
 
-                 jsf.ajax.addOnError(com.corejsf.errorHandler)
-                 
-                 var ajaxRequest = function() {
-                   
-                       jsf.ajax.request(input, event, 
-                   { render: com.corejsf.getListboxId(input),
-                          x: Element.cumulativeOffset(input)[0],
-                          y: Element.cumulativeOffset(input)[1] + 
Element.getHeight(input)
-                   })
-                 }
-                 
-                 window.clearTimeout(keystrokeTimeout)
-                 keystrokeTimeout = window.setTimeout(ajaxRequest, 350)
-    },
+         jsf.ajax.addOnError(com.corejsf.errorHandler)
+        
+         var ajaxRequest = function() {          
+            jsf.ajax.request(input, event, { 
+               render: com.corejsf.getListboxId(input),
+               x: Element.cumulativeOffset(input)[0],
+               y: Element.cumulativeOffset(input)[1] + 
Element.getHeight(input)
+            })
+         }
+        
+         window.clearTimeout(keystrokeTimeout)
+         keystrokeTimeout = window.setTimeout(ajaxRequest, 350)
+      },
 
-       inputLostFocus: function(input) {         
-         var hideListbox = function() {
-           Element.hide(com.corejsf.getListboxId(input))
-         }
-        
-         focusLostTimeout = window.setTimeout(hideListbox, 200)
-       },
-       
-       getListboxId: function(input) {
-         var clientId = new String(input.name)
-         var lastIndex = clientId.lastIndexOf(':')
-         return clientId.substring(0, lastIndex) + ':listbox'
-       }
-  }
-}
\ No newline at end of file
+      inputLostFocus: function(input) {       
+         var hideListbox = function() {
+            Element.hide(com.corejsf.getListboxId(input))
+         }
+      
+         focusLostTimeout = window.setTimeout(hideListbox, 200)
+      },
+     
+      getListboxId: function(input) {
+         var clientId = new String(input.name)
+         var lastIndex = clientId.lastIndexOf(":")
+         return clientId.substring(0, lastIndex) + ":listbox"
+      }
+   } 
+}
Index: ch10/autoComplete/web/resources/util/autoComplete.xhtml
===================================================================
--- ch10/autoComplete/web/resources/util/autoComplete.xhtml     (revision 174)
+++ ch10/autoComplete/web/resources/util/autoComplete.xhtml     (revision 175)
@@ -1,35 +1,37 @@
-<ui:composition xmlns="http://www.w3.org/1999/xhtml";
-    xmlns:ui="http://java.sun.com/jsf/facelets";
-    xmlns:f="http://java.sun.com/jsf/core";
-    xmlns:h="http://java.sun.com/jsf/html"    ;
-    xmlns:composite="http://java.sun.com/jsf/composite";>
-    
-    <!-- INTERFACE -->
-    <composite:interface>
-      <composite:attribute name="value" required="true"/>
-      <composite:attribute name="completionItems" required="true"/>        
-    </composite:interface> 
-
-    <!-- IMPLEMENATION -->          
-    <composite:implementation>
-      <h:outputScript library="javascript" 
-         name="prototype-1.6.0.2.js" target="head"/>
-        
-      <h:outputScript library="javascript" 
-         name="autoComplete.js" target="head"/>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd";>
+<html xmlns="http://www.w3.org/1999/xhtml";
+      xmlns:ui="http://java.sun.com/jsf/facelets";
+      xmlns:f="http://java.sun.com/jsf/core";
+      xmlns:h="http://java.sun.com/jsf/html"    ;
+      xmlns:composite="http://java.sun.com/jsf/composite";>
+  <head><title>IGNORED</title></head>
+  <body>
+    <ui:composition>     
+      <composite:interface>
+        <composite:attribute name="value" required="true"/>
+        <composite:attribute name="completionItems" required="true"/>
+      </composite:interface> 
+      <composite:implementation>
+        <h:outputScript library="javascript" 
+           name="prototype-1.6.0.2.js" target="head"/>        
+        <h:outputScript library="javascript" 
+           name="autoComplete.js" target="head"/>
       
-      <h:inputText id="input" value="#{cc.attrs.value}" 
-         valueChangeListener="#{autocompleteListener.valueChanged}"
-         onkeyup="com.corejsf.updateCompletionItems(this, event)"
-         onblur="com.corejsf.inputLostFocus(this)"/>
+        <h:inputText id="input" value="#{cc.attrs.value}" 
+           valueChangeListener="#{autocompleteListener.valueChanged}"
+           onkeyup="com.corejsf.updateCompletionItems(this, event)"
+           onblur="com.corejsf.inputLostFocus(this)"/>
           
-      <h:selectOneListbox id="listbox" style="display: none"
-         valueChangeListener="#{autocompleteListener.completionItemSelected}"
-         onfocus="com.corejsf.listboxGainedFocus()">
+        <h:selectOneListbox id="listbox" style="display: none"
+           
valueChangeListener="#{autocompleteListener.completionItemSelected}"
+           onfocus="com.corejsf.listboxGainedFocus()">
         
           <f:selectItems value="#{cc.attrs.completionItems}"/>
           <f:ajax render="input"/>
           
-      </h:selectOneListbox>
-    </composite:implementation>    
-</ui:composition>
\ No newline at end of file
+        </h:selectOneListbox>
+      </composite:implementation>    
+    </ui:composition>
+   </body>
+</html>
Index: ch11/spinner-ajax/src/java/com/corejsf/FontSpinnerRenderer.java
===================================================================
--- ch11/spinner-ajax/src/java/com/corejsf/FontSpinnerRenderer.java     
(revision 174)
+++ ch11/spinner-ajax/src/java/com/corejsf/FontSpinnerRenderer.java     
(revision 175)
@@ -36,7 +36,7 @@
       String formId = com.corejsf.util.Renderers.getFormId(context, 
component);
       UIInput spinner = (UIInput) component;
       String ajaxScript = MessageFormat.format(
-         "if(document.forms[''{0}''][''{1}''].value != '''') {2};",
+         "if (document.forms[''{0}''][''{1}''].value != '''') {2};",
          formId, clientId, getChangeScript(context, spinner)); 
       
       String min = component.getAttributes().get("minimum").toString();
Index: ch11/spinner-ajax2/src/java/com/corejsf/JSSpinnerRenderer.java
===================================================================
--- ch11/spinner-ajax2/src/java/com/corejsf/JSSpinnerRenderer.java      
(revision 174)
+++ ch11/spinner-ajax2/src/java/com/corejsf/JSSpinnerRenderer.java      
(revision 175)
@@ -40,7 +40,7 @@
       String formId = com.corejsf.util.Renderers.getFormId(context, 
component);
       UIInput spinner = (UIInput) component;
       String ajaxScript = MessageFormat.format(
-         "if(document.forms[''{0}''][''{1}''].value != '''') {2};", 
+         "if (document.forms[''{0}''][''{1}''].value != '''') {2};", 
          formId, clientId, getChangeScript(context, spinner)); 
       
       String min = component.getAttributes().get("minimum").toString();
@@ -139,4 +139,4 @@
          }
       }
    }
-}
\ No newline at end of file
+}
Index: ch11/spinner-ajax2/src/java/com/corejsf/UISpinner.java
===================================================================
--- ch11/spinner-ajax2/src/java/com/corejsf/UISpinner.java      (revision 174)
+++ ch11/spinner-ajax2/src/java/com/corejsf/UISpinner.java      (revision 175)
@@ -20,13 +20,7 @@
          // this component has a renderer
    }
    
-   @Override
-   public String getDefaultEventName() { 
-     return "click"; 
-   }
+   public String getDefaultEventName() { return "click"; }
    
-   @Override 
-   public Collection<String> getEventNames() {
-      return eventNames;
-   }
-}
\ No newline at end of file
+   public Collection<String> getEventNames() { return eventNames; }
+}
Index: ch11/tabbedpane/src/java/com/corejsf/messages.properties
===================================================================
--- ch11/tabbedpane/src/java/com/corejsf/messages.properties    (revision 174)
+++ ch11/tabbedpane/src/java/com/corejsf/messages.properties    (revision 175)
@@ -25,5 +25,5 @@
  1743 in Virginia. Jefferson was tall and awkward, and was not known as a \
  great public speaker. Jefferson became minister to France in 1785, after \
  Benjamin Franklin held that post. In 1796, Jefferson was a reluctant \
- presidential candiate, and missed winning the election by a mere three 
votes. \
- He served as president from 1801-1809.
\ No newline at end of file
+ presidential candidate, and missed winning the election by a mere three 
votes. \
+ He served as president from 1801-1809.
Index: ch11/spinner-js/web/resources/javascript/spinner.js
===================================================================
--- ch11/spinner-js/web/resources/javascript/spinner.js (revision 174)
+++ ch11/spinner-js/web/resources/javascript/spinner.js (revision 175)
@@ -2,10 +2,10 @@
 if (!com.corejsf) com.corejsf = {};
 com.corejsf.spinner = {
    spin: function(field, increment) {
-         var v = parseInt(field.value) + increment;
-         if (isNaN(v)) return;
-         if ('min' in field && v < field.min) return;
-         if ('max' in field && v > field.max) return;
-         field.value = v;
+      var v = parseInt(field.value) + increment;
+      if (isNaN(v)) return;
+      if ('min' in field && v < field.min) return;
+      if ('max' in field && v > field.max) return;
+      field.value = v;
    }
 };
Index: ch11/spinner/src/java/com/corejsf/UISpinner.java
===================================================================
--- ch11/spinner/src/java/com/corejsf/UISpinner.java    (revision 174)
+++ ch11/spinner/src/java/com/corejsf/UISpinner.java    (revision 175)
@@ -35,7 +35,7 @@
 
       int increment;
       if (requestMap.containsKey(clientId + MORE)) increment = 1;
-      else if(requestMap.containsKey(clientId + LESS)) increment = -1;
+      else if (requestMap.containsKey(clientId + LESS)) increment = -1;
       else increment = 0;
 
       try {
@@ -62,7 +62,7 @@
       if (v != null) writer.writeAttribute("value", v, "value");
 
       Object size = getAttributes().get("size");
-      if(size != null) writer.writeAttribute("size", size, "size");
+      if (size != null) writer.writeAttribute("size", size, "size");
 
       writer.endElement("input");
    }
@@ -103,4 +103,4 @@
       if (value instanceof String) return Integer.parseInt((String) value);
       throw new IllegalArgumentException("Cannot convert " + value);
    }
-}
\ No newline at end of file
+}
Index: ch03/javaquiz/web/index.xhtml
===================================================================
--- ch03/javaquiz/web/index.xhtml       (revision 174)
+++ ch03/javaquiz/web/index.xhtml       (revision 175)
@@ -8,7 +8,7 @@
    </h:head>
    <h:body>
       <h:form>
-         <p>#{quizBean.question}"/></p>
+         <p>#{quizBean.question}"</p>
          <p><h:inputText value="#{quizBean.response}"/></p>
          <p>
             <h:commandButton value="#{msgs.checkAnswer}"
@@ -16,4 +16,4 @@
          </p>
       </h:form>
    </h:body>
-</html>
\ No newline at end of file
+</html>
Index: ch12/slsb/src/java/com/corejsf/CredentialsManager.java
===================================================================
--- ch12/slsb/src/java/com/corejsf/CredentialsManager.java      (revision 174)
+++ ch12/slsb/src/java/com/corejsf/CredentialsManager.java      (revision 175)
@@ -20,7 +20,7 @@
       if (result.size() != 1) return 0;
       Credentials c = result.get(0);
       String storedPassword = c.getPasswd();                
-      if (password.equals(storedPassword.trim()))
+      if (password.equals(storedPassword))
          return c.incrementLoginCount();
       else 
          return 0;
Index: ch12/db/src/java/com/corejsf/UserBean.java
===================================================================
--- ch12/db/src/java/com/corejsf/UserBean.java  (revision 174)
+++ ch12/db/src/java/com/corejsf/UserBean.java  (revision 175)
@@ -75,8 +75,7 @@
       try {
          conn.setAutoCommit(false);
          boolean committed = false;
-         try
-         {
+         try {
             PreparedStatement passwordQuery = conn.prepareStatement(
                "SELECT passwd, logincount from Credentials WHERE username = 
?");
             passwordQuery.setString(1, name);
@@ -85,8 +84,9 @@
 
             if (!result.next()) return;
             String storedPassword = result.getString("passwd");              
  
-            loggedIn = password.equals(storedPassword.trim());
-            count = result.getInt("logincount");
+            loggedIn = password.equals(storedPassword);
+            if (!loggedIn) return;
+            count = result.getInt("logincount") + 1;
             
             PreparedStatement updateCounterStat = conn.prepareStatement(
                "UPDATE Credentials SET logincount = logincount + 1" 
Index: ch12/jpa/src/java/com/corejsf/UserBean.java
===================================================================
--- ch12/jpa/src/java/com/corejsf/UserBean.java (revision 174)
+++ ch12/jpa/src/java/com/corejsf/UserBean.java (revision 175)
@@ -77,7 +77,7 @@
 
             if (result.size() == 1) {
                Credentials c = result.get(0);
-               if (c.getPasswd().trim().equals(password)) {                  
+               if (c.getPasswd().equals(password)) {                  
                   loggedIn = true;
                   count = c.incrementLoginCount();
                }
Index: ch12/sfsb/src/java/com/corejsf/UserBean.java
===================================================================
--- ch12/sfsb/src/java/com/corejsf/UserBean.java        (revision 174)
+++ ch12/sfsb/src/java/com/corejsf/UserBean.java        (revision 175)
@@ -59,7 +59,7 @@
       if (result.size() == 1) {
          Credentials c = result.get(0);
          String storedPassword = c.getPasswd();                
-         loggedIn = password.equals(storedPassword.trim());
+         loggedIn = password.equals(storedPassword);
          count = c.incrementLoginCount();
       }
    }   
Index: build.xml
===================================================================
--- build.xml   (revision 174)
+++ build.xml   (revision 175)
@@ -1,5 +1,4 @@
-<project default="install">
-
+<project default="install"> 
    <property environment="env"/>
    <property file="build.properties"/> 
    <property file="${app}/tomcat.properties"/> 
@@ -66,26 +65,34 @@
       </javac>
    </target>
    
-   <target name="jsf-libs" if="use-jsf-libs">
+   <target name="jsf-libs" if="use-jsf-libs" unless="glassfish">
       <mkdir dir="${builddir}/WEB-INF/lib"/>
       <copy file="${jsf.api.jar}" todir="${builddir}/WEB-INF/lib" 
verbose="true"/>
       <copy file="${jsf.impl.jar}" todir="${builddir}/WEB-INF/lib" 
verbose="true"/>
    </target>
-   <target name="el-libs" if="use-el-libs">
-      <copy file="${el.api.jar}" todir="${builddir}/WEB-INF/lib" 
verbose="true"/>
-      <copy file="${el.impl.jar}" todir="${builddir}/WEB-INF/lib" 
verbose="true"/>
+
+   <target name="el-libs" if="use-el-libs" unless="glassfish">
+      <copy file="${el.api.jar}" todir="${builddir}/WEB-INF/lib" 
+            verbose="true" failonerror="false"/>
+      <copy file="${el.impl.jar}" todir="${builddir}/WEB-INF/lib" 
+            verbose="true" failonerror="false"/>
    </target>
-   <target name="bean-validation-libs" if="use-bean-validation-libs">
-      <copy file="${bean-validation.impl.jar}" 
todir="${builddir}/WEB-INF/lib" verbose="true"/>
-      <copy todir="${builddir}/WEB-INF/lib" verbose="true">
+
+   <target name="bean-validation-libs" if="use-bean-validation-libs" 
unless="glassfish">
+      <copy file="${bean-validation.impl.jar}" 
todir="${builddir}/WEB-INF/lib" 
+            verbose="true" failonerror="false"/>
+      <copy todir="${builddir}/WEB-INF/lib" verbose="true" 
failonerror="false">
         <fileset dir="${bean-validation.lib.dir}">
            <include name="*.jar"/>
         </fileset>
       </copy>
    </target>
-   <target name="cdi-libs" if="use-cdi-libs">
-      <copy file="${cdi.impl.jar}" todir="${builddir}/WEB-INF/lib" 
verbose="true"/>
+
+   <target name="cdi-libs" if="use-cdi-libs" unless="glassfish">
+      <copy file="${cdi.impl.jar}" todir="${builddir}/WEB-INF/lib" 
+            verbose="true" failonerror="false"/>
    </target>
+   
    <target name="tomcat-libs" depends="jsf-libs, el-libs, 
bean-validation-libs, cdi-libs"/>
 
    <target name="war" depends="clean, compile, tomcat-libs"
Index: ch04/select/web/showInformation.xhtml
===================================================================
--- ch04/select/web/showInformation.xhtml       (revision 174)
+++ ch04/select/web/showInformation.xhtml       (revision 175)
@@ -8,7 +8,7 @@
    </h:head>
    <h:body>
       <h:form>
-         <h:outputStylesheet library="css" name="styles.css" target="head"/>
+         <h:outputStylesheet library="css" name="styles.css"/>
          <h:outputFormat value="#{msgs.thankYouLabel}">
             <f:param value="#{form.name}"/>
          </h:outputFormat>
Index: ch04/select/web/index.xhtml
===================================================================
--- ch04/select/web/index.xhtml (revision 174)
+++ ch04/select/web/index.xhtml (revision 175)
@@ -37,7 +37,7 @@
             </h:selectManyListbox>
             #{msgs.educationPrompt}
             <h:selectOneRadio value="#{form.education}" 
-                              selectedClass="selected" 
layout="pageDirection">
+                              layout="pageDirection">
                <f:selectItems value="#{form.educationItems}"/>
             </h:selectOneRadio>
          </h:panelGrid>

Property changes on: ch04/flags
___________________________________________________________________
Modified: svn:ignore
   - .classpath
.project
.settings
.wtpmodules
build
bin

   + .classpath
.project
.settings
.wtpmodules
build
bin
dist


Index: ch13/popup/web/resources/javascript/popup1.js
===================================================================
--- ch13/popup/web/resources/javascript/popup1.js       (revision 174)
+++ ch13/popup/web/resources/javascript/popup1.js       (revision 175)
@@ -3,11 +3,11 @@
    for ( var i = 0; i < country.length; i++) {
       if (country[i].checked) {
          popup = window.open("popup1.xhtml?country="
-              + country[i].value, "popup",
-           "height=300,width=200,toolbar=no,menubar=no,"
+            + country[i].value, "popup",
+         "height=300,width=200,toolbar=no,menubar=no,"
                + "scrollbars=yes");
          popup.openerFormId = source.form.id;
-        popup.focus();
+         popup.focus();
       }
    }
 }
Index: ch13/popup/web/resources/javascript/popup2.js
===================================================================
--- ch13/popup/web/resources/javascript/popup2.js       (revision 174)
+++ ch13/popup/web/resources/javascript/popup2.js       (revision 175)
@@ -1,6 +1,6 @@
 function doPopup(source) {
    country = source.form[source.form.id + ":country"];
-   for ( var i = 0; i < country.length; i++) {
+   for (var i = 0; i < country.length; i++) {
       if (country[i].checked) {
       popup = window.open("", "/faces/popup2.xhtml",
          "height=300,width=200,toolbar=no,menubar=no,scrollbars=yes");
Index: ch13/fileupload/src/java/com/corejsf/UploadFilter.java
===================================================================
--- ch13/fileupload/src/java/com/corejsf/UploadFilter.java      (revision 174)
+++ ch13/fileupload/src/java/com/corejsf/UploadFilter.java      (revision 175)
@@ -13,7 +13,6 @@
 import javax.servlet.ServletException;
 import javax.servlet.ServletRequest;
 import javax.servlet.ServletResponse;
-import javax.servlet.annotation.WebFilter;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletRequestWrapper;
 import org.apache.commons.fileupload.FileItem;
@@ -21,7 +20,6 @@
 import org.apache.commons.fileupload.disk.DiskFileItemFactory;
 import org.apache.commons.fileupload.servlet.ServletFileUpload;
 
-@WebFilter("/")
 public class UploadFilter implements Filter {
    private int sizeThreshold = -1;
    private String repositoryPath;
@@ -108,4 +106,4 @@
          throw servletEx;
       }      
    }   
-}
\ No newline at end of file
+}
Index: ch13/clientside-validator/src/java/com/corejsf/CreditCardValidator.java
===================================================================
--- ch13/clientside-validator/src/java/com/corejsf/CreditCardValidator.java   
  (revision 174)
+++ ch13/clientside-validator/src/java/com/corejsf/CreditCardValidator.java   
  (revision 175)
@@ -22,13 +22,13 @@
 
    public void validate(FacesContext context, UIComponent component, 
          Object value) {
-      if(value == null) return;
+      if (value == null) return;
       String cardNumber;
       if (value instanceof CreditCard)
          cardNumber = value.toString();
       else 
          cardNumber = getDigitsOnly(value.toString());
-      if(!luhnCheck(cardNumber)) {
+      if (!luhnCheck(cardNumber)) {
          FacesMessage message = new FacesMessage(FacesMessage.SEVERITY_ERROR,
             getErrorMessage(value, context), null);
          throw new ValidatorException(message);
@@ -50,7 +50,7 @@
    private static boolean luhnCheck(String cardNumber) {
       int sum = 0;
 
-      for(int i = cardNumber.length() - 1; i >= 0; i -= 2) {
+      for (int i = cardNumber.length() - 1; i >= 0; i -= 2) {
          sum += Integer.parseInt(cardNumber.substring(i, i + 1));
          if(i > 0) {
             int d = 2 * Integer.parseInt(cardNumber.substring(i - 1, i));
@@ -65,7 +65,7 @@
    private static String getDigitsOnly(String s) {
       StringBuilder digitsOnly = new StringBuilder ();
       char c;
-      for(int i = 0; i < s.length (); i++) {
+      for (int i = 0; i < s.length (); i++) {
          c = s.charAt (i);
          if (Character.isDigit(c)) {
             digitsOnly.append(c);
@@ -73,4 +73,4 @@
       }
       return digitsOnly.toString ();
    }
-}
\ No newline at end of file
+}
Index: ch05/planets/web/sections/planetarium/sidebarLeft.xhtml
===================================================================
--- ch05/planets/web/sections/planetarium/sidebarLeft.xhtml     (revision 174)
+++ ch05/planets/web/sections/planetarium/sidebarLeft.xhtml     (revision 175)
@@ -10,13 +10,13 @@
          <h:form>
             <corejsf:planet name="mercury" 
                             image="#{resource['images:Mercury.gif']}"/>
-           <corejsf:planet name="venus" 
+             <corejsf:planet name="venus"
                             image="#{resource['images:Venus.gif']}"/>
-           <corejsf:planet name="earth" 
+             <corejsf:planet name="earth"
                             image="#{resource['images:Earth.gif']}"/>
-           <corejsf:planet name="mars" 
+             <corejsf:planet name="mars"
                             image="#{resource['images:Mars.gif']}"/>
-           <corejsf:planet name="jupiter" 
+             <corejsf:planet name="jupiter"
                             image="#{resource['images:Jupiter.gif']}"/>
             <corejsf:planet name="saturn" 
                             image="#{resource['images:Saturn.gif']}"/>
Index: ch06/database/web/misc/customers.sql
===================================================================
--- ch06/database/web/misc/customers.sql        (revision 174)
+++ ch06/database/web/misc/customers.sql        (revision 175)
@@ -1,10 +1,10 @@
 CREATE TABLE Customers (
    Cust_ID INT,
-   Name CHAR(30),
-   Phone_Number CHAR(15),
-   Street_Address CHAR(30),
-   City CHAR(30),
-   State CHAR(15)
+   Name VARCHAR(30),
+   Phone_Number VARCHAR(15),
+   Street_Address VARCHAR(30),
+   City VARCHAR(30),
+   State VARCHAR(15)
 );
 
 INSERT INTO Customers VALUES (1, 'William Dupont', '(652)488-9931', 
Index: ch06/sorting/src/java/com/corejsf/SortFilterModel.java
===================================================================
--- ch06/sorting/src/java/com/corejsf/SortFilterModel.java      (revision 174)
+++ ch06/sorting/src/java/com/corejsf/SortFilterModel.java      (revision 175)
@@ -41,7 +41,7 @@
    }
 
    public void setRowIndex(int rowIndex) {
-      if(0 <= rowIndex && rowIndex < rows.length) 
+      if (0 <= rowIndex && rowIndex < rows.length) 
          model.setRowIndex(rows[rowIndex]);
       else
          model.setRowIndex(rowIndex);
@@ -70,9 +70,9 @@
    }
    private void initializeRows() {
       int rowCnt = model.getRowCount();
-      if(rowCnt != -1) {
+      if (rowCnt != -1) {
          rows = new Integer[rowCnt];
          for(int i = 0; i < rowCnt; ++i) rows[i] = i;
       }
    }
-}
\ No newline at end of file
+}
Index: ch07/custom-tags/src/java/com/corejsf/CreditCardValidator.java
===================================================================
--- ch07/custom-tags/src/java/com/corejsf/CreditCardValidator.java      
(revision 174)
+++ ch07/custom-tags/src/java/com/corejsf/CreditCardValidator.java      
(revision 175)
@@ -11,7 +11,7 @@
 import javax.faces.validator.Validator;
 import javax.faces.validator.ValidatorException;
 
-@FacesValidator("com.corejsf.CreditCard")
+@FacesValidator("com.corejsf.Card")
 public class CreditCardValidator implements Validator, Serializable {
    private String errorSummary;
    private String errorDetail;
@@ -75,4 +75,4 @@
       }
       return digitsOnly.toString ();
    }
-}
\ No newline at end of file
+}
Index: ch07/custom-tags/src/java/com/corejsf/CreditCardConverter.java
===================================================================
--- ch07/custom-tags/src/java/com/corejsf/CreditCardConverter.java      
(revision 174)
+++ ch07/custom-tags/src/java/com/corejsf/CreditCardConverter.java      
(revision 175)
@@ -7,7 +7,7 @@
 import javax.faces.convert.ConverterException;
 import javax.faces.convert.FacesConverter;
 
-@FacesConverter("com.corejsf.CreditCard")
+@FacesConverter("com.corejsf.Card")
 public class CreditCardConverter implements Converter, Serializable 
 {
    private String separator;
@@ -70,4 +70,4 @@
       result.append(v.substring(start));
       return result.toString();
    }
-}
\ No newline at end of file
+}
Index: ch07/custom-tags/web/WEB-INF/corejsf.taglib.xml
===================================================================
--- ch07/custom-tags/web/WEB-INF/corejsf.taglib.xml     (revision 174)
+++ ch07/custom-tags/web/WEB-INF/corejsf.taglib.xml     (revision 175)
@@ -8,13 +8,13 @@
    <tag>   
       <tag-name>convertCreditCard</tag-name>
       <converter>
-         <converter-id>com.corejsf.CreditCard</converter-id>
+         <converter-id>com.corejsf.Card</converter-id>
       </converter>
    </tag>
    <tag>   
       <tag-name>validateCreditCard</tag-name>
       <validator>
-         <validator-id>com.corejsf.CreditCard</validator-id>
+         <validator-id>com.corejsf.Card</validator-id>
       </validator>
    </tag>
-</facelet-taglib>
\ No newline at end of file
+</facelet-taglib>
Index: ch07/validator2/web/result.xhtml
===================================================================
--- ch07/validator2/web/result.xhtml    (revision 174)
+++ ch07/validator2/web/result.xhtml    (revision 175)
@@ -19,7 +19,7 @@
 
             #{msgs.creditCard}
             <h:outputText value="#{payment.card}"
-                          converter="com.corejsf.CreditCard"/>
+                          converter="com.corejsf.Card"/>
 
             #{msgs.expirationDate}
             <h:outputText value="#{payment.date}">

Property changes on: ch07/validator3
___________________________________________________________________
Modified: svn:ignore
   - .settings
.classpath
.project

   + .settings
.classpath
.project
build


Index: ch08/rushmore/src/java/com/corejsf/messages.properties
===================================================================
--- ch08/rushmore/src/java/com/corejsf/messages.properties      (revision 174)
+++ ch08/rushmore/src/java/com/corejsf/messages.properties      (revision 175)
@@ -30,5 +30,5 @@
  1743 in Virginia. Jefferson was tall and awkward, and was not known as a \
  great public speaker. Jefferson became minister to France in 1785, after \
  Benjamin Franklin held that post. In 1796, Jefferson was a reluctant \
- presidential candiate, and missed winning the election by a mere three 
votes. \
- He served as president from 1801-1809.
\ No newline at end of file
+ presidential candidate, and missed winning the election by a mere three 
votes. \
+ He served as president from 1801-1809.
Index: ch08/tabbedpane/src/java/com/corejsf/messages.properties
===================================================================
--- ch08/tabbedpane/src/java/com/corejsf/messages.properties    (revision 174)
+++ ch08/tabbedpane/src/java/com/corejsf/messages.properties    (revision 175)
@@ -25,5 +25,5 @@
  1743 in Virginia. Jefferson was tall and awkward, and was not known as a \
  great public speaker. Jefferson became minister to France in 1785, after \
  Benjamin Franklin held that post. In 1796, Jefferson was a reluctant \
- presidential candiate, and missed winning the election by a mere three 
votes. \
- He served as president from 1801-1809.
\ No newline at end of file
+ presidential candidate, and missed winning the election by a mere three 
votes. \
+ He served as president from 1801-1809.
Index: ch08/system-events/src/java/com/corejsf/UserBean.java
===================================================================
--- ch08/system-events/src/java/com/corejsf/UserBean.java       (revision 174)
+++ ch08/system-events/src/java/com/corejsf/UserBean.java       (revision 175)
@@ -1,5 +1,7 @@
 package com.corejsf;
 
+import java.io.Serializable
+
 import javax.faces.application.ConfigurableNavigationHandler;
 import javax.inject.Named; 
    // or import javax.faces.bean.ManagedBean;
@@ -11,7 +13,7 @@
 
 @Named("user") // or @ManagedBean(name="user")
 @SessionScoped
-public class UserBean {
+public class UserBean implements Serializable {
    private String name = "";
    private String password;
    private boolean loggedIn;
@@ -42,4 +44,4 @@
          handler.performNavigation("login");
       }
    }   
-}
\ No newline at end of file
+}
Index: ch09/composite-login/web/register.xhtml
===================================================================
--- ch09/composite-login/web/register.xhtml     (revision 174)
+++ ch09/composite-login/web/register.xhtml     (revision 175)
@@ -1,7 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd";>
 <html xmlns="http://www.w3.org/1999/xhtml";
-       xmlns:h="http://java.sun.com/jsf/html";>
+      xmlns:h="http://java.sun.com/jsf/html";>
    <h:head>
       <title>#{msgs.registerHeading}</title>
       <h:outputStylesheet library="css" name="styles.css" />
@@ -24,4 +25,4 @@
          </p>
       </h:form>
    </h:body>
-</html>
\ No newline at end of file
+</html>
Index: ch09/composite-login/web/index.xhtml
===================================================================
--- ch09/composite-login/web/index.xhtml        (revision 174)
+++ ch09/composite-login/web/index.xhtml        (revision 175)
@@ -1,5 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
-   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd";>
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd";>
 <html xmlns="http://www.w3.org/1999/xhtml";
       xmlns:f="http://java.sun.com/jsf/core";
       xmlns:h="http://java.sun.com/jsf/html";
@@ -35,4 +36,4 @@
       </util:login>
       <ui:debug/>
    </h:body>
-</html>
\ No newline at end of file
+</html>
Index: ch09/composite-login/web/welcome.xhtml
===================================================================
--- ch09/composite-login/web/welcome.xhtml      (revision 174)
+++ ch09/composite-login/web/welcome.xhtml      (revision 175)
@@ -1,9 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd";>
 <html xmlns="http://www.w3.org/1999/xhtml";
-       xmlns:f="http://java.sun.com/jsf/core";
-       xmlns:h="http://java.sun.com/jsf/html";
-   xmlns:util="http://java.sun.com/jsf/composite/util";>
+      xmlns:f="http://java.sun.com/jsf/core";
+      xmlns:h="http://java.sun.com/jsf/html";
+      xmlns:util="http://java.sun.com/jsf/composite/util";>
    <h:head>
       <title>#{msgs.welcomeHeading}</title>
       <h:outputStylesheet library="css" name="styles.css" />
@@ -14,4 +15,4 @@
      <util:icon image="#{resource['images:back.png']}"
                actionMethod="#{user.logout}" style="border: thin solid 
lightBlue"/>
    </h:body>
-</html>
\ No newline at end of file
+</html>
Index: ch09/composite-login/web/resources/util/icon.xhtml
===================================================================
--- ch09/composite-login/web/resources/util/icon.xhtml  (revision 174)
+++ ch09/composite-login/web/resources/util/icon.xhtml  (revision 175)
@@ -1,9 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
-        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd";>
-
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd";>
 <html xmlns="http://www.w3.org/1999/xhtml";
-   xmlns:h="http://java.sun.com/jsf/html";
-   xmlns:composite="http://java.sun.com/jsf/composite";>
+      xmlns:h="http://java.sun.com/jsf/html";
+      xmlns:composite="http://java.sun.com/jsf/composite";>
 
    <composite:interface>
       <composite:attribute name="image" required="true" />
@@ -25,4 +25,4 @@
           </h:form>
    </composite:implementation>
    
-</html>
\ No newline at end of file
+</html>
Index: ch09/composite-login/web/resources/util/login.xhtml
===================================================================
--- ch09/composite-login/web/resources/util/login.xhtml (revision 174)
+++ ch09/composite-login/web/resources/util/login.xhtml (revision 175)
@@ -1,6 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
-   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd";>
-
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd";>
 <html xmlns="http://www.w3.org/1999/xhtml";
       xmlns:h="http://java.sun.com/jsf/html";
       xmlns:composite="http://java.sun.com/jsf/composite";>
@@ -62,4 +62,4 @@
 
       <p>#{cc.resourceBundleMap.footer}</p>
    </composite:implementation>
-</html>
\ No newline at end of file
+</html>
Index: ch09/simple-composite/web/resources/util/debug.xhtml
===================================================================
--- ch09/simple-composite/web/resources/util/debug.xhtml        (revision 174)
+++ ch09/simple-composite/web/resources/util/debug.xhtml        (revision 175)
@@ -1,10 +1,9 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
-        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd";>
-
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd";>
 <html xmlns="http://www.w3.org/1999/xhtml";
-   xmlns:composite="http://java.sun.com/jsf/composite";>
-
+      xmlns:composite="http://java.sun.com/jsf/composite";>
+  
    <composite:interface/>
  
    <composite:implementation>
Index: ch09/composite-date/src/java/util/date.java
===================================================================
--- ch09/composite-date/src/java/util/date.java (revision 174)
+++ ch09/composite-date/src/java/util/date.java (revision 175)
@@ -41,9 +41,9 @@
       UIInput dayComponent = (UIInput) findComponent("day");
       UIInput monthComponent = (UIInput) findComponent("month");
       UIInput yearComponent = (UIInput) findComponent("year");
-      int day = (Integer) dayComponent.getValue();
-      int month = (Integer) monthComponent.getValue();
-      int year = (Integer) yearComponent.getValue();
+      int day = Integer.parseInt((String) dayComponent.getSubmittedValue()); 
+      int month = Integer.parseInt((String) 
monthComponent.getSubmittedValue()); 
+      int year = Integer.parseInt((String) 
yearComponent.getSubmittedValue()); 
       if (isValidDate(day, month, year)) 
          return new GregorianCalendar(year, month - 1, day).getTime();
       else {
Index: ch09/composite-date/web/resources/util/date.xhtml
===================================================================
--- ch09/composite-date/web/resources/util/date.xhtml   (revision 174)
+++ ch09/composite-date/web/resources/util/date.xhtml   (revision 175)
@@ -1,11 +1,10 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
-        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd";>
-
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd";>
 <html xmlns="http://www.w3.org/1999/xhtml";
-   xmlns:h="http://java.sun.com/jsf/html";
-   xmlns:composite="http://java.sun.com/jsf/composite";
-   xmlns:f="http://java.sun.com/jsf/core";>
+      xmlns:h="http://java.sun.com/jsf/html";
+      xmlns:composite="http://java.sun.com/jsf/composite";
+      xmlns:f="http://java.sun.com/jsf/core";>
 
    <composite:interface>
       <composite:attribute name="value" type="java.util.Date"/>

Property changes on: ch09/composite-date
___________________________________________________________________
Added: svn:ignore
   + build


Index: build.properties.glassfish
===================================================================
--- build.properties.glassfish  (revision 174)
+++ build.properties.glassfish  (revision 175)
@@ -1,4 +1,5 @@
 appserver.dir=${env.GLASSFISH_HOME}
+glassfish=true
 jsf.api.jar=${appserver.dir}/modules/jsf-api.jar
 servlet.api.jar=${appserver.dir}/modules/javax.servlet.jar
 el.api.jar=${appserver.dir}/modules/javax.servlet.jsp.jar
@@ -8,5 +9,5 @@
 bean-validation.api.jar=${appserver.dir}/modules/bean-validator.jar
 cdi.api.jar=${appserver.dir}/modules/weld-osgi-bundle.jar
 mail.api.jar=${appserver.dir}/modules/mail.jar
-deploy.dir=/home/domains/domain1/autodeploy
+deploy.dir=${appserver.dir}/domains/domain1/autodeploy
 





[corejsf~subversion:175] Processed submitted bug reports

cayhorstmann 06/27/2011
  • Mysql
  • Glassfish
  • Jruby
  • Rails
  • Nblogo
Terms of Use; Privacy Policy;
© 2010, Oracle Corporation and/or its affiliates
(revision 20120518.3c65429)
 
 
Close
loading
Please Confirm
Close