pessoal, tenho um pequeno problema.
Eu crie uma tag para ser utilizada em uma jsp.
esta tag cria um campo de data. E então eu dou a opção
ao programador de adicionar um calendario, facilitando assim a vida do usuario(para que não precise ficar digitando a data).
se o programador quiser o calendario deve SETAR o atributo “habilitarCalendario=‘true’” na JSP.
Só que este calendario precisa de dois arquivos para poder ser utilizado, um com o CSS e um com JAVASCRIPT.
O problema é que a cada vez que programador adicionar esta tag, sera adicionado as duas linhas(css, javascript), mesmo precisando
adiciona-las uma unica só vez.
Segue a baixo a classe que cria tag.
public class TagCampoData extends AbstractTag
{
private String habilitarCalendario;
public int doStartTag() throws JspException
{
print(getCampoData());
}
private String getCampoData()
{
StringBuffer html = new StringBuffer();
html.append("<input type=\"text\" ");
html.append(" name=\"" + getName() + "\" ");
....
if (Validador.isStringValida(getHabilitarCalendario()))
{
html.append(" habilitarCalendario=\"" + getHabilitarCalendario() + "\" ");
}
....
html.append(" maxlength=\"" + getMaxlength() + "\" ");
html.append(preencheOnBlur());
html.append(" />");
if (getHabilitarCalendario().equalsIgnoreCase("true"))
{
html.append(habilitaCalendario());
}
return html.toString();
}
private String habilitaCalendario()
{
StringBuffer html = new StringBuffer();
//estas são as duas linhas que precisaria estar adicionando somente uma vez, porém ainda não sei como posso fazer isso!
html.append("<link rel=\"StyleSheet\" href=\"/estilos/calendar.css\" type=\"text/css\">");
html.append("<script type=\"text/javascript\" language=\"javascript\" src=\"/javascript/calendar/calendar.js\"></script>");
//-----------
html.append("<img src=\"/imagens/calendar/calendar.jpeg\" ");
html.append(preencheOnClick());
html.append(" />");
return html.toString();
}
private String preencheOnClick()
{...}
private String preencheOnBlur()
{...}
public void setHabilitarCalendario(String habilitarCalendario)
{...}
public String getHabilitarCalendario()
{...}
}
Se alguem tiver alguma ideia de como poderei fazer para que o link de CSS e o de JAVASCRIPT seja adicionado somente uma unica
vez em cada JSP(desde que seja necessário), eu agradeceria mto.
vlw…