2015-04-19 8 views
1

Я работаю с угловыми пружинами и успокаивающе.Метод запроса «PUT» не поддерживается

мой отдых контроллер

@RequestMapping(value="/updatestructure/{ch}",method = RequestMethod.PUT) 
public @ResponseBody Structurenotification updateStructure(@PathVariable(value="ch") StructureNotificationDto ch) { 
    return StructureNotif.update(ch); 
} 

кнопку

$scope.addstructure = function() { 
     $http.put('/structure/updatestructure/', $scope.element); 
}; 

Но я получаю эту проблему:

osweb.servlet.PageNotFound: Запрос метод «PUT 'не поддерживается

+0

Я думаю, что эта проблема может быть в большей степени связана с Java, чем JavaScript – SmokeyPHP

ответ

4

Вы определили переменную {ch} как PathVariable, и вы отправите ее в качестве органа запроса. Вы сопоставляете такие URL как /structure/updatestructure/abc, /structure/updatestructure/efg, а значения abc и efg будут передаваться как строки. В этом случае ваше сопоставление должно выглядеть так.

@RequestMapping(value="/updatestructure/{ch}",method = RequestMethod.PUT) 
public @ResponseBody Structurenotification updateStructure(@PathVariable String ch) {  
} 

Но, Ваш, actualli собирается отправить JSON в теле запроса (при условии, от вашего углового $http.put(url,data)). Вашего отображение должно быть тогда следующим образом:

@RequestMapping(value="/updatestructure/",method = RequestMethod.PUT) 
public @ResponseBody Structurenotification updateStructure(@RequestBody StructureNotificationDto ch) { 
    return StructureNotif.update(ch); 
} 
+0

вы можете объяснить? –

+0

???????????????? –

Смежные вопросы