【发布时间】:2019-01-17 07:05:29
【问题描述】:
我正在使用带有 postgres 数据库和休眠 ORM 的 spring mvc 框架。
我遇到了这个错误:
嵌套异常是 java.lang.IllegalArgumentException: No converter 找到类型的返回值:类 java.util.ArrayList] 与根 导致 java.lang.IllegalArgumentException: No converter found for 返回值类型:class java.util.ArrayList
这是我的控制器:
@ResponseBody
@RequestMapping("/ajaxmethod/getdistrict")
public List<District> getDistrict(HttpServletRequest request){
System.out.println("request:" + request.toString());
String division = request.getParameter("division");
System.out.println("division::::::::::::::::::::::::::::::::::::::::::" + division );
List<District> districtlist = this.upazillaService.listDistricts(division);
return districtlist;
}
这是我的 DAO:
@SuppressWarnings("unchecked")
@Override
public List<District> listdistricts(String division) {
Session session = this.sessionFactory.getCurrentSession();
Query query = session.createQuery("from District where division_id=:division");
query.setParameter("division", Integer.parseInt(division));
System.out.println( " query::::::::::::::::::::::: " + query.toString());
List<District> districtList = query.list();
for (District p : districtList) {
logger.info("district List::" + p);
}
// session.clear();
return districtList;
}
这是我的模特:
@ManyToOne
@JoinColumn(name = "division_id", referencedColumnName = "id")
private Division division;
这是 jquery:
<script type='text/javascript'>
$( document ).ready(function() {
$("#district").prop("disabled", true);
$("#division").change(function () {
var division =jQuery("#division option:selected").val();
console.log(division);
$("#district").prop("disabled", false);
$.ajax({
type: "POST",
url: "/farmvill/ajaxmethod/getdistrict",
data: {division: division},
success: function (data) {
console.log("success");
},
error: function (e) {
console.log(e);
}
});
});
});
</script>
如何避免错误?
【问题讨论】:
-
您的结果集没有正确映射到
List<District>。可能您应该在查询时使用对您的数据库对象District的引用作为参数。 -
@AtaurRahmanMunna 你能用任何例子正确地解释一下吗?我无法理解。对不起。
标签: jquery postgresql hibernate spring-mvc jsp