JavaServer Faces by Hans Bergsten The following errata were *corrected* in the 8/04 reprint: Here's a key to the markup: [page-number]: serious technical mistake {page-number}: minor technical mistake : important language/formatting problem (page-number): language change or minor formatting problem [129] Example 7-3; "detailedMsgPattern" NOW READS "detailMsgPattern" in this statement: String detailMsg = MessageFormat.format(detailMsgPattern, params); [146] Example 8.3; import javax.faces.application.Message; NOW READS: import javax.faces.application.FacesMessage; also, the line: import javax.faces.application.MessageResources; HAS BEEN DELETED. [496] writeText() , the description NOW READS: public abstract void writeText(Object text, java.lang.String property) throws java.io.IOException [518] ValueChangeListener description "This interface is implemented by all classes interested in handling ActionEvent events" NOW READS: "This interface is implemented by all classes interested in handling ValueChangeEvent events" [518] ValueChangeListener method signature and description NOW READS: public void processValueChange(javax.faces.event.ValueChangeEvent event) Processes the event. [525] getMaximum() and getMinimum() parameter types public int getMaximum() NOW READS: public long getMaximum() and public int getMinimum() NOW READS: public long getMinimum() [525] setMaximum() and setMinimum() return types public void setMaximum(int maximum) NOW READS: public void setMaximum(long maximum) and public void setMinimum(int minimum) NOW READS: public void setMinimum(long minimum)