Android, простой фреймворк - PullRequest
0 голосов
/ 10 января 2012

Я пытаюсь использовать org.simpleframework.xml.классы для обработки данных XML в моем проекте Android.Я не могу понять, как создать свой класс "ChecklistGradeDetail", но я получаю это

01-09 14:56:05.615: WARN/System.err(896): org.simpleframework.xml.core.PersistenceException: Element 'ChecklistGradeDetail' declared twice at line -1

xml / rest

<ArrayOfChecklistGradeDetail xmlns="http://schemas.datacontract.org/2004/07/TeamTask.Service" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
<ChecklistGradeDetail>
    <ChecklistItemID>34</ChecklistItemID>
    <ChecklistItemText>requirements</ChecklistItemText>
    <Comments>please pass</Comments>
    <CreatedOn>2011-09-07T16:30:08.14</CreatedOn>
    <GradeDetailID>362</GradeDetailID>
    <NotPerformed>false</NotPerformed>
    <Preceptor>System Administrator</Preceptor>
    <Satisfactory>true</Satisfactory>
    <Unsatisfactory>false</Unsatisfactory>
    <UserID>admin</UserID>
</ChecklistGradeDetail>
<ChecklistGradeDetail>
    <ChecklistItemID>35</ChecklistItemID>
    <ChecklistItemText>write test</ChecklistItemText>
    <Comments>please pass</Comments>
    <CreatedOn>2011-09-07T16:30:08.14</CreatedOn>
    <GradeDetailID>363</GradeDetailID>
    <NotPerformed>false</NotPerformed>
    <Preceptor>System Administrator</Preceptor>
    <Satisfactory>true</Satisfactory>
    <Unsatisfactory>false</Unsatisfactory>
    <UserID>admin</UserID>
</ChecklistGradeDetail>
<ChecklistGradeDetail>
    <ChecklistItemID>36</ChecklistItemID>
    <ChecklistItemText>execute test</ChecklistItemText>
    <Comments>please pass</Comments>
    <CreatedOn>2011-09-07T16:30:08.14</CreatedOn>
    <GradeDetailID>364</GradeDetailID>
    <NotPerformed>false</NotPerformed>
    <Preceptor>System Administrator</Preceptor>
    <Satisfactory>true</Satisfactory>
    <Unsatisfactory>false</Unsatisfactory>
    <UserID>admin</UserID>
</ChecklistGradeDetail>
</ArrayOfChecklistGradeDetail>

ArrayofChecklistGradeDetail class

    @Root
public class ArrayOfChecklistGradeDetail {
    @ElementList(name="ChecklistGradeDetail")
    public ArrayList<ChecklistItems> Checklist;
}

ChecklistItemкласс

public class ChecklistItems {
    @Element(required=false)
    public String ChecklistItemID;
    @Element(required=false)
    public String ChecklistItemText;
    @Element(required=false)
    public String Comments;
    @Element(required=false)
    public String CreatedOn;
    @Element(required=false)
    public String GradeDetailID;
    @Element(required=false)
    public String NotPerformed;
    @Element(required=false)
    public String Preceptor;
    @Element(required=false)
    public String Satisfactory;
    @Element(required=false)
    public String Unsatisfactory;
    @Element(required=false)
    public String UserID;  

}

справка: (

1 Ответ

3 голосов
/ 10 января 2012

Я разобрался в проблеме. Класс ArrayofCheclistGradeDetail должен быть следующим:

    @Root
public class ArrayOfChecklistGradeDetail {
    @ElementList(entry="ChecklistGradeDetail", inline=true)
    public ArrayList<ChecklistItems> Checklist;
...