package net.java.dev.weblets.demo.render.html;
import net.java.dev.weblets.FacesWebletUtils;
import javax.faces.component.UIComponent;
import javax.faces.component.UIOutput;
import javax.faces.context.FacesContext;
import javax.faces.context.ResponseWriter;
import javax.faces.convert.Converter;
import javax.faces.render.Renderer;
import java.io.IOException;
public class HtmlOutputCustomRenderer extends Renderer
{
public void encodeEnd(
FacesContext context,
UIComponent component) throws IOException
{
//ViewHandler handler = context.getApplication().getViewHandler();
String resourceURL = FacesWebletUtils.getURL(context, "weblets.demo", "/welcome.js");
UIOutput output = (UIOutput)component;
Object value = output.getValue();
String stringValue = null;
if (value != null)
{
Converter converter = output.getConverter();
if (converter != null)
stringValue = converter.getAsString(context, output, value);
else
stringValue = value.toString();
}
ResponseWriter out = context.getResponseWriter();
out.startElement("script", component);
out.writeAttribute("type", "text/javascript", null);
out.writeAttribute("src", resourceURL, null);
out.endElement("script");
if (stringValue != null)
{
out.startElement("a", component);
out.writeAttribute("href", "#", null);
out.writeAttribute("onclick", "sayHello()", null);
out.writeText(stringValue, null);
out.endElement("a");
}
}
}