2016-07-22 7 views
1

Ich versuche, eine JSF-Anwendung auf Wildfly Schwarm zu laufen, aber ich habe einige Probleme mit der Ressourcenverwaltung. Ihr kurzes Beispiel auf their github Seite heißt es:Load JSF Saiten in Wildfly Schwarm

Sie müssen die xhtml-Dateien Shrinkwrap in eine Art und Weise, wie deployment.addAsWebResource(), da JSF ist nicht statisch hinzuzufügen.

Ich habe es nicht geschafft, meine Bundle-Datei erkannt zu bekommen. Außerdem habe ich etwa 20 .properties-Dateien, die Strings enthalten. Muss ich wirklich alle diese Programme hinzufügen?

<f:loadBundle basename="strings.strings"> Can't find bundle for base name strings.strings, locale en_US 

In meinem Haupt-Methode, die ich habe:

deployment.addAsWebResource(
      new ClassLoaderAsset("strings/strings.properties", Main.class.getClassLoader()), "strings.strings"); 

Antwort

0

Ich habe das gleiche Problem, mein Bündel in den Ordner Ressourcen. wenn ich es in Bohne und tun Aktion von Web-Seite zu injizieren es und zeigen Nachrichten finden, aber wenn requried Felder leer sind alle nicht und ich bekomme Nachricht

java.util.MissingResourceException: Can't find bundle for base name messages, locale en 
    at java.util.ResourceBundle.throwMissingResourceException(ResourceBundle.java:1564) 
    at java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1387) 
    at java.util.ResourceBundle.getBundle(ResourceBundle.java:1082) 
    at javax.faces.component.MessageFactory.getMessage(MessageFactory.java:161) 
    at javax.faces.component.MessageFactory.getMessage(MessageFactory.java:251) 
    at javax.faces.component.UIInput.validateValue(UIInput.java:1149) 
    at javax.faces.component.UIInput.validate(UIInput.java:982) 



@ManagedProperty("#{i18n}") 
     private ResourceBundle bundle = null; 

    public String loginUser() { 
     FacesContext context = FacesContext.getCurrentInstance(); 
     ExternalContext ex = context.getExternalContext();  

     FacesMessage msg = new FacesMessage(bundle.getString("nouser"), bundle.getString("nouser")); 
     FacesContext.getCurrentInstance().addMessage(null, msg); 
     return 
+0

das ist falsch '@ManagedProperty („# {i18n}“) ' – Ced