Raupen-mapping innere Klassen

Muss ich map-Klasse A in Klasse C mit Raupen-Rahmen.

public class A {

private String fielda1;
private String fielda2;

public String getFielda1() {
    return fielda1;
}
public void setFielda1(String fielda1) {
    this.fielda1 = fielda1;
}
public String getFielda2() {
    return fielda2;
}
public void setFielda2(String fielda2) {
    this.fielda2 = fielda2;
}
}


public class B {
private List<C> cList;

public List<C> getcList() {
    return cList;
}
public void setcList(List<C> cList) {
    this.cList = cList;
}

public static class C {
    private String fieldc1;
    private String fieldc2;

    public String getFieldc1() {
        return fieldc1;
    }
    public void setFieldc1(String fieldc1) {
        this.fieldc1 = fieldc1;
    }
    public String getFieldc2() {
        return fieldc2;
    }
    public void setFieldc2(String fieldc2) {
        this.fieldc2 = fieldc2;
    }
}
}

XML-mapping-Datei:

<mapping wildcard="false" map-null="false" map-id="test">
    <class-a>test.A</class-a>
    <class-b>test.B.C</class-b>
    <field>
        <a>fielda1</a>
        <b>fieldc1</b>
    </field>
    <field>
        <a>fielda1</a>
        <b>fieldc2</b>
    </field>
</mapping>

Wenn ich versuche, eine Karte dieser Klassen bekam ich folgende exception:

org.dozer.MappingException: java.lang.ClassNotFoundException: test.B.C
at org.dozer.util.MappingUtils.throwMappingException(MappingUtils.java:88)
at org.dozer.util.DefaultClassLoader.loadClass(DefaultClassLoader.java:33)

Es die Nähte, die Raupe ist nicht fähig, sich zu handhaben dieser situation und verwendet die Klasse B als Paket-name. Dieses Problem kann gelöst werden, mit benutzerdefinierten Konvertern. Ich möchte nur wissen, gibt es irgendeinen trick, der verwendet werden könnte zu konvertieren, diese Klassen einfach mit XML-Konfiguration ?

bei StackOverflow ist es üblich, upvote die Antworten haben dir geholfen, die meisten. Zusätzlich ist es auch üblich, die Antwort akzeptieren, dass mehr umfassend geholfen, Ihr problem zu lösen. Sie upvote eine Antwort mit dem oberen Pfeil Links neben der Antwort (die Anzahl der Stimmen erhöht sich um 1). Sie akzeptieren die Antwort, indem Sie auf das Häkchen unterhalb der Antwort, damit es grün leuchtet.

InformationsquelleAutor dino.keco | 2010-11-12

Schreibe einen Kommentar