代码之家  ›  专栏  ›  技术社区  ›  Bernardo Araujo

在JSF消息上“找不到基名称的捆绑包”。属性

  •  0
  • Bernardo Araujo  · 技术社区  · 7 年前

    this image 但是我不明白为什么faces配置无法访问消息。

    下面是“faces config.xml”上引用“Messages.properties”文件的一段代码:

        <application>
          <message-bundle>br.com.teste.primeiraaplicacaojsf.web.i18n.Messages</message-bundle>
          <locale-config>
            <default-locale>pt_BR</default-locale>
          </locale-config>
        </application>
    

    以下是在浏览器上生成的错误消息:

    HTTP Status 500 - Can't find bundle for base name br.com.teste.primeiraaplicacaojsf.web.i18n.Messages, locale pt_BR
    
    type Exception report
    
    message Can't find bundle for base name br.com.teste.primeiraaplicacaojsf.web.i18n.Messages, locale pt_BR
    
    description The server encountered an internal error that prevented it from fulfilling this request.
    
    exception
    
    javax.servlet.ServletException: Can't find bundle for base name br.com.teste.primeiraaplicacaojsf.web.i18n.Messages, locale pt_BR
        javax.faces.webapp.FacesServlet.service(FacesServlet.java:671)
        org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)
    root cause
    
    java.util.MissingResourceException: Can't find bundle for base name br.com.teste.primeiraaplicacaojsf.web.i18n.Messages, locale pt_BR
        java.util.ResourceBundle.throwMissingResourceException(ResourceBundle.java:1564)
        java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1387)
        java.util.ResourceBundle.getBundle(ResourceBundle.java:1082)
        javax.faces.component.MessageFactory.getMessage(MessageFactory.java:161)
        javax.faces.component.MessageFactory.getMessage(MessageFactory.java:251)
        javax.faces.component.UIInput.validateValue(UIInput.java:1149)
        javax.faces.component.UIInput.validate(UIInput.java:982)
        javax.faces.component.UIInput.executeValidate(UIInput.java:1248)
        javax.faces.component.UIInput.processValidators(UIInput.java:712)
        javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:1261)
        javax.faces.component.UIForm.processValidators(UIForm.java:253)
        javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:1261)
        javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:1261)
        javax.faces.component.UIViewRoot.processValidators(UIViewRoot.java:1195)
        com.sun.faces.lifecycle.ProcessValidationsPhase.execute(ProcessValidationsPhase.java:76)
        com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
        com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:198)
        javax.faces.webapp.FacesServlet.service(FacesServlet.java:658)
        org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)
    
    1 回复  |  直到 7 年前
        1
  •  1
  •   Bernardo Araujo    7 年前

    出于某种原因,IntelliJ project explorer正在显示“Messages.properties”文件的路径,就好像它是一系列文件夹一样,而在窗帘后面,它只创建了一个文件夹,整个路径就是它的名称。 通过重新设计resources文件夹中的文件夹结构,解决了该问题