Javascript 弹簧控制器未命中。转到错误块
我试图从JSP页面点击控制器。我已经编写了下面的函数,它将在点击特定链接时被调用 功能实现如下图所示:Javascript 弹簧控制器未命中。转到错误块,javascript,jquery,ajax,spring-mvc,spring-security,Javascript,Jquery,Ajax,Spring Mvc,Spring Security,我试图从JSP页面点击控制器。我已经编写了下面的函数,它将在点击特定链接时被调用 功能实现如下图所示: function categorySearchBasedOnParentId(name,id){ $.ajax({ url:"${pageContext.request.contextPath}/customer/get_categoriesByParentId.shx", data: 'id='+id,
function categorySearchBasedOnParentId(name,id){
$.ajax({
url:"${pageContext.request.contextPath}/customer/get_categoriesByParentId.shx",
data: 'id='+id,
success:function(data){
var obj1 = jQuery.parseJSON(data);
var obj2 = obj1.tempCategoriesList;
$("#subCategoriesFilter").html(buildSub(obj2));
},
error:function(data,status,err){
alert("Error occured while searching the categories based on the parent category id");
}
});
在上面的函数中,我尝试点击控制器url,控制器返回JSON对象。我将JSON转换为JavaScript对象,并迭代其值以显示在特定的div标记中
我在spring中编写的控制器如下所示
@RequestMapping(value = "/customer/get_categoriesByParentId.shx",method = RequestMethod.GET, headers="Accept=*/*")
public @ResponseBody String getCategoriesByParentId(Model model,HttpSession session,
@ModelAttribute("shoppingCart") ShoppingCart shoppingCart,
@RequestParam("id") String id) throws IOException{
shoppingCart.setTempCategoriesList(categoryDao.getAllCategoriesByParentCategoryId(id));
model.addAttribute("shoppingCart", shoppingCart);
String json = JSONUtil.createJsonString(shoppingCart);
System.out.println(json);
return json;
}
我做了以下测试:
1) 该值已正确传递给函数。我已经注意到了。
2) 相同的控制器调用可以在其他项目中完成。它正在返回JSON对象
我在控制台上遇到以下错误
at org.codehaus.jackson.map.ser.BeanPropertyWriter.serializeAsField(BeanPropertyWriter.java:446)
at org.codehaus.jackson.map.ser.std.BeanSerializerBase.serializeFields(BeanSerializerBase.java:150)
at org.codehaus.jackson.map.ser.BeanSerializer.serialize(BeanSerializer.java:112)
我几乎在这上面浪费了一整天。我需要帮助。请帮助我。用@RestController为您的控制器添加注释,然后归还您的购物车。Spring将它转换为JSON
如果您想更改转换器,您必须为此配置Spring,但对于常见的用例,它应该是现成的。您可以尝试删除@ModelAttribute(“shoppingCart”)shoppingCart shoppingCart作为参数,并查看它是否命中控制器吗?由于您正在执行GET,我想知道@ModelAttribute(“shoppingCart”)没有被传入。@minion:我需要shoppingCart对象的值,所以无法删除它。我必须将其转换为JSON并将其发送到视图,即:;jsp页面。我在控制台org.codehaus.jackson.map.ser.BeanPropertyWriter.serializeAsField(BeanPropertyWriter.java:446)org.codehaus.jackson.map.ser.std.BeanSerializerBase.serializeFields(BeanSerializerBase.java:150)上收到以下错误在org.codehaus.jackson.map.ser.BeanSerializer.serialize(BeanSerializer.java:112)上,您从哪里获得shoppingCart?有些功能必须通过它。还提供完整的堆栈跟踪。@minion:我正在使用它setter的方法存储shoppingCart的值。像这样,然后将其添加到模型属性,如下所示shoppingCart.setCategories(categoryManager.getCategories(categoryType));shoppingCart.setCategoriesMap(categoryManager.getCategoriesMap(categoryType));model.addAttribute(“shoppingCart”,shoppingCart);你能发布上一个函数吗?如何在SpringFlow中调用前一个函数?