Article - CS424340

Custom table builder fails to render table due to MissingResourceException: "Can't find bundle for base name <Class Name>, locale <Locale>" in Windchill PDMLink

Modified: 06-Aug-2024   


Applies To

  • Windchill PDMLink 12.0 to 13.0

Description

  • Custom table builder fails to render table due to MissingResourceException:
ERROR com.ptc.mvc.controllers.ExceptionController - message : Can't find bundle for base name ext.customization.jca.MyCustomRB, locale en_US
error:-------------java.util.MissingResourceException: Can't find bundle for base name ext.customization.jca.MyCustomRB, locale en_US java.util.MissingResourceException: Can't find bundle for base name ext.customization.jca.MyCustomRB, locale en_US
    at java.base/java.util.ResourceBundle.throwMissingResourceException(ResourceBundle.java:2055)
    at java.base/java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1689)
    at java.base/java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1593)
    at java.base/java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1556)
    at java.base/java.util.ResourceBundle.getBundle(ResourceBundle.java:932)
    at wt.util.WTMessage.getLocalizedMessage(WTMessage.java:479)
    at wt.util.WTMessage.getLocalizedMessage(WTMessage.java:412)
    at ext.customization.mvc.builders.MyCustomTableBuilder.buildComponentConfig(MyCustomTableBuilder.java:143)
  • The resource bundle class is successfully compiled in the correct location
  • Calling WTMessage.getLocalizedMessage directly (e.g. from a test class's main(String[] args) method) shows additional information about the error:
Exception in thread "main" java.util.MissingResourceException: Can't find bundle for base name ext.customization.jca.MyCustomRB, locale en_US
    at java.base/java.util.ResourceBundle.throwMissingResourceException(ResourceBundle.java:2055)
    at java.base/java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1689)
    at java.base/java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1593)
    at java.base/java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1556)
    at java.base/java.util.ResourceBundle.getBundle(ResourceBundle.java:932)
    at wt.util.WTMessage.getLocalizedMessage(WTMessage.java:479)
    at wt.util.WTMessage.getLocalizedMessage(WTMessage.java:412)
    at ext.jubr.ResourceBundleTest.main(ResourceBundleTest.java:12)
Caused by: java.lang.reflect.InvocationTargetException
    at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
    at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490)
    at java.base/java.util.ResourceBundle$Control.newBundle(ResourceBundle.java:3196)
    at java.base/java.util.ResourceBundle.loadBundle(ResourceBundle.java:1994)
    at java.base/java.util.ResourceBundle.findBundle(ResourceBundle.java:1776)
    at java.base/java.util.ResourceBundle.findBundle(ResourceBundle.java:1728)
    at java.base/java.util.ResourceBundle.findBundle(ResourceBundle.java:1728)
    at java.base/java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1662)
    ... 6 more
Caused by: java.lang.RuntimeException: Duplicate key "MyCustomTable.editItemsWizard.icon"
    at wt.util.resource.WTListResourceBundle.<init>(WTListResourceBundle.java:247)
    at ext.customization.jca.MyCustomRB.<init>(MyCustomRB.java:8)
    ... 16 more
This is a printer-friendly version of Article 424340 and may be out of date. For the latest version click CS424340