J'utilise JibX en tant qu'outil Java Object to XML Binding.JibX: comment mapper une classe et éviter qu'elle soit sortie en tant que noeud XML
Avec elle, je veux avoir la sortie suivante:
<?xml version="1.0" encoding="UTF-8"?>
<FEAPService>
<Request>
<Function>aaa</Function>
<SubFunction>bbb</SubFunction>
<Operation>ccc</Operation>
</Request>
</FEAPService>
Mais je reçois ceci:
<?xml version="1.0" encoding="UTF-8"?>
<FEAPService>
<Request>
<baseForm> <!-- I DO NOT WANT THIS baseForm TAG -->
<Function>aaa</Function>
<SubFunction>bbb</SubFunction>
<Operation>ccc</Operation>
</baseForm>
</Request>
</FEAPService>
Voici le fichier de liaison JiBX:
<binding name="requestBinding_com_struts_form_SpecificForm">
<mapping name="baseForm" class="com.struts.form.BaseForm">
<value name="Function" field="function" />
<value name="SubFunction" field="subFunction" />
<value name="Operation" field="operation" />
</mapping>
<mapping name="FEAPService" class="com.struts.form.SpecificForm"
extends="com.struts.form.BaseForm">
<structure name="Request">
<structure map-as="com.struts.form.BaseForm" />
</structure>
</mapping>
</binding>
I Je suppose que cela pourrait être réalisé en mettant en œuvre mon propre Marshaller, mais je ne suis pas sûr que ce soit le moyen le plus simple.