Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- The method findOne(long) is undefined for the type UsuarioCrud
- ] with root cause
- java.lang.Error: Unresolved compilation problem:
- The method findOne(long) is undefined for the type UsuarioCrud
- at com.inezpre5.controlador.ControladorCrud.editar(ControladorCrud.java:63) ~[classes/:na]
- package com.inezpre5.modelo;
- import javax.persistence.Entity;
- import javax.persistence.GeneratedValue;
- import javax.persistence.GenerationType;
- import javax.persistence.Id;
- import org.hibernate.validator.constraints.Length;
- import javax.validation.constraints.Email;
- //import org.hibernate.validator.constraints.NotEmpty;
- import javax.validation.constraints.NotEmpty;
- @Entity
- public class Usuario {
- @Id
- @GeneratedValue(strategy = GenerationType.AUTO)
- private long id;
- @NotEmpty
- @Length(min=5, max=24)
- private String nombre;
- @NotEmpty
- @Length(min=10, max=24)
- private String password;
- @NotEmpty
- @Email
- private String email;
- public Usuario() {
- super();
- // TODO Auto-generated constructor stub
- }
- public Usuario(String nombre, String password, String email) {
- this.nombre = nombre;
- this.password = password;
- this.email = email;
- }
- public long getId() {
- return id;
- }
- public void setId(long id) {
- this.id = id;
- }
- public String getNombre() {
- return nombre;
- }
- public void setNombre(String nombre) {
- this.nombre = nombre;
- }
- public String getPassword() {
- return password;
- }
- public void setPassword(String password) {
- this.password = password;
- }
- public String getEmail() {
- return email;
- }
- public void setEmail(String email) {
- this.email = email;
- }
- }
- package com.inezpre5.modelo;
- import org.springframework.data.repository.CrudRepository;
- public interface UsuarioCrud extends CrudRepository<Usuario, Long>{
- }
- package com.inezpre5.controlador;
- import javax.validation.Valid;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Controller;
- import org.springframework.ui.ModelMap;
- import org.springframework.validation.BindingResult;
- import org.springframework.web.bind.annotation.PathVariable;
- import org.springframework.web.bind.annotation.RequestMapping;
- import org.springframework.web.bind.annotation.RequestMethod;
- import org.springframework.web.bind.annotation.RequestParam;
- import org.springframework.web.bind.annotation.RestController;
- import com.inezpre5.modelo.Usuario;
- import com.inezpre5.modelo.UsuarioCrud;
- @Controller
- @RequestMapping("/crud")
- public class ControladorCrud {
- @Autowired
- private UsuarioCrud uc;
- //aqui estarían listar y crear que funcionan perfectamente, el error me lo da el //findOne(id)
- @RequestMapping(value="/editar/{id}", method=RequestMethod.GET)
- public String editar(@PathVariable("id") long id, ModelMap mp){
- mp.put("usuario", uc.findOne(id));
- return "crud/editar";
- }
- @RequestMapping(value="/actualizar", method=RequestMethod.POST)
- public String actualizar(@Valid Usuario usuario, BindingResult bindingResult, ModelMap mp){
- if(bindingResult.hasErrors()){
- mp.put("usuarios", uc.findAll());
- return "crud/lista";
- }
- Usuario user = uc.findOne(usuario.getId());
- user.setNombre(usuario.getNombre());
- user.setPassword(usuario.getPassword());
- user.setEmail(usuario.getEmail());
- uc.save(user);
- mp.put("usuario", user);
- return "crud/actualizado";
- }
- }
- <!doctype html>
- <html>
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
- <script src="https://code.jquery.com/jquery-3.3.1.min.js"
- integrity="sha256-FgpCb/KJQlLNfOu91ta32o/NMZxltwRo8QtmkMRdAu8="
- crossorigin="anonymous"></script>
- <!-- Latest compiled and minified CSS -->
- <link rel="stylesheet"
- href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css"
- integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u"
- crossorigin="anonymous">
- <!-- Optional theme -->
- <link rel="stylesheet"
- href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap-theme.min.css"
- integrity="sha384-rHyoN1iRsVXV4nD0JutlnGaslCJuC7uwjduW9SVrLvRYooPp2bWYgmgJQIXwl/Sp"
- crossorigin="anonymous">
- <!-- Latest compiled and minified JavaScript -->
- <script
- src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"
- integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa"
- crossorigin="anonymous"></script>
- <title>Lista:Crud</title>
- </head>
- <body>
- <div class="container">
- <div class="panel panel-info">
- <div class="panel-heading">
- <h3>Lista de Usuarios</h3>
- </div>
- <table class="table table-striped">
- <thead>
- <tr>
- <th>Id</th>
- <th>Nombre</th>
- <th>Contraseña</th>
- <th>Email</th>
- </tr>
- </thead>
- <tbody>
- <tr data-th-each="usuario :${usuarios}">
- <td data-th-text="${usuario.id}"></td>
- <td data-th-text="${usuario.nombre}"></td>
- <td data-th-text="${usuario.password}"></td>
- <td data-th-text="${usuario.email}"></td>
- <td><a th:href="@{'/crud/editar/{id}'(id=${usuario.id})}">
- <span class="fa-stack"><i
- class="glyphicon glyphicon-edit"></i></span>
- </a></td>
- <td><a th:href="@{'/crud/borrar/{id}'(id=${usuario.id})}">
- <span class="fa-stack"><i
- class="glyphicon glyphicon-trash"></i></span>
- </a></td>
- </tr>
- </tbody>
- </table>
- </div>
- <br /> <a class="btn btn-info" href="/crud/nuevo">Nuevo Usuario</a>
- </div>
- </body>
- </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement