Olá pessoal,
sou novo no GUJ e com VRaptor3, o qual estou utilizando em um pequeno sistema (juntamente com Extjs). Estou com problemas para utilizar arquivos JS e CSS, em resumo, com relação ao caminho de contexto que é utilizado para os arquivos JS e CSS importados em um JSP.
Procurei no fórum a solução antes de postar algo e encontrei um post bastante parecido (http://guj.com.br/posts/list/142536.java#768159), mas que não resolveu meu problema (o problema é resolvido para alguém que está utilizando Eclipse mas ao final do post alguém acrescenta que está tendo o mesmo problema com o NetBeans, mas que não conseguiu resolver ainda, assim como eu).
Abaixo descrevo os testes que fiz e os resultados obtidos, sendo que, para todos eles:
- o JSP está no caminho /WEB-INF/jsp/cliente/listar.jsp
- o CSS está no caminho /css/estilo.css (ou seja, na mesma pasta do WEB-INF)
- o JS está no caminho /js/script.js (ou seja, na mesma pasta do WEB-INF)
[color=blue]EXEMPLO QUE FUNCIONA: [/color] utilizando @Path sem indicar o recurso
Recurso:
[code]@Resource
public class ClienteController {
…
@Get
@Path("listarClientes") // ou @Path("/listarClientes")
public void listar() {
...
}
…
}[/code]
JSP:
[code]<%@page contentType=“text/html” pageEncoding=“UTF-8”%>
... [/code]ACESSO: http://localhost:8084/NomeProjeto/listarClientes => [color=blue]OK! Recurso acessado, retorno feito e caminhos para CSS e JS sem erro.[/color]
[color=red]EXEMPLO QUE NÃO FUNCIONA 1: [/color] utilizando o caminho padrão ou o @Path indicando o recurso
Recurso:
[code]@Resource
public class ClienteController {
…
@Get
@Path("/cliente/listar") // ou @Path("cliente/listar") ou sem colocar o @Path
public void listar() {
...
}
…
}[/code]
JSP:
[code]<%@page contentType=“text/html” pageEncoding=“UTF-8”%>
... [/code]ACESSO: http://localhost:8084/NomeProjeto/cliente/listar => [color=red]O recurso é acessado corretamente, o retorno feito, mas os caminhos para CSS e JS apresentam erro. Eles buscam por: [/color]
http://localhost:8084/NomeProjeto/cliente/css/estilo.css e
http://localhost:8084/NomeProjeto/cliente/js/script.js
ao invés de
http://localhost:8084/NomeProjeto/css/estilo.css e
http://localhost:8084/NomeProjeto/js/script.js
[color=red]EXEMPLO QUE NÃO FUNCIONA 2: [/color] utilizando o caminho padrão ou o @Path indicando o recurso e colocando caminho absoluto no CSS e JS
Recurso:
[code]@Resource
public class ClienteController {
…
@Get
@Path("/cliente/listar") // ou @Path("cliente/listar") ou sem colocar o @Path
public void listar() {
...
}
…
}[/code]
JSP:
[code]<%@page contentType=“text/html” pageEncoding=“UTF-8”%>
... [/code]ACESSO: http://localhost:8084/NomeProjeto/cliente/listar => [color=red]O recurso é acessado corretamente, o retorno feito, mas os caminhos para CSS e JS apresentam erro. Eles buscam por: [/color]
http://localhost:8084/css/estilo.css e
http://localhost:8084/js/script.js
ao invés de
http://localhost:8084/NomeProjeto/css/estilo.css e
http://localhost:8084/NomeProjeto/js/script.js
Alguém poderia me explicar o porque do EXEMPLO QUE NÃO FUNCIONA 1 não funcionar (seja porque não deveria, o que significa que eu não entendi nada então hehe, ou então porque eu estou esquecendo ou fazendo algo errado)? O segundo exemplo que não funciona eu entendo, mas o primeiro não.
Muito obrigado.
[]s