Ошибка в настройке обработчика пакета ресурсов jsf - PullRequest
0 голосов
/ 10 марта 2019

В проекте я настрою обработчик пакета ресурсов jsf.согласно этому сообщению:
i18n с файлами свойств в кодировке UTF-8 в приложении JSF 2.0

я добавляю следующие строки в мои лица-config:

<application>
    <locale-config>
        <default-locale>fa</default-locale>
        <supported-locale>en</supported-locale>
        <supported-locale>fa</supported-locale>
    </locale-config>
    <message-bundle>ApplicationResources</message-bundle>
    <resource-bundle>
        <base-name>org.apache.myfaces.bundle.CustomJsfBundleHandler</base-name>
        <var>messages</var>
    </resource-bundle>
</application>

И создать обработчик:

package org.apache.myfaces.bundle;

import java.io.IOException;
import java.io.InputStream;
import java.io.Reader;
import java.util.PropertyResourceBundle;

public class CustomJsfBundleHandler extends PropertyResourceBundle {

    public CustomJsfBundleHandler(InputStream stream) throws IOException {
        super(stream);
    }

    public CustomJsfBundleHandler(Reader reader) throws IOException {
        super(reader);
    }

    @Override
    public Object handleGetObject(String key) {
       // do some customization
       return super.handleGetObject(key);
    }
}  

Но когда я перехожу на мою страницу, я получаю следующее исключение:

java.util.MissingResourceException: Не могу найти пакет для базового имени org.apache.myfaces.bundle.CustomJsfBundleHandler, локаль en в java.util.ResourceBundle.throwMissingResourceException (ResourceBundle.java:1564) в java.util.ResourceBundle.getBundleImpl (ResourceBundle.javaesutil) (java.util) (13)ResourceBundle.java:1082) в org.apache.myfaces.application.ApplicationImpl.getResourceBundle (ApplicationImpl.java:459) в org.apache.myfaces.application.ApplicationImpl.getResourceBundle (ApplicationImpl.java:435) в org.ap.el.unified.resolver.ResourceBundleResolver.getResourceBundle (ResourceBundleResolver.java:222) в org.apache.myfaces.el.unified.resolver.ResourceBundleResolver.getValue (ResourceBundleResolver.java:136)

У вас есть идеи?

1 Ответ

0 голосов
/ 10 марта 2019

Из того, что я прочитал, ваш CustomJsfBundleHandler пока что мало что делает.Убедитесь, что у вас есть папка messages.properties в org/apache/myfaces/bundle/CustomJsfBundleHandler в папке src/main/resources

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...