[jira] [Resolved] (VELTOOLS-167) Dealing with missing keys in resource bundle

"Claude Brisson (Jira)" <[email protected]> Thu, 18 Jun 2026 09:22:00 +0000 (UTC)
Newsgroups gmane.comp.jakarta.velocity.devel
Message-ID <[email protected]>
     [ https://issues.apache.org/jira/browse/VELTOOLS-167?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Claude Brisson resolved VELTOOLS-167.
-------------------------------------
    Fix Version/s: 4.0
         Assignee: Claude Brisson
       Resolution: Fixed

Left as it is in 3.x branch, since it does change the behavior of the ResoruceTool.

> Dealing with missing keys in resource bundle
> --------------------------------------------
>
>                 Key: VELTOOLS-167
>                 URL: https://issues.apache.org/jira/browse/VELTOOLS-167
>             Project: Velocity Tools
>          Issue Type: Bug
>          Components: GenericTools
>    Affects Versions: 2.0
>            Reporter: Mohan Palisetti
>            Assignee: Claude Brisson
>            Priority: Minor
>             Fix For: 4.0
>
>
> No exception is thrown when doing a template merge with a non-existent key from the resource bundle. 
> eg. if the template has ${resource.NON_EXISTENT_KEY}, then we end up with the string {noformat}???NON_EXISTENT_KEY???{noformat}
> This has to do with the org.apache.velocity.tools.generic.ResourceTool.Key.toString implementation as shown below:
> {code:java}
>         public String toString()
>         {
>             if (this.key == null)
>             {
>                 return "";
>             }
>             if (!getExists())
>             {
>                 return "???"+this.key+"???";
>             }
>             return ResourceTool.this.render(this.rawValue, this.args);
>         }
> {code}
> Any reason why we can't force a FormatException when running in strict mode?



--
This message was sent by Atlassian Jira
(v8.20.10#820010)