2016-04-04 5 views
2

i CRUD App mache mit Hibernate Spring MVC und JS .. und jetzt hier arbeite ich .. eine Zeile in der DB in lösche meinen Code meine jsReihe in DB deteting Feder mit Hibernate mvc

deleteRow : function() { 
    $("input:checkbox:checked").each(bindContext(function(index, item) { 
     var str = $(item).attr("id"); 
     str = str.substring(str.indexOf("_") + 1); 

     $.ajax({ 
      url : '/Spring3HibernateApp1/delete', 
      type : 'POST', 
      data : { 
       "id" : str, 
      } 
     }); 
     this.data.splice(str, 1); 
     this.deleteTable(); 
     this.display(); 
    }, this)); 
}, 

mein Controller

@RequestMapping(value = "/delete") 
public @ResponseBody void doPostDelete(@RequestBody String id,Employee employee){ 
    int idInt = Integer.parseInt(id); 
    employee.setEmpId(idInt-1); 
    employeeService.deleteEmployee(employee); 
} 

es tritt an die Steuerung und sagt jquery.min.js: 4 POST http://localhost:8080/Spring3HibernateApp1/delete 500 (Internal Server Error)

irgendwelche Vorschläge ??

+0

können Sie die Stacktrace bieten Refactoring? – Patrick

+1

ohne ein Protokoll zu sehen, ich glaube, Sie traying konvertieren eine Zahl aus einer Nicht-String-Nummer Darstellung von 'String ID' ... können Sie' id' Wert drucken? – HCarrasko

+0

beim Klicken auf Löschen-Schaltfläche .. ich versuche, die ID des Mitarbeiters zu fangen und es an den Controller zu senden und löschen Sie es aus der DB –

Antwort

1

HTTP 500 Fehler Mittelwert, dem Controller schlechter

Ihren Controller mit diesem

@RequestMapping(value = "/delete/{id}" method = RequestMethod.POST, produces = "application/json") 
    @ResponseBody 
    public void doPostDelete(@RequestBody Employee employee, @PathVariable("id") String id) { 
     int idInt = Integer.parseInt(id); 
     employee.setEmpId(idInt - 1); 
     employeeService.deleteEmployee(employee); 
    } 

und Ihren JavaScript-Code wie dieser

deleteRow : function() { 
    $("input:checkbox:checked").each(bindContext(function(index, item) { 
     var str = $(item).attr("id"); 
     str = str.substring(str.indexOf("_") + 1); 

     $.ajax({ 
      url : '/Spring3HibernateApp1/delete/' + id, // id is your patvariable 
      type : 'POST', 
      data : str // str must equal to employee json object 
     }); 
     this.data.splice(str, 1); 
     this.deleteTable(); 
     this.display(); 
    }, this)); 
},