<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=iso-8859-1">
<META content="MSHTML 6.00.6002.18494" name=GENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=#ffffff>
<DIV><FONT face=Arial size=2>This does the wrong thing when str = 
EMPTY_STRING</FONT></DIV>
<DIV><FONT face=Arial size=2>(dubious: should be str.equals("") since new 
String() != "")</FONT></DIV>
<DIV><FONT face=Arial size=2>but the real bug is that value=str; clears the old 
value instead of appending...</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>    public void append(String str) 
{<BR>        String reason;</FONT></DIV>
<DIV> </DIV>
<DIV><FONT face=Arial size=2>        if (str 
== null) {<BR>            
return;<BR>        
}<BR>        if ((reason = 
Verifier.checkCharacterData(str)) != null) 
{<BR>            throw 
new IllegalDataException(str, "character content", 
reason);<BR>        }</FONT></DIV>
<DIV> </DIV>
<DIV><FONT face=Arial size=2>        if (str 
== 
EMPTY_STRING)<BR>             
value = str;<BR>        else value += 
str;<BR>    }</FONT></DIV></BODY></HTML>