2016-07-22 2 views
1

wildfly swarm에서 jsf 애플리케이션을 실행하려고하지만 리소스 관리에 문제가 있습니다. their github 페이지 상태에 그들의 짧은 예 : 당신은 JSF 이후 방식 등 deployment.addAsWebResource()에서 쉬 링크 랩에 XHTML 파일을 추가해야합니다wildfly swarm에서 jsf 문자열로드

비 정적이다.

내 번들 파일을 인식하지 못했습니다. 또한 나는 약 20 개의 .properties 파일을 가지고있다. 프로그래밍 방식으로 모두 추가해야합니까? 내 주요 방법은

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

는 내가 가진 :

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

답변

0

에 자동으로 자원을 선택할 수있는 모든 것을 사용자 정의 할 필요가없는 경우. 나는 빈에 주입하고 찾아 웹 페이지에서 행동과 메시지 표시를 할 수 있지만, requried 필드가 비어있을 때 모두가 실패하고 난 메시지

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

를 얻을 때이 잘못'@ManagedProperty ("# {국제화}") ' – Ced

관련 문제