<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=iso-2022-jp">
<META content="MSHTML 6.00.2900.3354" name=GENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=#ffffff>
<DIV><FONT face="MS UI Gothic" size=2>$B=i$a$^$7$F!">eLn$H?=$7$^$9!#(B</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face="MS UI Gothic" 
size=2>$B8=:_!"(BforEach+$B%@%$%J%_%C%/%P%j%G!<%?$G2<5-$N$h$&$J%(%i!<$,H/@8$7!":$$C$F$$$^$9!#(B</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face="MS UI Gothic" size=2>$B4D6-(B<BR>seasar 2.4.24<BR>teeda 
1.0.13</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face="MS UI Gothic" 
size=2>$B%9%?%C%/%H%l!<%9(B<BR>java.util.ConcurrentModificationException<BR>java.util.LinkedList$ListItr#checkForComodification 
(null)<BR>java.util.LinkedList$ListItr#next 
(null)<BR>javax.faces.internal.ValidatorChain#validate 
(ValidatorChain.java#56)<BR>edi.validator.MyCustomStringValidator#validate 
(MyCustomStringValidator.java#29)<BR>javax.faces.component.UIInput#validateForExtension 
(UIInput.java#394)<BR>javax.faces.component.UIInput#validateValue 
(UIInput.java#374)<BR>javax.faces.component.UIInput#validate 
(UIInput.java#279)<BR>javax.faces.component.UIInput#executeValidate 
(UIInput.java#489)<BR>javax.faces.component.UIInput#processValidators 
(UIInput.java#201)<BR>javax.faces.component.UIComponentBase#processValidators 
(UIComponentBase.java#434)<BR>org.seasar.teeda.extension.component.TForEach#processValidatorsAllRows 
(TForEach.java#241)<BR>org.seasar.teeda.extension.component.TForEach#processValidators 
(TForEach.java#228)<BR>javax.faces.component.ComponentUtil_#processAppropriatePhaseAction 
(ComponentUtil_.java#49)<BR>javax.faces.component.UIForm#processAppropriateAction 
(UIForm.java#85) javax.faces.component.UIForm#processValidators 
(UIForm.java#73)<BR>javax.faces.component.UIComponentBase#processValidators 
(UIComponentBase.java#434)<BR>javax.faces.component.UIComponentBase#processValidators 
(UIComponentBase.java#434)<BR>javax.faces.component.UIComponentBase#processValidators 
(UIComponentBase.java#434)<BR>javax.faces.component.UIViewRoot#processValidators 
(UIViewRoot.java#104) 
org.seasar.teeda.core.lifecycle.impl.ProcessValidationsPhase#executePhase 
(ProcessValidationsPhase.java#30)<BR>org.seasar.teeda.core.lifecycle.AbstractPhase#execute 
(AbstractPhase.java#57)<BR>org.seasar.teeda.core.lifecycle.LifecycleImpl#execute 
(LifecycleImpl.java#86)</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face="MS UI Gothic" size=2>$BH/@82U=j(B?<BR><A 
href="http://teeda.seasar.org/1.0/teeda-core/en/cobertura/javax.faces.internal.ValidatorChain.html">http://teeda.seasar.org/1.0/teeda-core/en/cobertura/javax.faces.internal.ValidatorChain.html</A></FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face="MS UI Gothic" 
size=2>$B%G!<%?$N7o?t$O(B1$B7o!A(B100$B7o$H$J$j$^$9!#:F8=@-$O8+$D$+$C$F$*$j$^$;$s!#(B<BR>$B$"$kFCDj$N2hLL$N$_H/@8$7$^$9$,!"$=$N2hLL$O%f!<%6$NA`:n$,B?$$$N$G!"B>$N2hLL$G$bH/@8$9$k$+$b$7$l$^$;$s!#(B<BR>$B8=:_$N=j!"<B9T4D6-$,%^%k%A(BCPU$B$@$HH/@8$7$F!"%7%s%0%k(BCPU$B$@$HH/@8$7$F$$$^$;$s!#(B</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face="MS UI Gothic" 
size=2>$B$^$?!"(B5$B9TL\$K$"$k(B"MyCustomStringValidator.java"$B$O<+:n$N%P%j%G!<%?$G!"(B2$B$D$N<+:n%P%j%G!<%?$r(BValidatorChain$B$7$F$$$^$9!#(B<BR>$B%Z!<%8%/%i%9$NJQ?t$K%"%N%F!<%7%g%s$G;XDj$7$F$b%(%i!<$OH/@8$7$^$;$s$7!"F1MM$KB>2hLL$G%@%$%J%_%C%/%P%j%G!<%?$NCf$G;HMQ$7$F$b%(%i!<$O5/$-$^$;$s!#(B<BR>ConcurrentModificationException$B$NH/@8860x$K$J$k!"%3%l%/%7%g%s$N%k!<%W!&:o=|Ey$b!"A4$F$N<+:n%P%j%G!<%?$NCf$G9T$C$F$*$j$^$;$s!#(B</FONT></DIV>
<DIV><FONT face="MS UI Gothic" size=2></FONT>&nbsp;</DIV>
<DIV><FONT face="MS UI Gothic" 
size=2>$B$3$A$i$,(BMyCustomStringValidator$B%/%i%9$G$9!#%;%C%?!<%2%C%?!<$O>JN,$7$F:\$;$F$$$^$9!#(B</FONT></DIV>
<DIV><FONT face="MS UI Gothic" size=2></FONT>&nbsp;</DIV>
<DIV><FONT face="MS UI Gothic" size=2>public class MyCustomStringValidator 
extends ValidatorChain {<BR>&nbsp;<BR>&nbsp;private String target; 
<BR>&nbsp;private int maximum =-1; <BR>&nbsp;private String pattern = 
"^[^,\"\'$B!F!G!H!I(B]*$"; <BR>&nbsp;private String patternMsg = 
"validate.CustomProhibitionValidator";;<BR>&nbsp;<BR>&nbsp;public void 
validate(FacesContext context, UIComponent component, Object 
value)<BR>&nbsp;&nbsp;&nbsp;throws FacesException 
{<BR>&nbsp;&nbsp;MyCustomProhibitionValidator prohibitionValidator = new 
MyCustomProhibitionValidator();<BR>&nbsp;&nbsp;MyCustomMaxByteLengthValidator 
maxByteLengthValidator = new 
MyCustomMaxByteLengthValidator();<BR>&nbsp;&nbsp;prohibitionValidator.setMessageId(getPatternMsg());<BR>&nbsp;&nbsp;prohibitionValidator.setTarget(getTarget());<BR>&nbsp;&nbsp;prohibitionValidator.setPattern(getPattern());<BR>&nbsp;&nbsp;maxByteLengthValidator.setMaximum(getMaximum());<BR>&nbsp;&nbsp;maxByteLengthValidator.setTarget(getTarget());<BR>&nbsp;&nbsp;add(prohibitionValidator);<BR>&nbsp;&nbsp;add(maxByteLengthValidator);<BR>&nbsp;&nbsp;super.validate(context, 
component, value);<BR>&nbsp;}<BR>}</FONT></DIV>
<DIV><FONT face="MS UI Gothic" size=2></FONT>&nbsp;</DIV>
<DIV><FONT face="MS UI Gothic" 
size=2>$B>pJsITB-$+$bCN$l$^$;$s$,!"$h$m$7$/$*4j$$CW$7$^$9!#(B<BR></FONT></DIV></BODY></HTML>