Commit ea2ef8690f19b35b2c1464133ab16fec10662d28

Authored by Danilo Costa Viana
1 parent 5830b1d9
Exists in master

OPEN - issue FWK-164: Método anotado com @PostConstruct na classe

FacesContextProxy viola especificação CDI 
https://demoiselle.atlassian.net/browse/FWK-164
impl/extension/jsf/src/main/java/br/gov/frameworkdemoiselle/internal/proxy/FacesContextProxy.java
... ... @@ -22,19 +22,30 @@ import javax.faces.context.ResponseStream;
22 22 import javax.faces.context.ResponseWriter;
23 23 import javax.faces.event.PhaseId;
24 24 import javax.faces.render.RenderKit;
  25 +import javax.inject.Inject;
  26 +
  27 +import br.gov.frameworkdemoiselle.annotation.Name;
  28 +import br.gov.frameworkdemoiselle.util.ResourceBundle;
25 29  
26 30 @Default
27 31 public class FacesContextProxy extends FacesContext implements Serializable {
28 32  
29 33 private static final long serialVersionUID = 1L;
30   -
  34 +
  35 + @Inject
  36 + @Name("demoiselle-jsf-bundle")
  37 + private ResourceBundle bundle;
  38 +
31 39 @PostConstruct
  40 + protected void initialize() {
  41 + getDelegate();
  42 + }
  43 +
32 44 public FacesContext getDelegate() {
33 45 FacesContext facesContext = FacesContext.getCurrentInstance();
34 46  
35 47 if (facesContext == null) {
36   - // TODO Colocar a mensagem correta
37   - throw new ContextNotActiveException();
  48 + throw new ContextNotActiveException(bundle.getString("faces-context-not-available"));
38 49 }
39 50  
40 51 return facesContext;
... ...
impl/extension/jsf/src/main/resources/demoiselle-jsf-bundle.properties
... ... @@ -36,4 +36,5 @@
36 36 id-converter-not-found=Voc\u00EA precisa criar um FacesConverter para a classe "{0}".
37 37 login-page-not-found=A tela de login "{0}" n\u00E3o foi encontrada. Caso essa n\u00E3o seja a p\u00E1gina correta, defina a p\u00E1gina no arquivo de configura\u00E7\u00E3o usando a chave "frameworkdemoiselle.security.login.page"
38 38 after-login-page-not-found=A tela "{0}" acessada ap\u00F3s o login n\u00E3o foi encontrada. Caso essa n\u00E3o seja a p\u00E1gina correta, defina a p\u00E1gina no arquivo de configura\u00E7\u00E3o usando a chave "frameworkdemoiselle.security.redirect.after.login"
39   -after-logout-page-not-found=A tela "{0}" acessada ap\u00F3s o logout n\u00E3o foi encontrada. Caso essa n\u00E3o seja a p\u00E1gina correta, defina a p\u00E1gina no arquivo de configura\u00E7\u00E3o usando a chave "frameworkdemoiselle.security.redirect.after.logout"
40 39 \ No newline at end of file
  40 +after-logout-page-not-found=A tela "{0}" acessada ap\u00F3s o logout n\u00E3o foi encontrada. Caso essa n\u00E3o seja a p\u00E1gina correta, defina a p\u00E1gina no arquivo de configura\u00E7\u00E3o usando a chave "frameworkdemoiselle.security.redirect.after.logout"
  41 +faces-context-not-available=N\u00E3o existe uma inst\u00E2ncia de FacesContext ativa para esse escopo
41 42 \ No newline at end of file
... ...