hallo zusammen,
folgender code liegt mir vor:
import java.io.IOException;
import java.util.Map;
import java.util.WeakHashMap;
import javax.servlet.jsp.JspException;
import javax.servlet.jsp.JspWriter;
import javax.servlet.jsp.tagext.Tag;
import javax.servlet.jsp.tagext.TagSupport;
import tests.MessageDictionary;
public final class Message extends TagSupport
{
private final Map<String, Object> parametersMap = new WeakHashMap<String, Object>();
private static MessageDictionary md = null;
public void setId(final String caId)
{
this.parametersMap.put("id", caId);
}
public String getId()
{
return this.parametersMap.get("id").toString();
}
public String getMessage()
{
md = (MessageDictionary) this.pageContext.getRequest().getAttribute("dictio nary");
return Message.md.getHtmlMsg(getId());
}
@Override
public int doEndTag() throws JspException
{
return Tag.EVAL_PAGE;
}
@Override
public int doStartTag() throws JspException
{
final JspWriter clJspWriter = this.pageContext.getOut();
try
{
final StringBuffer lOutput = new StringBuffer();
lOutput.append(this.getMessage());
clJspWriter.println(lOutput);
return super.doStartTag();
}
catch (final IOException e)
{
e.printStackTrace();
}
return -1;
}
}
tags, welche in dieser art programmiert sind, lassen sich problemlos bei jsp-seiten verwenden. meine frage: wie kann ich diese mit jsf 2.0/facelets verwenden?
das sollte doch irgendwie (?) gehen, schliesslich kann ich auch z.b. folgende namespaces bei facelets verwenden, obwohl diese ursprünglich für jsp konzipiert wurden: http://java.sun.com/jsp/jstl/functions, http://java.sun.com/jsp/jstl/core etc.
danke & grüsse,
jan
folgender code liegt mir vor:
import java.io.IOException;
import java.util.Map;
import java.util.WeakHashMap;
import javax.servlet.jsp.JspException;
import javax.servlet.jsp.JspWriter;
import javax.servlet.jsp.tagext.Tag;
import javax.servlet.jsp.tagext.TagSupport;
import tests.MessageDictionary;
public final class Message extends TagSupport
{
private final Map<String, Object> parametersMap = new WeakHashMap<String, Object>();
private static MessageDictionary md = null;
public void setId(final String caId)
{
this.parametersMap.put("id", caId);
}
public String getId()
{
return this.parametersMap.get("id").toString();
}
public String getMessage()
{
md = (MessageDictionary) this.pageContext.getRequest().getAttribute("dictio nary");
return Message.md.getHtmlMsg(getId());
}
@Override
public int doEndTag() throws JspException
{
return Tag.EVAL_PAGE;
}
@Override
public int doStartTag() throws JspException
{
final JspWriter clJspWriter = this.pageContext.getOut();
try
{
final StringBuffer lOutput = new StringBuffer();
lOutput.append(this.getMessage());
clJspWriter.println(lOutput);
return super.doStartTag();
}
catch (final IOException e)
{
e.printStackTrace();
}
return -1;
}
}
tags, welche in dieser art programmiert sind, lassen sich problemlos bei jsp-seiten verwenden. meine frage: wie kann ich diese mit jsf 2.0/facelets verwenden?
das sollte doch irgendwie (?) gehen, schliesslich kann ich auch z.b. folgende namespaces bei facelets verwenden, obwohl diese ursprünglich für jsp konzipiert wurden: http://java.sun.com/jsp/jstl/functions, http://java.sun.com/jsp/jstl/core etc.
danke & grüsse,
jan