我想使用一个使用 AngularJS 发布对象数组的 Web 服务,该 Web 服务工作正常,但是当我尝试使用 AngularJS 使用它时,出现错误:无法从 START_OBJECT token 中反序列化 java.util.ArrayList 的实例 我的 POJO 看起来像这样:
package org.test.metier;
import org.test.entities.T_Skill;
public class Skill_Level {
private T_Skill listSkills;
private int level;
// with getters and setters
这是我的方法
public T_LinkTalentSkill AddSkills(int lnId,List<Skill_Level> skill_Level) {
T_User u= t_UserRepository.findOne(lnId);
T_Talent t= u.getTalent();
for(int i=0; i< skill_Level.size(); i++){
T_LinkTalentSkill linkts =new T_LinkTalentSkill();
linkts.setTalent(t);
linkts.setSkill(skill_Level.get(i).getListSkills());
linkts.setLnLevel(skill_Level.get(i).getLevel());
linkRepository.save(linkts);
}
return null;
}
我的 angularjs 代码如下所示:
$rootScope.addSkills=function(){
$http.post('/AddSkills/' + $rootScope.lnId, $rootScope.skill_Level).success(function(data) {
$rootScope.dataa= data;
});
};
最后是一些 HTML
<select ng-model="skill_Level[0].listSkills.lnId" class="form-control" id="s2example-1">
<option></option>
<option ng-repeat="t in listSkill" value="{{t.lnId}}">{{t.strLabel}}</option>
</select>
<select ng-model="skill_Level[0].level" class="form-control" id="sboxit-4">
<option>Select your country</option>
<option value="1">Level 1</option>
<option value="2">Level 2</option>
<option value="3">Level 3</option>
<option value="4">Level 4</option>
</select>
感谢任何帮助, 问候
最佳答案
我解决了这个问题,我刚刚将 List 更改为 Arraylist,它工作正常
关于java - 使用 angularjs 和 json spring 方法帖子中的对象数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37120053/