1
@RequestMapping(value = "/getOptimizeLoggerByCP/{cpId}", method = RequestMethod.POST)
public @ResponseBody DataTablesResponse<MessageLogger> getOptimizeLoggerByCP(HttpServletRequest request, @PathVariable String cpId,@RequestBody String json) {
}
}
我也寫下面的消息轉換器沒有加載冬眠懶惰對象
<mvc:annotation-driven>
<mvc:message-converters>
<bean
class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">
<property name="objectMapper">
<bean class="com.gridscape.ocppserver.dao.impl.HibernateAwareObjectMapper" />
</property>
</bean>
</mvc:message-converters>
</mvc:annotation-driven>
public class HibernateAwareObjectMapper extends ObjectMapper {
/**
*
*/
private static final long serialVersionUID = 1L;
public HibernateAwareObjectMapper() {
Hibernate4Module hm = new Hibernate4Module();
registerModule(hm);
}
}
當我從applicationContext.xml中刪除消息轉換器,控制器的工作原理,但是當我添加消息轉換器,控制器停止工作,當我請求控制器我得到了400個不好的要求。我打電話給下面的細節客戶
url:- getOptimizeLoggerByCP/REE001
method:- POST
Content-Type:- application/json
Body:-{
"start": 1,
"length": 1,
"draw": 1
}
春天問題當jackson無法在提交的數據和'@ RequestBody'參數之間進行映射時,會生成'400'。您可能需要將您的json主體映射到實際對象而不是「String」。 – beerbajay 2015-03-25 12:19:07
那麼爲什麼它在我刪除消息轉換器時起作用 – Mahesh 2015-03-25 12:29:49
可能是因爲hibernate模塊不想從具有3個字段的對象創建字符串。測試映射到與您正在發送的數據實際相符的類。 – beerbajay 2015-03-25 13:11:54