1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 package org.apache.myfaces.orchestra.conversation.jsf;
21
22 import java.io.PrintWriter;
23 import java.io.StringWriter;
24
25 import javax.faces.application.FacesMessage;
26 import javax.faces.context.FacesContext;
27
28 import org.apache.myfaces.orchestra.conversation.ConversationMessager;
29
30
31
32
33
34
35
36
37
38
39 public class JsfConversationMessager extends ConversationMessager
40 {
41 public void setConversationException(Throwable t)
42 {
43 String msgSummary = t.getLocalizedMessage();
44 String msgDetail = getThrowableText(t);
45 FacesMessage msg = new FacesMessage(FacesMessage.SEVERITY_FATAL, msgSummary, msgDetail);
46 FacesContext.getCurrentInstance().addMessage(null, msg);
47 }
48
49 public void setConversationNotActive(String name)
50 {
51 String msgSummary = "Conversation not active";
52 String msgDetail = "Conversation not active. Please start over. (Conversation Name:" + name + ")";
53 FacesMessage msg = new FacesMessage(FacesMessage.SEVERITY_FATAL, msgSummary, msgDetail);
54 FacesContext.getCurrentInstance().addMessage(null, msg);
55 }
56
57 protected String getThrowableText(Throwable t)
58 {
59 StringWriter sw = new StringWriter();
60 PrintWriter pw = new PrintWriter(sw);
61 t.printStackTrace(pw);
62 pw.close();
63 return sw.toString();
64 }
65 }