Each list element is wrapped into an extra tag with the name of the list property (RFE: combine type id, property name)
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 28/100
Direzione di ricerca
Inizia riproducendo l’XML generato dalla classe Body generata da XJC con la configurazione di ObjectMapper e le versioni di Jackson indicate. Confronta i wrapper aggiuntivi transactionAndErrorAndErrorEmail con l’XML previsto, quindi identifica il comportamento del mapper che determina il wrapping degli elementi della lista. Il lavoro è completato quando la lista mista viene serializzata direttamente come elementi transaction ed error, senza il wrapper della proprietà aggiuntiva.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
I am implementing a Java class for calling an external API with uses XML as data format. The API provider provides for each Endpoint the corresponding XML schema. I used the XJC compiler to create schematically compliant Java classes.
Now I have the problem, that the object mapper does wrap list elements into extra tags and therefore, the API call is rejected.
XML schema:
<xs:element name="body" minOccurs="0">
<xs:complexType>
<xs:sequence minOccurs="1" maxOccurs="unbounded">
<xs:element name="transaction" minOccurs="0">...</xs:element>
<xs:element name="error" type="error" minOccurs="0"/>
<xs:element type="xs:string" name="errorEmail" minOccurs="0">...</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
Java class:
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = {
"transactionAndErrorAndErrorEmail"
})
public static class Body {
@XmlElements({
@XmlElement(name = "transaction", type = Transaction.class),
@XmlElement(name = "error", type = Error.class),
@XmlElement(name = "errorEmail", type = String.class)
})
protected List<Object> transactionAndErrorAndErrorEmail;
...
}
Object Mapper Configuration:
final ObjectMapper objectMapper = Jackson2ObjectMapperBuilder
.xml()
.modules(new JaxbAnnotationModule())
.defaultUseWrapper(false)
.serializationInclusion(JsonInclude.Include.NON_NULL)
.build();
Generated XML:
<body >
<transactionAndErrorAndErrorEmail>
<transaction>
...
</transaction>
</transactionAndErrorAndErrorEmail>
<transactionAndErrorAndErrorEmail>
<error>
...
</error>
</transactionAndErrorAndErrorEmail>
</body>
What I expected:
<body >
<transaction>
...
</transaction>
<error>
...
</error>
</body>
I am working with Jackson version 2.8.8, but I tested it also with version 2.9.0.pr2, but without success.
- Lingua principale
- Java
- Stelle
- 636
- Fork
- 250
- Merge medio
- 7h 10m
- PR unite (30g)
- 8
Preparare l'ambiente
Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di FasterXML/jackson-dataformat-xml
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 55/100
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 45/100
FasterXML/jackson-dataformat-xml#931 · 3 commenti ·
-
XmlMapper with `FAIL_ON_UNKNOWN_PROPERTIES` fails on whitespace-only elementForse già presa @arimu1 l’ha presa 89 giorni fa. Apertato-evaluate
Difficoltà 3/5 1-2 giorni Idoneità per principianti 68/100
-
3.x
Difficoltà 4/5 3-5 giorni Idoneità per principianti 25/100
FasterXML/jackson-dataformat-xml#787 · 1 commento ·
Tutte le issue di FasterXML/jackson-dataformat-xml
Issue simili
-
Cleanup: restore the interrupt flag in AiFailureAnalyzerForse già presa @Rishankgupta08 l’ha presa oggi. Apertagood first issue
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
seleniumboot/selenium-boot#258 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
dense-analysis/ale#5181 ·
-
bug subsystem:agent-harness triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
ShaftHQ/SHAFT_ENGINE#8043 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 88/100
johanhaleby/occurrent#1505 ·
I maintainer di solito rispondono entro 1 giorno
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
I maintainer di solito rispondono entro 1 giorno