Commit ea2ef8690f19b35b2c1464133ab16fec10662d28
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
Showing
2 changed files
with
16 additions
and
4 deletions
Show diff stats
impl/extension/jsf/src/main/java/br/gov/frameworkdemoiselle/internal/proxy/FacesContextProxy.java
@@ -22,19 +22,30 @@ import javax.faces.context.ResponseStream; | @@ -22,19 +22,30 @@ import javax.faces.context.ResponseStream; | ||
22 | import javax.faces.context.ResponseWriter; | 22 | import javax.faces.context.ResponseWriter; |
23 | import javax.faces.event.PhaseId; | 23 | import javax.faces.event.PhaseId; |
24 | import javax.faces.render.RenderKit; | 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 | @Default | 30 | @Default |
27 | public class FacesContextProxy extends FacesContext implements Serializable { | 31 | public class FacesContextProxy extends FacesContext implements Serializable { |
28 | 32 | ||
29 | private static final long serialVersionUID = 1L; | 33 | private static final long serialVersionUID = 1L; |
30 | - | 34 | + |
35 | + @Inject | ||
36 | + @Name("demoiselle-jsf-bundle") | ||
37 | + private ResourceBundle bundle; | ||
38 | + | ||
31 | @PostConstruct | 39 | @PostConstruct |
40 | + protected void initialize() { | ||
41 | + getDelegate(); | ||
42 | + } | ||
43 | + | ||
32 | public FacesContext getDelegate() { | 44 | public FacesContext getDelegate() { |
33 | FacesContext facesContext = FacesContext.getCurrentInstance(); | 45 | FacesContext facesContext = FacesContext.getCurrentInstance(); |
34 | 46 | ||
35 | if (facesContext == null) { | 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 | return facesContext; | 51 | return facesContext; |
impl/extension/jsf/src/main/resources/demoiselle-jsf-bundle.properties
@@ -36,4 +36,5 @@ | @@ -36,4 +36,5 @@ | ||
36 | id-converter-not-found=Voc\u00EA precisa criar um FacesConverter para a classe "{0}". | 36 | id-converter-not-found=Voc\u00EA precisa criar um FacesConverter para a classe "{0}". |
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" | 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 | 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" | 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 | \ No newline at end of file | 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 | \ No newline at end of file | 42 | \ No newline at end of file |