Added UI (JSF) and JPA to bayesian network entities.
[simdecs.git] / src / java / org / ufcspa / simdecs / bn / ui / util / JsfUtil.java
CommitLineData
c547eea0
MS
1package org.ufcspa.simdecs.bn.ui.util;
2
3import java.util.List;
4import javax.faces.application.FacesMessage;
5import javax.faces.component.UIComponent;
6import javax.faces.context.FacesContext;
7import javax.faces.convert.Converter;
8import javax.faces.model.SelectItem;
9
10public class JsfUtil {
11
12 public static SelectItem[] getSelectItems(List<?> entities, boolean selectOne) {
13 int size = selectOne ? entities.size() + 1 : entities.size();
14 SelectItem[] items = new SelectItem[size];
15 int i = 0;
16 if (selectOne) {
17 items[0] = new SelectItem("", "---");
18 i++;
19 }
20 for (Object x : entities) {
21 items[i++] = new SelectItem(x, x.toString());
22 }
23 return items;
24 }
25
26 public static void addErrorMessage(Exception ex, String defaultMsg) {
27 String msg = ex.getLocalizedMessage();
28 if (msg != null && msg.length() > 0) {
29 addErrorMessage(msg);
30 } else {
31 addErrorMessage(defaultMsg);
32 }
33 }
34
35 public static void addErrorMessages(List<String> messages) {
36 for (String message : messages) {
37 addErrorMessage(message);
38 }
39 }
40
41 public static void addErrorMessage(String msg) {
42 FacesMessage facesMsg = new FacesMessage(FacesMessage.SEVERITY_ERROR, msg, msg);
43 FacesContext.getCurrentInstance().addMessage(null, facesMsg);
44 }
45
46 public static void addSuccessMessage(String msg) {
47 FacesMessage facesMsg = new FacesMessage(FacesMessage.SEVERITY_INFO, msg, msg);
48 FacesContext.getCurrentInstance().addMessage("successInfo", facesMsg);
49 }
50
51 public static String getRequestParameter(String key) {
52 return FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap().get(key);
53 }
54
55 public static Object getObjectFromRequestParameter(String requestParameterName, Converter converter, UIComponent component) {
56 String theId = JsfUtil.getRequestParameter(requestParameterName);
57 return converter.getAsObject(FacesContext.getCurrentInstance(), component, theId);
58 }
59}