Pregunta

Tengo un POJO simple que contiene un par de nombre / valor:

public class Parameter {

    private String name = null;
    private String value = null;

    public Parameter() {
        // Do Nothing
    }

    public Parameter(String name, String value) {
        this.name = name;
        this.value = value;
    }

    public String getName() {
        return name;
    }

    public String getValue() {
        return value;
    }

    public void setName(String name) {
        this.name = name;
    }

    public void setValue(String value) {
        this.value = value;
    }

}

Quiero agrupar esto en una estructura XML que se ve así:

<parameter name="P3">Parameter 3</parameter>

Probé un mapeo que se ve así, pero no funciona:

<class name="pkg.Parameter">
    <field name="Name">
        <bind-xml name="name" node="attribute" />
    </field>
    <field name="Value">
        <bind-xml name="paramValue"/>
    </field>
</class>

Me da esto:

<parameter name="P3">
  <paramValue>Parameter 3</paramValue>
</parameter>

Ya casi está ahí, pero el valor obviamente está fuera de lugar.Básicamente, quiero que el valor devuelto por Parameter.getValue () forme el contenido del elemento en lugar de un subelemento.

Esto debería ser simple, y estoy seguro de que lo será, pero parece que no puedo llegar allí.

¿Alguna idea?

¿Fue útil?

Solución

Oh, Dios mío.Es como si tomarse el tiempo para explicar el problema reorganiza todo en su cerebro y la solución llega a usted justo después de hacer clic en "Publicar".

Resulta que todo lo que tenía que hacer era cambiar

<field name="Value">
    <bind-xml name="paramValue"/>
</field>

a

<field name="Value">
    <bind-xml node="text"/>
</field>

Habiendo hecho eso, ahora veo esto:

<parameter name="P3">Parameter 3</parameter>

Steve

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top