सक्षम मैं सर्वर के लिए भेजा PUT अनुरोध पर कब्जा करने के साथ एक समस्या मिला है।स्प्रिंग फ्रेमवर्क, PUT विधि
ये मेरी तरीके हैं:
@RequestMapping(method= RequestMethod.GET)
public String getCity(@PathVariable(value="cid") String cid, @RequestParam(value="State") Integer state, Model model) {
System.out.println("get request");
return "index";
}
@RequestMapping(method= RequestMethod.PUT)
public String putCity(@PathVariable(value="cid") String cid, @RequestParam(value="State") Integer state, Model model) {
System.out.println("put request");
return "index";
}
जब मैं कॉल का पता लगाया है, मेरे PUT अनुरोध को GET विधि द्वारा और PUT विधि से नहीं मेरी कक्षा .. में बाहर स्क्रीन पर संचालित किया गया है, यह हमेशा के रूप में पढ़ा "मिल निवेदन"। मैंने ब्राउज़र लॉग की जांच की है और पुष्टि करता है कि उन्होंने सही PUT अनुरोध भेजा है, इसलिए मुझे लगता है कि मैंने यहां कुछ वसंत कॉन्फ़िगरेशन को याद किया है, लेकिन मुझे नहीं पता कि यह क्या है ..
क्या कोई मदद कर सकता है?
धन्यवाद।
संपादित करें: वर्ग के साथ अतिरिक्त कोड:
@Controller
@RequestMapping(value="/retail/{cid}/master/city")
public class City {
@RequestMapping(value="/foo1", method= RequestMethod.GET)
public String getCity(@PathVariable(value="cid") String cid, @RequestParam(value="State") Integer state, Model model) {
System.out.println("get request");
return "index";
}
@RequestMapping(value="/foo2", method= RequestMethod.PUT)
public String putCity(@PathVariable(value="cid") String cid, @RequestParam(value="State") Integer state, Model model) {
System.out.println("put request");
return "index";
}
}
EDIT2: क्षमा करें, ऐसा लगता है मैं बहुत ही गहन जब लॉग की जांच .. मैं इस चेतावनी में दो बार पकड़ा नहीं किया।
WARNING: Error in annotation processing: java.lang.NoClassDefFoundError: org/aopalliance/intercept/MethodInterceptor
किसी भी विचार है कि कैसे ठीक करने के लिए?
तो 'getCity' लागू की जा रही है, तो अनुरोध एक' GET' विधि है पर जांच करने के लिए। कोई अतिरिक्त कॉन्फ़िगरेशन आवश्यक नहीं है, आपको गलत प्रकार का अनुरोध भेजना होगा। क्या आप सुनिश्चित हैं कि आपका ग्राहक सही काम कर रहा है? – skaffman
हाँ .. मुझे यकीन है कि ग्राहक सही काम कर रहा था। यह कंसोल में लॉग इन किया जा रहा था। क्रोम और फ़ायरफ़ॉक्स के साथ प्रयास किया, और दोनों ने पुट अनुरोध भेजा। – Magician
'getCity' के लिए एक' HttpServletRequest' पैरामीटर जोड़ें, तो लॉग ऑन 'request.getMethod()', और देखो क्या है कि कहते हैं। – skaffman