RESOLVIDO : V|Raptor + Hibernate + Mysql - Erro 404

3 respostas
Ramon.Onix

Bom, depois de algum tempo sem ter tempo pra voltar a estudar, recomecei com um projeto do V|Raptor que estava estacionado na minha máquina.

Bom, comecei com um projeto Blank do VRaptor, dou um executar aplicação e aparece uma página, "It works!! VRaptor!".
copiei todos os Jar's da lib do Blank pra pasta lib do meu projeto, copiei tbm a pasta classes que fica em WEB-INF, e copiei o pacote br.com.caelum.vraptor.blank.

blz clico no meu projeto com o direito peço pra executar, aparece a mesma página, "It works!! VRaptor!".

criei o pacote br.com.gcond.modelo, e criei uma classe Ususario:
package br.com.gcond.modelo;

import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;

/**
 *
 * @author Onix
 */
@Entity
public class Usuario {

    @Id
    @GeneratedValue
    private Long idUsuario;
    private String Login;
    private String Permissao;
    private String Senha;

    public String getLogin() {
        return Login;
    }

    public void setLogin(String Login) {
        this.Login = Login;
    }

    public String getPermissao() {
        return Permissao;
    }

    public void setPermissao(String Permissao) {
        this.Permissao = Permissao;
    }

    public String getSenha() {
        return Senha;
    }

    public void setSenha(String Senha) {
        this.Senha = Senha;
    }

    public Long getIdUsuario() {
        return idUsuario;
    }

    public void setIdUsuario(Long idUsuario) {
        this.idUsuario = idUsuario;
    }
}

Criei o pacote br.com.gcond.controller, criei a classe UsuariosController:

package br.com.gcond.controller;

import br.com.caelum.vraptor.Resource;
import br.com.gcond.dao.UsuarioDAO;
import br.com.gcond.modelo.Usuario;
import java.util.List;

/**
 *
 * @author Onix
 */
@Resource
public class UsuariosController {

    private final UsuarioDAO dao;

    public UsuariosController(UsuarioDAO dao) {
        this.dao = dao;
    }

    public List<Usuario> lista() {
        return dao.listaTudo();
    }
}

Criei agora uma pasta usuario dentro de WEB-INF/jsp/, e criei tbm um lista.jsp [agora que vem] quando mando executar esse jsp, ou mesmo indo lá no Browser e digitando http://localhost:8080/G_Cond/WEB-INF/jsp/usuario/lista.jsp.

Dá erro 404! Stak: [não copiei tudo só o fim pq tem um erro]
INFO: 13:02:43,823 DEBUG [DefaultPageResult   ] forwarding to /WEB-INF/jsp/index/index.jsp
INFO: 13:02:43,825 DEBUG [DefaultStaticContentHandler] Deferring request to container: /G_Cond/WEB-INF/jsp/index/index.jsp 
INFO: 13:02:46,142 DEBUG [VRaptor             ] VRaptor ended the request
INFO: 13:03:06,568 DEBUG [VRaptor             ] VRaptor received a new request
INFO: 13:03:06,595 DEBUG [DefaultRequestExecution] executing stack  DefaultRequestExecution
INFO: 13:03:06,623 DEBUG [ToInstantiateInterceptorHandler] Invoking interceptor ResourceLookupInterceptor
INFO: 13:03:06,670 DEBUG [DefaultResourceTranslator] trying to access /usuario/lista.jsp
SEVERE: PWC6117: File "D:\Ramon\Java\NetBeans\G_Cond\build\web\usuario\lista.jsp" not found
INFO: 13:03:06,719 DEBUG [VRaptor             ] VRaptor ended the request

Não tô usando Eclipse[sei q posso ser apedrejado] :-o , mas gosto do Netbeans.
Bom, não sou um programador com anos de experiencia, tô estudando ainda, e conto com a ajuda dos Mestres[são centenas] que tem aki no forum.

3 Respostas

Guevara

No VRaptor vc não pode chamar a jsp diretamente no browser, vc precisa chamar o método que está no controllador, exemplo:

public void formulario() {
}

public void lista() {
result.include("usuarios", usuarioDAO.lista());
}

Ai ao invés de colocar no final da url a jsp vc coloca o nome do método:
http://localhost:8080/meuprojeto/usuario/formulario
ou
http://localhost:8080/meuprojeto/usuario/lista

Abraço!

G

Complementando o que o Guevara falou, todos os frameworks action-based (como é o caso do Vraptor) você deve acessar sempre o controler que irá depois fazer um forward para a página JSP.

De resto todos os passos que você fez estão corretos.

Abraços e bem vindo de volta :smiley:

Ramon.Onix

Valeus galera, Muito obrigado ao Guevara [me fez enchergar o erro…]
Ao Garciajj [de novo, das antiga já. kkkkk]

abs aew galera.

Criado 12 de setembro de 2010
Ultima resposta 12 de set. de 2010
Respostas 3
Participantes 3