Rajesh Narravula
Rajesh Narravula

Reputation: 1463

How to ignore some tags in XML in Jaxb

my xml file is below:

<ExternalCases>
    <ignoreTag>
        <CashLess>
            <caseType>CashLess</caseType>
            <claimNo>9</claimNo>
            <status>Open</status>
        </CashLess>
    </ignoreTag>
</ExternalCases>

i want to ignore <ignoreTag> and i want <CashLess> tag in my Unmarshaller process.

my class like below:

@XmlRootElement(name="ExternalCases")
public class ExternalCases {

    List<CashLess> cashLess;

    @XmlElement(name="CashLess", required=false)
    public List<CashLess> getCashLess() {
        return cashLess;
    }
    public void setCashLess(List<CashLess> cashLess) {
        this.cashLess = cashLess;
    }
}

Thanks.

Upvotes: 3

Views: 13183

Answers (2)

bdoughan
bdoughan

Reputation: 149047

Ignoring ignoreTag

You could create a StAX filtered XMLStreamReader and have JAXB unmarshal that to ignore one or more XML elements.

Below is a link to a full example I gave in an answer to a similar question:

If ignoreTag is a Grouping Element

If instead ignoreTag is a grouping element for the collection then you could map it as:

@XmlElementWrapper(name="ignoreTag")
@XmlElement(name="CashLess", required=false)
public List<CashLess> getCashLess() {
    return cashLess;

Upvotes: 4

Charles Stevens
Charles Stevens

Reputation: 1582

Use answers of these questions::

JAXB ignoring xml tag attribute

JAXB - Ignore element

might be helpful!!!

Upvotes: 0

Related Questions