que jfc consiste java jsf

en que consiste el jfc de java



No se puede encontrar el paquete para nombre base/Bundle, locale en_US (8)

Estoy usando una biblioteca que tiene una dependencia en JSF.

Cuando trato de ejecutar mi proyecto, muestra el siguiente masaje de excepción.

java.util.MissingResourceException: Can''t find bundle for base name /Bundle, locale en_US at java.util.ResourceBundle.throwMissingResourceException(ResourceBundle.java:1427) at java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1250) at java.util.ResourceBundle.getBundle(ResourceBundle.java:705)

Algunas ideas ?


maven-tomcat-plugin

Si inicia el proyecto utilizando maven-tomcat-plugin / maven-tomcat7-plugin , debe colocar Bundle.properties , o incluso Resource.properties en src/main/webapp/WEB-INF/classes . No preguntes por qué, es porque el plugin simula un gato.


El problema debe ser que el atributo resource-bunde> base-name en el archivo faces-config.xml tiene una ruta diferente a sus propiedades. Esto me sucedió en el primer tutorial de Java EE, di un nombre de paquete diferente en la creación del proyecto y luego Glassfish no pudo encontrar la carpeta de propiedades que está en "firstcup.web".

Espero que ayude.


En mi caso, el problema fue utilizar la etiqueta de idioma " Locale.forLanguageTag(..) " en Locale.forLanguageTag(..) lugar de "en-US": ¡use un guión en lugar de subrayado!

También use Locale.forLanguageTag("en-US") lugar de new Locale("en_US") o new Locale("en_US") para definir un idioma ("en") con una región ("EE. UU."), Pero new Locale("en") funciona.


La excepción es que se Bundle_en_US.properties que un Bundle_en_US.properties , o Bundle_en.properties , o al menos Bundle.properties archivo Bundle.properties se espere en la raíz del classpath, pero en realidad no existe ninguno.

Asegúrese de que al menos uno de los archivos mencionados esté presente en la raíz del classpath. O bien, asegúrese de proporcionar el nombre del paquete adecuado. Por ejemplo, si los archivos del paquete se han colocado realmente en el paquete com.example.i18n , debe pasar com.example.i18n.Bundle como nombre del Bundle lugar de Bundle .

En caso de que esté utilizando Eclipse "Dynamic Web Project", la raíz de classpath está representada por la carpeta src , donde están todos sus paquetes Java. En caso de que esté utilizando un proyecto Maven, la raíz classpath para los archivos de recursos está representada por la carpeta src/main/resources .

Ver también:


Si está ejecutando el archivo .java en Eclipse, debe agregar la ruta del recurso en la ruta de compilación. después de eso no verá este error


Tuve el mismo problema al usar Netbeans. Fui a la carpeta del proyecto y copié el archivo de propiedades. Creo que hizo clic en "compilar" y luego "clases". Agregué el archivo de propiedades en esa carpeta. Eso resolvió mi problema.


Tuve el mismo problema, y ​​la solución de Balus lo solucionó.

Para el registro:

WEB-INF / faces-config es

<?xml version="1.0" encoding="UTF-8"?> <faces-config xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd" version="2.0"> <application> <locale-config> <default-locale>en</default-locale> </locale-config> <message-bundle> Message </message-bundle> </application> </faces-config>

Y tenía Message.properties en WebContent / Resources (después del tutorial de mkyong)

la molesta excepción apareció incluso cuando cambié el nombre del paquete a "Message_en_us" y "Message_en". Moviéndolo a src / funcionó.

Si alguien publica la pieza faltante para hacer que los paquetes funcionen con recursos, sería algo hermoso.


Uso Eclipse (sin Maven) así que .properties archivo .properties en la carpeta src que también contiene el código fuente de Java, para tener el archivo .properties en la carpeta de classes después de compilar el proyecto. Funciona bien. Eche un vistazo a esta publicación: https://www.mkyong.com/jsf2/cant-find-bundle-for-base-name-xxx-locale-en_us/

Espero que esto te ayude