Internacionalização com Spring 2.0.6

0 respostas
joseleinebp

Tenho uma aplicação desenvolvida com spring 2.0.6, utilizando ModelAndView - Controller para tratar do conteúdo e funções das páginas jsp's, e no novo projeto resolvi usar internacionalização para os textos, já que os antigos desenvolvedores não usaram na época do desenvolvimento.

Porém, ao usar o spring-context 2.5 (para usar org.springframework.context.support.ResourceBundleMessageResource), ao tentar compilar o projeto recebi um erro de incompatibilidade:
Unable to create Java 1.5 dependent parser: org.springframework.context.annotation.ComponentScanBeanDefinitionParser
.

Busquei na internet e descobri que isso era problema de incompatibilidade de versão entre os jars do spring. Meu spring tinha versão 2.0.6 e spring-context era 2.5.2. Então troquei a versão do spring para 2.5.2 também, só que ao trocar a versão do spring para 2.5 meus controllers deixaram de funcionar, pois a versão 2.5.2 do spring não possui o pacote web.servlet.

Alguém sabe uma forma de poder usar internacionalização neste projeto, SEM ter que mudar a estrutura do controle das páginas?

Aqui vai um exemplo do que eu tenho:

Controller:
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.log4j.Logger;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.Controller;

public class ListaBarrasController implements Controller {

    /** servicos relacionados ao agendamento */
    private AgendaServices agendaServices;

    /** Servicos relacionados ao Xml. */
    private XmlServices xmlServices;

    /** view da pagina de montagem dos combos select */
    private String successView;
    
    /** logs */
    private Logger log = Logger.getLogger(getClass());
    
    public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response) throws Exception
    {
        // Parametros recebidos
        int idParceiro; // id do parceiro

        // Objetos da pagina
        List < Barra > barras = null;
        Parceiro parceiro = null;

        String param;
        param = request.getParameter(AgendamentoUtil.PR);
        if(param==null|| InOutVerifica.verificaInt(param)<0)
        {
            idParceiro = AgendamentoUtil.ID_INVALIDO;
        }
        else
        {
            idParceiro = Integer.parseInt(param);
        }

        if(idParceiro<0)
        {
            log.error("Id do parceiro (pr) nao definido");
            throw new Exception("Id do parceiro (pr) nao definido");
        }

        parceiro = xmlServices.consultaDadosParceiro(idParceiro);
        if(parceiro==null || parceiro.getIdParceiro()<0)
        {
            log.error("Erro ao selecionar parceiro");
            throw new Exception("Erro ao selecionar parceiro");   
        }
        
        barras = agendaServices.listaBarras(parceiro);
        if(barras==null || barras.size()<=0)
        {
            log.error("Lista de barras nao definida");
            throw new Exception("Lista de barras nao definida");
        }

        ModelAndView mAV = new ModelAndView();
        mAV.setViewName(successView);
        mAV.addObject(AgendamentoUtil.BARRAS, barras);
        return mAV;
    }
JSP:
<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core_rt"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<html>
<head>
	<title>Barras</title>
	<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
</head>

<body>
	<table border="1" cellspacing="0">
	<tr>
	<td style="font-weight: bold; text-align: center;">
		Origem
	</td>
	<td style="font-weight: bold; text-align: center;">
		Descrição
	</td>
	<td style="font-weight: bold; text-align: center;">
		Posições
	</td>
	<td style="font-weight: bold; text-align: center;">
		Tam. Desc.
	</td>
	<td style="font-weight: bold; text-align: center;">
		Tam. Preço
	</td>
	</tr>
	
	<c:choose>
	<c:when test="${!empty barras}">
		<c:forEach var="barra" items="${barras}">
			<tr>
			<td style="text-align: center;">
				<c:out value="${barra.origem}"/>
			</td>
			<td>
				<c:out value="${barra.descricao}"/>
			</td>
			<td style="text-align: center;">
				<c:out value="${barra.posicoes}"/>
			</td>
			<td style="text-align: center;">
				<c:out value="${barra.tamDescricao}"/>
			</td>
			<td style="text-align: center;">
				<c:out value="${barra.tamPreco}"/>
			</td>
			</tr>
		</c:forEach>
	</c:when>
	<c:otherwise>
		
	</c:otherwise>
	</c:choose>
	
	</table>
</body>
</html>
Criado 18 de setembro de 2009
Respostas 0
Participantes 1