這是奇怪的是,我的PUT操作沒有映射到春天的方法,我下面的類...春天裏沒有映射到方法
@Controller
@RequestMapping(value = { "/**/applicationContext/abcde" })
public abstract class AbstractController {
// Exception handlers
}
此類由另一個抽象類擴展,如下
public abstract class AbstractAdapter extends AbstractController{}
最後,上述類由下面的類
public class SpringAdapter extends AbstractAdapter implements MyInterface{}
延伸和我有一些認沽操作,如下所示: -
@Override
@ResponseBody
@RequestMapping(method = { RequestMethod.PUT }, consumes = "application/x-www-form-urlencoded", produces = "application/xml", params = {
"param1=some_value", param2 })
public MyObject update(
@RequestParam(value = param2, required = true) @ContentType(value = Encoding.XML) MyObejct myObject, HttpServletRequest request) throws Exception{ }
但是,當我調用put方法時,請求沒有映射到我的更新方法。 任何人都可以請幫忙。
你真的確定你的請求包含所有必需的選項嗎? 'Content-Type'和'Accept'標題。該URL有'param1 = some_value',我想'param2'是一個靜態常量,類似於'myParam = myValue'風格。 –
我也很好奇聽到你的SpringAdapter實際上是否使用了@Controller註解。否則它將不會被掃描,因此也不會被發現 – Joeblade
@Joeblade:因爲我的父類已經標記爲Controller註解,因此我不需要用Controller註釋標記我的SpringAdapter。 – Apollo