estou tentando criar um método find na mão porem ele da erro de não estar passando a id correta
DAO
package br.com.bancoImpl.dao;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;
import br.com.bancoImpl.model.SITE;
@Transactional
@Repository
public class SiteDAO {
@PersistenceContext
private EntityManager manager;
public void gravar(SITE site){
manager.persist(site);
}
public void buscar(SITE site) {
manager.find(SITE.class, site);
}
}
Controller
package br.com.bancoImpl.controller;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import br.com.bancoImpl.dao.SiteDAO;
import br.com.bancoImpl.model.SITE;
@Controller
public class SiteController {
@Autowired
private SiteDAO siteDao;
@RequestMapping("/form")
public String form(){
return "/form";
}
@RequestMapping("/Criar")
public String gravar(SITE site){
System.out.println(site);
siteDao.gravar(site);
return "/ok";
}
@RequestMapping("/lista")
public String lista(){
return "/lista";
}
@RequestMapping("/Busca")
public String buscar(SITE site){
System.out.println(site);
siteDao.buscar(site);
return "/busca";
}
}
Model
package br.com.bancoImpl.model;
import java.io.Serializable;
import javax.persistence.Entity;
import javax.persistence.Id;
@Entity
public class SITE implements Serializable {
private static final long serialVersionUID = 1L;
@Id
private String SIGLA;
private String NOME;
private String DISTRITO;
private String MUNICÍPIO;
public String getSIGLA() {
return SIGLA;
}
public void setSIGLA(String sIGLA) {
SIGLA = sIGLA;
}
public String getNOME() {
return NOME;
}
public void setNOME(String nOME) {
NOME = nOME;
}
public String getDISTRITO() {
return DISTRITO;
}
public void setDISTRITO(String dISTRITO) {
DISTRITO = dISTRITO;
}
public String getMUNICÍPIO() {
return MUNICÍPIO;
}
public void setMUNICÍPIO(String mUNICÍPIO) {
MUNICÍPIO = mUNICÍPIO;
}
Form Busca
<form action="/bancoImpl2/Busca" method="get">
<div>
<Label>Sigla</Label> <input type="text" name="SIGLA">
</div>
<button type="submit">Buscar</button>
</form>
erro
mai 25, 2019 12:52:31 AM org.apache.catalina.core.StandardWrapperValve invoke
GRAVE: Servlet.service() for servlet [dispatcher] in context with path [/bancoImpl2] threw exception [Request processing failed; nested exception is java.lang.IllegalArgumentException: Provided id of the wrong type for class br.com.bancoImpl.model.SITE. Expected: class java.lang.String, got class java.lang.Class] with root cause
org.hibernate.TypeMismatchException: Provided id of the wrong type for class br.com.bancoImpl.model.SITE. Expected: class java.lang.String, got class java.lang.Class