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

Maven maven-jaxb2-plugin和HTTP 302

翟承志
2023-03-14

我使用Maven3.3.3和maven-jaxb2-plugin Version0.12.1从XSD模式生成java类。XSD所在的地址返回HTTP 302,插件抛出:

[ERROR] Error while parsing schema(s).Location [ http://www.gzs.si/e-poslovanje/sheme/eSlog_1-5_EnostavniRacun_signature.xsd{1,30}].
org.xml.sax.SAXParseException; systemId: http://www.gzs.si/e-poslovanje/sheme/eSlog_1-5_EnostavniRacun_signature.xsd; lineNumber: 1; columnNumber: 30; s4s-elt-character: Non-whitespace characters are not allowed in schema elements o
ther than 'xs:appinfo' and 'xs:documentation'. Saw 'Document Moved'.

是否可以指定xjc编译器遵循302到正确的链接,或者不去尝试下载XSD?

共有1个答案

耿学义
2023-03-14

我通过使用catalog.xml解决了这个问题:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>                                                                                                                                                                                  
<catalog xmlns="urn:oasis:names:tc:entity:xmlns:xml:catalog" prefer="public">                                                                                                                                                           
     <rewriteSystem systemIdStartString="http://www.gzs.si" rewritePrefix="https://www.gzs.si"/>                                                                                                                                        
</catalog>

然后在我的pom.xml中:

<plugin>
                <groupId>org.jvnet.jaxb2.maven2</groupId>
                <artifactId>maven-jaxb2-plugin</artifactId>
                <version>0.12.1</version>
                <executions>
                    ...
                </executions>
                <configuration>
                    <strict>false</strict>
                    <catalog>src/main/resources/jaxb/catalog.xml</catalog>
                    <catalogResolver>org.jvnet.jaxb2.maven2.resolver.tools.ClasspathCatalogResolver</catalogResolver>
                    <generateDirectory>${project.build.directory}/generated-sources/xjc</generateDirectory>
                    <verbose>true</verbose>
                </configuration>
            </plugin>
 类似资料:
  • 问题内容: 我想将多个xsd模式解组到 同一 文件夹下的不同程序包中。我尝试了两个插件,并且似乎都可以在这两种配置下正常工作,但是在使用maven- jaxb2-plugin的情况下,eclipse插件会无限期地生成类(由于= true),但是如果我不指定forceRegenerate,它将不会生成运行时完全没有第二组和第三组类,我的配置是否有问题? jaxb2-maven-插件 maven-ja

  • 我有多个xsd模式,我想将它们解组到同一文件夹下的不同包中。我尝试了这两个插件,两个插件似乎都能很好地处理这两种配置,但在maven-jaxb2-plugin的情况下,eclipse插件会无限期地生成类(因为=true),但是如果我没有指定forceRegenate,当我运行我的配置有任何问题吗? jaxb2 maven插件 maven-jaxb2-plugin 以及build helper ma

  • 如果您使用类似这样的插件来解析xsd文件,那么在从jdk7升级到JDK8时会遇到以下异常: 您如何使这个插件与JDK8一起工作?

  • 对于所有给定的XSD,jaxb2 maven插件不会生成包信息。java文件。(它只生成类)。我们仍然使用Java1.8 我的pom看起来像这样: 有什么想法吗?

  • 为了进行测试,我在模式中添加了以下内容, 之后XJC开始给出以下错误, 不支持的绑定命名空间“http://annox.dev.java.net”。也许您指的是“http://java.sun.com/xml/ns/jaxb/xjc”? xjc-p com.test-classpath=“jaxb2-basics-annotate-1.0.2.jar;tools-0.4.1.5.jar;comm

  • 我对Jaxb和这个maven-jaxb2插件非常陌生 这是我的. xsd文件: 这是我的。xjb文件: 当它生成时,它给出的java类有点像: 但是我不想为用户和用户列表重复相同的代码,我可以通过注释或定义正则表达式来做什么。请建议一些方法。 我只是想知道这段代码要写什么 因此,当它创建用户类时,它会显示@xmlRootElement(name='user'),而其他类的@xmlRootEleme