[RESOLVIDO] VRAPTOR redirect - Problemas!

2 respostas
foguinho.peruca

Olá!

Estou utilizando o vraptor na minha aplicação e estou tendo dificuldade no redirecionamento:

PontoLogic.java

/**
 * @author: Jefferson Luiz Oliveira de Campos
 * @email: foguinho [dot] peruca [at] gmail [dot] com
 * @createdOn: 06/08/2008
 * @lastModification: 06/08/2009
 * @whosMadeTheLastModification? Jefferson Luiz Oliveira de Campos
 * @license: GPLv2 or higher
 * @log:
 */

package ocorrencia;

import org.vraptor.annotations.Component;
//import org.vraptor.annotations.Remotable;
//import org.vraptor.annotations.Out;

@Component
public class PontoLogic {

    private Ponto timeClock;

//@Remotable
    public void add(Ponto timeClock) {
        this.timeClock = timeClock;

        System.out.println("ponto ==> " + timeClock.getIdPonto() + " -- TESTER!!!");
    }

    public Ponto getPonto () {
        return this.timeClock;
    }

}

vraptor.xml

<!-- This configfile is OPTIONAL, you probably do not need it, check the docs -->
<vraptor>
	<!--
		loads a component. you just need it if your @Component
		class is not inside of WEB-INF/classes, for example
		inside a jar in WEB-INF/lib
	-->
	<!--
		<component>com.company.project.Component</component>
	-->

	<!--
		loads a component
	-->
	<!--
		<converter>com.company.project.SpecialConverter</converter>
	-->


	<!--
		loads a factory
	-->
	<!--
		<factory>com.company.project.AuthorizationPlugin</factory>
	-->

	<!--
		loads a plugin
	-->
	<!--
		<plugin>com.company.project.AuthorizationPlugin</plugin>
	-->

	<!--
		Changes the view manager to redirect to another directory pattern.
		
		You can, for instance, get the jsps inside of WEB-INF:
		/WEB-INF/jsps/$component/$logic.$result.jsp
		
		Using view.properties you can change the view for each logic.
	-->
	<!--
		<regex-view-manager>/$component/$logic.$result.jsp</regex-view-manager>
	-->
</vraptor>

view.properties:

ponto.add.ok            = ocorrencia/cadOcorrencia.jsp

web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
    <!--servlet>
        <servlet-name>ControllerServlet</servlet-name>
        <servlet-class>mvc.ControllerServlet</servlet-class>
    </servlet-->
    <!--servlet>
        <servlet-name>colaborador</servlet-name>
        <servlet-class>colaborador.colaborador</servlet-class>
    </servlet>
    <servlet>
        <servlet-name>manutencaoColaborador</servlet-name>
        <servlet-class>colaborador.manutencaoColaborador</servlet-class>
    </servlet>
    <servlet>
        <servlet-name>admissao</servlet-name>
        <servlet-class>mvc.admissao</servlet-class>
    </servlet>
    <servlet>
        <servlet-name>manutencao</servlet-name>
        <servlet-class>mvc.manutencao</servlet-class>
    </servlet>
    <servlet>
        <servlet-name>pesquisa</servlet-name>
        <servlet-class>mvc.pesquisa</servlet-class>
    </servlet-->

<!--VRAPTOR-->
    <servlet>
        <servlet-name>vraptor2</servlet-name>
        <servlet-class>org.vraptor.VRaptorServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>


<!--*********************************MAPPING*********************************-->

    <!--servlet-mapping>
        <servlet-name>ControllerServlet</servlet-name>
        <url-pattern>/ControllerServlet</url-pattern>
    </servlet-mapping-->
    <!--servlet-mapping>
        <servlet-name>colaborador</servlet-name>
        <url-pattern>/colaborador</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>manutencaoColaborador</servlet-name>
        <url-pattern>/manutencaoColaborador</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>manutencao</servlet-name>
        <url-pattern>/manutencao</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>admissao</servlet-name>
        <url-pattern>/admissao</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>pesquisa</servlet-name>
        <url-pattern>/pesquisa</url-pattern>
    </servlet-mapping-->

<!--VRAPTOR-->
<servlet-mapping>
        <servlet-name>vraptor2</servlet-name>
        <url-pattern>*.logic</url-pattern>
</servlet-mapping>
    <session-config>
        <session-timeout>
            30
        </session-timeout>
    </session-config>
    <welcome-file-list>
        <welcome-file>index.jsp</welcome-file>
    </welcome-file-list>
    <jsp-config>
        <jsp-property-group>
            <display-name>page-encoding default</display-name>
            <url-pattern>*.jsp</url-pattern>
            <page-encoding>ISO-8859-1</page-encoding>
        </jsp-property-group>
    </jsp-config>
</web-app>

Entretanto o redirecionamento vai para o padrão: /ponto/add.ok.jsp sendo que eu gostaria que ele fosse redirecionado para ocorrencia/ponto.add.ok.jsp

Aparentemente o vraptor não está lendo o arquivo view.proporties. Já Tentei deixar ele na raiz dos src (src/java), na pasta resources (web/resources), no WEB-INF. Definitivamente não funciona. O que poderia ser? O.o (também conforme o tópico http://www.guj.com.br/posts/list/124035.java)

Estou utilizando o netbeans 6.7 no Debian Lenny. A aplicação também estou usando o hibernate.

Obrigado Pela Atenção.

2 Respostas

Cherubini

bom, se entendi seu problema,

tenta isso:

deixa o view.properties no seu claspath e troca o redirecionamento para:

ponto.add.ok = ocorrencia/ponto.add.ok.jsp

Uma coisa existe o component ocorrencia (OcorrenciaLogic) se existe posta ai

para ver se seu metodo esta certo!

Abraço

foguinho.peruca

Olá Cherubini!

Consegui resolver. O meu arquivo estava nomeado como view.properties, quando o mesmo deveria ser view[color=red]s[/color].properties
O pacote do vraptor vem com o arquivo com o nome errado. É coisa boba mas que as vezes é difícil de achar e faz a gte perder to tempo…
Post que me deu uma luz:

http://www.guj.com.br/posts/list/67259.java

Jeff

Criado 7 de agosto de 2009
Ultima resposta 13 de ago. de 2009
Respostas 2
Participantes 2