Commit d3ebc76367803780fbbd20f64b65a37f8bdcfbc6
Exists in
master
Merge remote-tracking branch 'origin/master'
Showing
8 changed files
with
38 additions
and
13 deletions
Show diff stats
impl/core/src/main/java/br/gov/frameworkdemoiselle/internal/implementation/LoggerMessageAppender.java
@@ -55,7 +55,7 @@ public class LoggerMessageAppender implements MessageAppender { | @@ -55,7 +55,7 @@ public class LoggerMessageAppender implements MessageAppender { | ||
55 | private Logger logger; | 55 | private Logger logger; |
56 | 56 | ||
57 | @Override | 57 | @Override |
58 | - public void append(Message message) { | 58 | + public void append(Message message, Object... params) { |
59 | String text = message.getText(); | 59 | String text = message.getText(); |
60 | 60 | ||
61 | switch (message.getSeverity()) { | 61 | switch (message.getSeverity()) { |
impl/core/src/main/java/br/gov/frameworkdemoiselle/internal/implementation/MessageContextImpl.java
@@ -66,17 +66,24 @@ public class MessageContextImpl implements Serializable, MessageContext { | @@ -66,17 +66,24 @@ public class MessageContextImpl implements Serializable, MessageContext { | ||
66 | private transient Logger logger; | 66 | private transient Logger logger; |
67 | 67 | ||
68 | @Override | 68 | @Override |
69 | + @Deprecated | ||
69 | public void add(final Message message, Object... params) { | 70 | public void add(final Message message, Object... params) { |
70 | - Message aux; | ||
71 | - | ||
72 | - if (params != null) { | ||
73 | - aux = new DefaultMessage(message.getText(), message.getSeverity(), params); | 71 | + |
72 | + getLogger().debug(getBundle().getString("adding-message-to-context", message.toString())); | ||
73 | + if (params == null || params.length == 0) { | ||
74 | + getAppender().append(message); | ||
74 | } else { | 75 | } else { |
75 | - aux = message; | 76 | + getLogger().warn("Atualmente, ao chamar o método add do MessageContext passando um objeto" |
77 | + + " do tipo Message e mais parâmetros, será recriando um objeto" +"\n" | ||
78 | + + " Message, na implementação DefaultMessage para que os parâmetros sejam utilizados." | ||
79 | + + " Note que isso poderá trazer problemas para sua aplicação, caso" +"\n" | ||
80 | + + " a implementação de Message utilizada não seja a DefaultMessage. Para evitar esse tipo de problema" | ||
81 | + + " e garantir compatibilidade com versões futuras, recomendamos que" +"\n" | ||
82 | + + " o objeto message seja criado com os parâmetros, e que para o método add apenas seja passado" | ||
83 | + + " esse objeto como parâmetro."); | ||
84 | + | ||
85 | + getAppender().append(new DefaultMessage(message.getText(), message.getSeverity(), params)); | ||
76 | } | 86 | } |
77 | - | ||
78 | - getLogger().debug(getBundle().getString("adding-message-to-context", message.toString())); | ||
79 | - getAppender().append(aux); | ||
80 | } | 87 | } |
81 | 88 | ||
82 | private MessageAppender getAppender() { | 89 | private MessageAppender getAppender() { |
impl/core/src/main/java/br/gov/frameworkdemoiselle/message/MessageAppender.java
@@ -51,6 +51,8 @@ public interface MessageAppender extends Serializable { | @@ -51,6 +51,8 @@ public interface MessageAppender extends Serializable { | ||
51 | * | 51 | * |
52 | * @param message | 52 | * @param message |
53 | * message to be stored. | 53 | * message to be stored. |
54 | + * @param params | ||
55 | + * optional params to replace variables in the message | ||
54 | */ | 56 | */ |
55 | - void append(Message message); | 57 | + void append(Message message , Object... params); |
56 | } | 58 | } |
impl/core/src/main/java/br/gov/frameworkdemoiselle/message/MessageContext.java
@@ -55,7 +55,7 @@ public interface MessageContext { | @@ -55,7 +55,7 @@ public interface MessageContext { | ||
55 | * | 55 | * |
56 | * @param message | 56 | * @param message |
57 | */ | 57 | */ |
58 | - | 58 | + @Deprecated |
59 | void add(Message message, Object... params); | 59 | void add(Message message, Object... params); |
60 | 60 | ||
61 | void add(String text, Object... params); | 61 | void add(String text, Object... params); |
impl/core/src/test/java/message/DummyMessageAppender.java
@@ -52,7 +52,7 @@ public class DummyMessageAppender implements MessageAppender { | @@ -52,7 +52,7 @@ public class DummyMessageAppender implements MessageAppender { | ||
52 | private List<Message> messages = new ArrayList<Message>(); | 52 | private List<Message> messages = new ArrayList<Message>(); |
53 | 53 | ||
54 | @Override | 54 | @Override |
55 | - public void append(Message message) { | 55 | + public void append(Message message, Object... params) { |
56 | messages.add(message); | 56 | messages.add(message); |
57 | } | 57 | } |
58 | 58 |
impl/extension/jsf/src/main/java/br/gov/frameworkdemoiselle/internal/implementation/FacesMessageAppender.java
@@ -50,7 +50,7 @@ public class FacesMessageAppender extends LoggerMessageAppender { | @@ -50,7 +50,7 @@ public class FacesMessageAppender extends LoggerMessageAppender { | ||
50 | private static final long serialVersionUID = 1L; | 50 | private static final long serialVersionUID = 1L; |
51 | 51 | ||
52 | @Override | 52 | @Override |
53 | - public void append(Message message) { | 53 | + public void append(Message message , Object... params) { |
54 | try { | 54 | try { |
55 | Faces.addMessage(message); | 55 | Faces.addMessage(message); |
56 | } catch (ContextNotActiveException cause) { | 56 | } catch (ContextNotActiveException cause) { |
impl/extension/jsf/src/main/java/br/gov/frameworkdemoiselle/message/ValidationFailedMessage.java
0 → 100644
@@ -0,0 +1,12 @@ | @@ -0,0 +1,12 @@ | ||
1 | +package br.gov.frameworkdemoiselle.message; | ||
2 | + | ||
3 | +public class ValidationFailedMessage extends DefaultMessage { | ||
4 | + | ||
5 | + public ValidationFailedMessage(String text, Object[] params) { | ||
6 | + super(text, params); | ||
7 | + } | ||
8 | + | ||
9 | + public ValidationFailedMessage(String text, SeverityType severity, Object... params) { | ||
10 | + super(text, severity, params); | ||
11 | + } | ||
12 | +} |
impl/extension/jsf/src/main/java/br/gov/frameworkdemoiselle/util/Faces.java
@@ -54,6 +54,7 @@ import javax.faces.convert.Converter; | @@ -54,6 +54,7 @@ import javax.faces.convert.Converter; | ||
54 | import br.gov.frameworkdemoiselle.exception.ApplicationException; | 54 | import br.gov.frameworkdemoiselle.exception.ApplicationException; |
55 | import br.gov.frameworkdemoiselle.message.Message; | 55 | import br.gov.frameworkdemoiselle.message.Message; |
56 | import br.gov.frameworkdemoiselle.message.SeverityType; | 56 | import br.gov.frameworkdemoiselle.message.SeverityType; |
57 | +import br.gov.frameworkdemoiselle.message.ValidationFailedMessage; | ||
57 | 58 | ||
58 | /** | 59 | /** |
59 | * Utility class to insert messages in the FacesContext. | 60 | * Utility class to insert messages in the FacesContext. |
@@ -75,6 +76,9 @@ public class Faces { | @@ -75,6 +76,9 @@ public class Faces { | ||
75 | 76 | ||
76 | public static void addMessage(final Message message) { | 77 | public static void addMessage(final Message message) { |
77 | getFacesContext().addMessage(null, parse(message)); | 78 | getFacesContext().addMessage(null, parse(message)); |
79 | + if (message instanceof ValidationFailedMessage) { | ||
80 | + getFacesContext().validationFailed(); | ||
81 | + } | ||
78 | } | 82 | } |
79 | 83 | ||
80 | public static void addMessage(final String clientId, final Message message) { | 84 | public static void addMessage(final String clientId, final Message message) { |