Я пытаюсь распечатать карту и напечатать XML в обмен на верблюдах. Но я получаю дополнительный тег xml для каждого класса, который объявлен как список. Вот классы Pojo, которые я создал.
Student:
public class Student {
@XmlElement
private List<StudentRecord> studentRecord;
}
Student Record
public class StudentRecord {
@XmlElement
private String name;
@XmlElement
private int age;
@XmlElement
private String department;
}
В моем классе процессора я устанавливаю значения как
Student student = new Student();
List<StudentRecord> studentlist = new ArrayList<StudentRecord>();
StudentRecord srd = new StudentRecord();
srd.setName(studentname);
srd.setAge(studentage);
srd.setDepartment(studentDepartment);
studentlist.add(srd);
student.setStudentRecord(studentlist);
Я использую XML маппер, чтобы преобразовать в xml формат и отправить его, используя
exchange.getIN().setBody(xmlMapper.writeValueAsString(student));
Я получил ниже вывод.
<Student>
<StudentRecord>
<StudentRecord>
<Name>John</Name>
<age>22</age>
<Department>Computer Science</Department>
</StudentRecord>
</StudentRecord>
</Student>
Фактический вывод мне нужен :
<Student>
<StudentRecord>
<Name>John</Name>
<age>22</age>
<Department>Computer Science</Department>
</StudentRecord>
</Student>
Я не могу найти, где я иду не так. Должен ли я изменить pojo или мой код, где я устанавливаю значения. Любая помощь приветствуется.