2013-06-10 3 views
0

내 클래스 개체의 목록을 마샬링하고 비 정렬 화하려고한다고 말합니다. java.util.List<MyObject>. 저는 Castor를 사용하려고합니다. Castor-0.9.5. *. jar 버전을 사용해야합니다.castor를 사용하여 마샬링 및 비 정렬 화

또한 마샬링 된 개체 (MyObject)에 대한 XML 스키마가 있습니다. MyObject 클래스에는 기본 생성자가 없으며 모든 필드를 설정하는 매개 변수화 된 생성자 만 있습니다. 그리고 MyObject 클래스에는 필드에 대한 setter 메서드가 없습니다. 나는 MyObject 클래스를 전혀 수정할 수 없습니다.

public class MyObject 
{ 
    private final SomeEnumType type; 
    private final CutomObject custObjs[]; 
    private final int index; 
    private final String[] strs; 
    private final int rows[]; 

    // NOTE: This class also has getter methods for all the fields. 
    // NOTE: There are NO setters methods and all fields are final 

    public MyObject(SomeEnumType type, CutomObject custObjs[], 
        int index, String strs[], int rows[]) 
    { 
     this.type = type; 
     this.custObjs = custObjs; 
     this.index = index; 
     this.strs = strs; 
     this.rows = rows; 
    } 

} 

내 질문

은 다음과 같습니다 :

  1. 이 캐스터는이 시나리오에 최적의 선택이 될 것입니다 여기에

    MyObject 클래스의 조각인가? 더 나은 선택이 아니라면?
  2. 필자의 경우 Castor 매핑을 만드는 방법. 나는 이것에 대해 O2XMapper을 사용해 보았지만 MyObject 클래스에는 기본 생성자가 없으므로 작동하지 않습니까?
  3. 캐스터 매핑을 생성하기 위해 MyObject의 XML 스키마를 사용하는 방법이 있습니까?
  4. 캐스터 항아리에 org.exolab.castor.xml.XMLContextorg.castor.xml.BackwardCompatibilityContext 클래스가 없습니다. 캐스터 병에 속하지 않습니까?
+0

Downvoter을 차지하지 않습니다 가벼운 무게와 마샬링과 언 마샬링 그대로 JAXB를 사용하는 것을 선호, 당신의 아래로 투표를 설명하는 신경하시기 바랍니다. – Learner

답변

1

내가 훨씬 기억 click here for example

+0

'MyObject' 클래스를 변경할 수 없으므로 주석을 달 수 없습니다. JaxB를 계속 사용할 수 있습니까? – Learner

+0

@john : MyObject 클래스를 공유 할 수 있다면 그것을 식별하려고 시도 할 것입니다. –

+0

질문에 MyObject 클래스의 스 니펫을 추가했습니다. 한번보세요. – Learner

관련 문제