DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT <http://nagoya.apache.org/bugzilla/show_bug.cgi?id=5865>. ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND INSERTED IN THE BUG DATABASE.
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=5865 WriteTag tests for null format string but PropertyMessageResources always returns String. Summary: WriteTag tests for null format string but PropertyMessageResources always returns String. Product: Struts Version: Nightly Build Platform: Other OS/Version: Other Status: NEW Severity: Normal Priority: Other Component: Custom Tags AssignedTo: [EMAIL PROTECTED] ReportedBy: [EMAIL PROTECTED] Recent changes in versions 1.16 and 1.15 of WriteTag are causing code that worked fine with 1.0 to fail. This bug may be related in some way to: http://nagoya.apache.org/bugzilla/show_bug.cgi?id=513 In the WriteTag a format String is retrieved for numeric values using PropertyMessageResources.getMessage. WriteTag tests for a null return value. In this case the PropertyMessageResources.getMessage will never return a null because the returnsNull attribute of PropertyMessageResources defaults to false. The default is inherited from the MessageResources Class constructor. When returnsNull is false, the lookup key is returned as the resource surrounded by three question marks. As a workaround I added a test in WriteTag to test for null or a string that startsWith("???"). That fixed our immediate problem. It seems to me that overloading the return value, which should be null, with a message is dangerous. But since this behavior is explicitly requested when nullReturn is false, I guess it is OK. In WriteTag.formatValue I changed: if( formatStr==null) To: if( formatStr==null || formatStr.startsWith("???")) This fixed the problem I was experiencing, it seems that calling the constructor with true so that a null is returned might be a better fix. -- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>