Message resources e taglib bean struts 2

2 respostas
thiagogmenezes

Olá pessoal,

sou iniciante em struts 2 e estou seguinto a apostila 21 da caelum, estou na parte do arquivo de mensagens “message-resources”… ja criei o arquivo messageResources.properties mas não consigo exibir as mensagens em minha pagina JSP:

CÓDIGO DA PAGINA JSP:

<%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean"%> <bean:message key="site.titulo"/>

SEMPRE RETORNA O SEGUINTE ERRO:

[color=red]javax.servlet.ServletException: org.apache.jasper.JasperException: The absolute uri: http://struts.apache.org/tags-bean cannot be resolved in either web.xml or the jar files deployed with this application
org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:518)
org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:421)[/color]

acredito que o erro esteja na inclusão da URI, mas como sou iniciante, não sei se por acaso pode ter mudado a URI no struts 2… na verdade ja tentei de td…

por favor, se alguem puder me ajudar…

2 Respostas

P

Olá Thiago,

É o seguinte. Primeira coisa. Se sua apostila é sobre o Struts 1, use o Struts 1. O Struts 2 não é uma versão melhorada do 1. É uma arquitetura completamente nova.
Respondendo sua pergunta, o Struts 2 não possui a taglib que você quer utilizar. Ele possui outra, mas que no entanto não possui o recurso message.
Aqui esta a inclusao dela.
<%@ taglib prefix=“s” uri="/struts-tags" %>

Agora se o seu caso nao for esse e você vai usar o Struts 1 e seu problema é utilizar a taglib bean então voce deve incluir dentro do seu WEB-INF os arquivos .tld (que vieram com a distribuicao do Struts 1, pq no 2 eles estao embutidos no .jar). Pode ser dentro de outro diretorio dentro do WEB-INF, neste caso vc tem que associar a taglib a seu descritor da seguinte forma no arquivo web.xml:

/WEB-INF/tlds/struts-bean.tld

Espero ter ajudado.
Um conselho: Se está começando agora com o Struts, comece com a versão 1. Ela não é obsoleta, fique tranqüilo. Depois você migra para a 2. Pois a 1 como tem mais tempo de desenvolvimento possui uma documentação mais farta

thiagogmenezes

Mto obrigado pelo conselho, estou utilizando struts 1 conforme ensina a apostila e consegui resolver o problema… ja até passei da parte de struts na apostila e estou em hibernate agora…

Mas o foco do meu problemas era usar o arquivo messageResources.properties no struts 2… vc sabe como posso fazer para usar essa funcionalidade no struts 2??? eu n achei em lugar nenhum…

mais uma vez, mto obrigado…

Criado 29 de fevereiro de 2008
Ultima resposta 5 de mar. de 2008
Respostas 2
Participantes 2