Vraptor i18n

10 respostas
A

Como altero para que o plugin não coloque pt-br na url?

http://localhost:8080/project/pt-br/login/

Pesquisei no guj e no repositorio do plugin e não achei…

10 Respostas

igomes

Que plugin ?

A

vraptor i18n

igomes

Não entendi, o plugin está alterando sua url, o i18n é para usar para mensagens, uso ele no vraptor 4, mas até então ele não altera sua url projeto/controller/método.

A

Igor, é isso que to achando estranho.

Ele esta adicionando pt-br em todas as minhas urls.

Como no exemplo que mencionei:
http://localhost:8080/project/pt-br/login/

Você fez alguma configuração ou apenas colocou no pom e criou o arquivo messages.properties?

igomes

Joga o seu controller/jsp, e mais seu web.xml aqui

A

A jsp não tem nada de mais, apenas um form e uma tabela…

Controller:

@Controller
@Path("/usuario")
public class UsuarioController {
   
    @Get("/")
    public void index() {
    }
    
    @Get("/add")
    public void form() {
    }
    
    @Get("/edit/{usuario.codigo}")
    public void formEdit() {
    }
    
    @Delete("/delete/{usuario.codigo}")
    public void formDelete() {
    }
    
    @Post
    public void save(@Valid Usuario usuario) {
    }
}

web.xml:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:web="http://java.sun.com/xml/ns/javaee" xmlns="http://java.sun.com/xml/ns/javaee"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
    http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
    version="3.0">

    <filter>
        <filter-name>vraptor</filter-name>
        <filter-class>br.com.caelum.vraptor.VRaptor</filter-class>
    </filter>
    <filter-mapping>
        <filter-name>vraptor</filter-name>
        <url-pattern>/*</url-pattern>
        <dispatcher>FORWARD</dispatcher>
        <dispatcher>REQUEST</dispatcher>
    </filter-mapping>

    <context-param>
        <param-name>javax.servlet.jsp.jstl.fmt.localizationContext</param-name>
        <param-value>messages</param-value>
    </context-param>
    <context-param>
        <param-name>br.com.caelum.vraptor.encoding</param-name>
        <param-value>UTF-8</param-value>
    </context-param>
    
    <listener>
        <listener-class>org.jboss.weld.environment.servlet.Listener</listener-class>
    </listener>
</web-app>
A

@igomes alguma ideia de como mudar isso?

Obrigado.

igomes

Cara, dando uma olhada, parece que seu path seria http://localhost:8080/projeto/usuario/add/form.
Se vc tirar o i18 ele fica normal ? e o path está assim mais aquele pt br ?

A

@igomes

Quando starto o projeto ele mostra as seguintes rotas:

12:55:17  INFO [DefaultRouteBuilder ] /pt-br/usuario/add                                [GET] -> public void com.projeto.controller.UsuarioController.form()

12:55:17  INFO [DefaultRouteBuilder ] /usuario/add                                      [GET] -> public void com.projeto.controller.UsuarioController.form()

12:55:17  INFO [DefaultRouteBuilder ] /pt-br/usuario/save                               [POST] -> public void com.projeto.controller.UsuarioController.save( com.projeto.model.Usuario)

12:55:17  INFO [DefaultRouteBuilder ] /usuario/save                                     [POST] -> public void com.projeto.controller.UsuarioController.save( com.projeto.model.Usuario)

12:55:17  INFO [DefaultRouteBuilder ] /pt-br/usuario/                                   [GET] -> public void com.projeto.controller.UsuarioController.index()

12:55:17  INFO [DefaultRouteBuilder ] /usuario/                                         [GET] -> public void com.projeto.controller.UsuarioController.index()

12:55:17  INFO [DefaultRouteBuilder ] /pt-br/usuario/delete/{usuario.codigo}            [DELETE] -> public void com.projeto.controller.UsuarioController.formDelete()

12:55:17  INFO [DefaultRouteBuilder ] /usuario/delete/{usuario.codigo}                  [DELETE] -> public void com.projeto.controller.UsuarioController.formDelete()

12:55:17  INFO [DefaultRouteBuilder ] /pt-br/usuario/edit/{usuario.codigo}              [GET] -> public void com.projeto.controller.UsuarioController.formEdit()

12:55:17  INFO [DefaultRouteBuilder ] /usuario/edit/{usuario.codigo}                    [GET] -> public void com.projeto.controller.UsuarioController.formEdit()
A

Se eu tirar o plugin, ele funciona normal. Não cria as rotas com pt-br…

Criado 20 de fevereiro de 2016
Ultima resposta 1 de mar. de 2016
Respostas 10
Participantes 2