当前位置: 首页 > 知识库问答 >
问题:

jaxb2 SAXParseException:找到无效内容

况唯
2023-03-14

我正在使用Spring.oxm和带有SAX解析器的jaxb2将java对象编组为xml。

我遇到了一个问题,我的封送程序抛出了一个org.xml.sax.SaxParseException声明:

发现以元素'ns59:artid'开始的无效内容。应为{[...],http://www.bipro.net/namespace/gevo“:artid,[...]}之一。

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <ns43:getShipmentResponse 
xmlns="http://www.bipro.net/namespace/basis" 
xmlns:ns2="http://www.bipro.net/namespace/nachrichten" 
xmlns:ns3="http://www.bipro.net/namespace/abrechnung" 
xmlns:ns4="http://www.bipro.net/namespace/allgemein" 
xmlns:ns5="http://www.bipro.net/namespace/schaden-leistung" 
xmlns:ns6="http://www.bipro.net/namespace/partner" 
xmlns:ns7="http://www.bipro.net/namespace/sachen" 
xmlns:ns8="http://www.bipro.net/namespace/versicherung/produktmodell/rechtsschutz" 
xmlns:ns9="http://www.bipro.net/namespace/produktmodell" 
xmlns:ns10="http://www.bipro.net/namespace/versicherung/produktmodell" 
xmlns:ns11="http://www.bipro.net/namespace/kapitalanlage/basis" 
xmlns:ns12="http://www.bipro.net/namespace/versicherung/produktmodell/komposit" 
xmlns:ns13="http://www.bipro.net/namespace/kapitalanlage/transaktion" 
xmlns:ns14="http://www.bipro.net/namespace/provision" 
xmlns:ns15="http://www.bipro.net/namespace/beteiligungsverhaeltnis" 
xmlns:ns16="http://www.bipro.net/namespace/kapitalanlage" 
xmlns:ns17="http://www.bipro.net/namespace/versicherung/produktmodell/kraftfahrt" 
xmlns:ns18="http://www.bipro.net/namespace/fragen" 
xmlns:ns19="http://www.bipro.net/namespace/versicherung/produktmodell/kranken" 
xmlns:ns20="http://www.bipro.net/namespace/vertrag" 
xmlns:ns21="http://www.bipro.net/namespace/foerderung" 
xmlns:ns22="http://www.bipro.net/namespace/versicherung/produktmodell/leben" 
xmlns:ns23="http://www.bipro.net/namespace/versicherung/unfall" 
xmlns:ns24="http://www.bipro.net/namespace/sepa" 
xmlns:ns25="http://www.bipro.net/namespace/versicherung/haftpflicht" 
xmlns:ns26="http://www.bipro.net/namespace/schaden-objekte" 
xmlns:ns27="http://www.bipro.net/namespace/schaden-details" 
xmlns:ns28="http://www.bipro.net/namespace/versicherung/sach" 
xmlns:ns29="http://www.bipro.net/namespace/fahrzeug"
xmlns:ns30="http://www.bipro.net/namespace/gevo" 
xmlns:ns32="http://www.bipro.net/namespace/evb" 
xmlns:ns33="http://www.bipro.net/namespace/prozesse/foerderdaten" 
xmlns:ns34="http://www.bipro.net/namespace/prozesse/partner" 
xmlns:ns35="http://www.bipro.net/namespace/prozesse/schaden" 
xmlns:ns36="http://www.bipro.net/namespace/prozesse/vertrag" 
xmlns:ns37="http://www.bipro.net/namespace/prozesse/versicherung/vertrag/komposit" 
xmlns:ns38="http://www.bipro.net/namespace/prozesse/versicherung/vertrag/kraftfahrt" 
xmlns:ns39="http://www.bipro.net/namespace/prozesse/versicherung/vertrag/kranken" 
xmlns:ns40="http://www.bipro.net/namespace/prozesse/versicherung/vertrag/leben" 
xmlns:ns41="http://www.bipro.net/namespace/versicherung/tarifierung" 
xmlns:ns42="http://www.bipro.net/namespace/tools/iban" 
xmlns:ns43="http://www.bipro.net/namespace/transfer" 
xmlns:ns44="http://www.bipro.net/namespace/transfer/abrechnung" 
xmlns:ns45="http://www.bipro.net/namespace/transfer/gevo" 
xmlns:ns46="http://www.bipro.net/namespace/transfer/inkassostoerfall" 
xmlns:ns47="http://www.bipro.net/namespace/transfer/schaden-leistung" 
xmlns:ns48="http://www.bipro.net/namespace/transfer/schadenrueckfrage" 
xmlns:ns49="http://www.bipro.net/namespace/transfer/sepa" 
xmlns:ns50="http://www.bipro.net/namespace/transfer/vertrag" 
xmlns:ns51="http://www.bipro.net/namespace/kontext/beruf" 
xmlns:ns52="http://www.bipro.net/namespace/kontext/betriebsart" 
xmlns:ns53="http://www.bipro.net/namespace/kontext/fahrzeug" 
xmlns:ns54="http://www.bipro.net/namespace/kontext/partner" 
xmlns:ns55="http://www.bipro.net/namespace/kontext/schaden" 
xmlns:ns56="http://www.bipro.net/namespace/kontext/unternehmen" 
xmlns:ns57="http://www.bipro.net/namespace/kontext/vertrag" 
xmlns:xmime="http://www.w3.org/2005/05/xmlmime">             <ns43:Response>
            <ns2:BiPROVersion>2.6.1.0.0</ns2:BiPROVersion>
            <ns2:Status>
                <ns2:ProzessID>1530635989611</ns2:ProzessID>
                <ns2:Zeitstempel>2018-07-03T18:41:12</ns2:Zeitstempel>
                <ns2:StatusID>OK</ns2:StatusID>
                <ns2:Schwebe>false</ns2:Schwebe>
                <ns2:Meldung>
                    <ns2:ArtID>Hinweis</ns2:ArtID>
                    <ns2:MeldungID>04000</ns2:MeldungID>
                </ns2:Meldung>
            </ns2:Status>
            <ns43:Lieferung>
                <ns43:ID>1530636072667</ns43:ID>
                <ns43:Einstellzeitpunkt>2016-12-05T00:00:00</ns43:Einstellzeitpunkt>
                <ns43:Kategorie>120000000</ns43:Kategorie>
                <ns43:VerfuegbarBis>2019-12-05</ns43:VerfuegbarBis>
                <ns43:Transfer xsi:type="ns45:CT_GeVoTransfer" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

问候jcb

共有1个答案

耿俊
2023-03-14

我想通了。

问题不在于封送,而在于验证。

您已经将JAXB配置为根据指定的模式验证封送的XML:

    marshaller.setSchemas(
            new ClassPathResource("/xsd/bipro-nachrichten-2.6.0.xsd"),
            new ClassPathResource("/xsd/bipro-transfer-2.6.0.xsd"),
            new ClassPathResource("/xsd/bipro-transfer-gevo-2.6.0.xsd"),
            new ClassPathResource("/xsd/bipro-gevo-2.6.0.xsd"),
            new ClassPathResource("/xsd/bipro-prozesse-vertrag-2.6.0.xsd"),
            new ClassPathResource("/xsd/bipro-basis-2.6.0.xsd")
            );
    JAXBElement<String> value = new JAXBElement<String>(
            new QName("http://wwww.bipro.net/namespace/transfer/gevo","ArtID"), String.class, "value"
            );
    value.setValue("120000000");
    CTGeschaeftsvorgang ctVertragsauskunft = new CTVertragsauskunft();
    ctVertragsauskunft.setArtID(value);
 类似资料:
  • 我正在使用NIFI1.6,当试图修改传入的FlowFile的克隆时,会出现以下错误: [1]“找不到FlowFile的内容:...MissingFlowFileException...由ContentNotFoundException引起:找不到StandardClaim的contetn...由java.io.eOfException引起:null” [2]“FlowFileHandlingExc

  • 我检查以确保SDK找到SDK中包含的证书。所以我猜这是一个无效的证书。我现在不知道该怎么做了。有人知道如何解决这个问题吗?

  • 我有一组随机分布的二维点。我需要对这些点的一个小子集执行时间密集操作,但我需要首先找出我需要对哪些点执行这个时间密集操作。为了确定我需要什么点,它们必须通过一系列几何准则。 有没有一个有效的算法来找到什么2D点在一个圆扇区? 需要注意的是,我们的特定系统在浮点数学和三角学方面都很慢,所以一个解决方案涉及的较少,需要大量的浮点数学和三角学是更好的解决方案。

  • 问题内容: 当我使用以下代码实例化Hibernate时: 我有以下例外情况: org.xml.sax.SAXParseException:文档无效:找不到语法。org.xml.sax.SAXParseException:文档根元素“ hibernate-configuration”必须与DOCTYPE根“ null”匹配。引起原因:org.hibernate.MappingException:or

  • 我知道这个top已经有好几个帖子了,但是每个帖子都充斥着不同的方法,现在距离上一个帖子已经有一个月左右的时间了,现在有了Android Studio1.0.1,我想看看有没有人可以帮助我。 当我在安装应用程序并将其移动到我的应用程序文件夹后运行该应用程序时,我会得到以下消息--“Java Not found.Android Studio无法找到有效的JVM。” 我已经尝试了youtube和谷歌,甚