【发布时间】:2015-12-09 18:10:37
【问题描述】:
我正在尝试向我创建的 api 发出请求。我必须提供名称(字符串)和日期间隔(两个日期)。 我收到以下错误:
无法将“java.lang.String”类型的值转换为所需类型 'java.util.Date';嵌套异常是 java.lang.IllegalArgumentException:无法解析日期:无法解析 日期:“20151211”
我尝试了很多日期格式,但都没有。 请求网址是这样的:
http://localhost:8080/api/avaiableRoomTypes?hotel=Marriot&start=20151211&end=20151213
控制器方法:
@RequestMapping(value = "api/avaiableRoomTypes", method = RequestMethod.GET)
public List<Room> CheckRoomTypeAvailability(@RequestParam(value="hotel") String name,@RequestParam(value="start") Date start,@RequestParam(value="end") Date end) {
Hotel hotel = hotels.findByName(name);
Iterable<RoomType> roomtypesList = roomtypes.findByhotel(hotel);
Iterator<RoomType> roomtypesIt = roomtypesList.iterator();
List<Room> roomsList = new ArrayList<Room>();
while(roomtypesIt.hasNext()){
RoomType rt = roomtypesIt.next();
roomsList.addAll(rooms.findWithDates(start, end, rt.getId()));
}
return roomsList;
}
【问题讨论】:
-
你的控制器方法是什么样的?
-
@RossiRobinsion 我添加了它
-
这可能会有所帮助:stackoverflow.com/questions/9038005/spring-3-1-json-date-format@waqas 的回答