use of javax.faces.view.facelets.TagException in project muikku by otavanopisto.
the class WidgetSpaceComponentHandler method apply.
@Override
public void apply(FaceletContext context, UIComponent parent) throws IOException {
StringBuilder jsfBuilder = new StringBuilder();
jsfBuilder.append("<ui:composition xmlns:m=\"http://www.ofw.fi/xml/2013/muikku/components-taglib.xsd\" xmlns:ui=\"http://java.sun.com/jsf/facelets\">").append("<m:includeWidgets").append(" widgets=").append('"').append('#').append("{widgetsBackingBean.getWidgets('").append(getName(context)).append("')}").append('"').append("/>").append("</ui:composition>");
VariableMapper orig = context.getVariableMapper();
context.setVariableMapper(new VariableMapperWrapper(orig));
try {
context.includeFacelet(parent, new URL(null, "data://text/plain;base64," + Base64.encodeBase64String(jsfBuilder.toString().getBytes("UTF-8")), new DataStreamHandler()));
} catch (IOException e) {
throw new TagException(this.tag, "Failed to include widget space widgets");
} finally {
context.setVariableMapper(orig);
}
super.apply(context, parent);
}
Aggregations