}
public static String widgetsErrorMessage(I18NSource i18NSource, Map<ProcessToolDataWidget, Collection<String>> errorMap) {
StringBuilder errorMessage = new StringBuilder("<ul>");
for (Map.Entry<ProcessToolDataWidget, Collection<String>> entry : errorMap.entrySet()) {
ProcessToolDataWidget w = entry.getKey();
Collection<String> col = entry.getValue();
String caption = null;
if (w instanceof BaseProcessToolWidget) {
caption = ((BaseProcessToolWidget) w).getAttributeValue("caption");
}