Erro em função EL

2 respostas
R
Olá pessoal, fiz uma função EL mas acontece o seguinte problema:
"${stf:exercicioAtual}" contains invalid expression(s): javax.servlet.jsp.el.ELException: Encountered ": exercicioAtual }", expected one of ...
O html está assim:
<%@ taglib uri="sistributacao/el/functions" prefix="stf" %>
.
.
.
<input id="txtExercicio" name="exercicio" type="text" value="${stf:exercicioAtual}" />
O .tld está assim:
<?xml version="1.0" encoding="UTF-8"?>
<taglib xsi:schemaLocation="http://java.sun.com/xml/ns/javaee webjsptaglibrary_2_1.xsd"
	xmlns="http://java.sun.com/xml/ns/javaee"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	version="2.1">
	
	<decription>Funções EL do SisTributação</decription>
	<display-name>Sistributação - Funções EL</display-name>
	<tlib-version>1.1</tlib-version>
	<short-name>stf</short-name>
	<uri>sistributacao/el/functions</uri>
	
	<function>
		<description>Retorna o ano atual.</description>
		<name>exercicioAtual</name>
		<function-class>sistrib.helper.SisTribHelper</function-class>
		<function-signature>String getExercicioAtual</function-signature>
	</function>
	
</taglib>
A classe está assim:
package sistrib.helper;
public class SisTribHelper
{
        public static String getExercicioAtual()
	{
		return String.valueOf(Calendar.getInstance().get(Calendar.YEAR));
	}

}
Valeu!

2 Respostas

S

1- O nome da tag é description, não decription.
2- Você precisa incluir os parênteses do método no function-signature.
3- O retorno precisa ser o nome completo da classe (java.util.String)
4- Também precisa incluir os parênteses na hora de chamar a função.

Testa isso aí.

R

Só hoje eu testei! Valeu cara, era isso mesmo.
Agora na chamada do método o Eclipse fica acusando erro de sintax como um warning… mas tá funcionando!

Criado 1 de dezembro de 2006
Ultima resposta 4 de dez. de 2006
Respostas 2
Participantes 2