1

XJCjaxb のクラスを使用して xsd からクラスを生成しようとしています。しかし、私は得ています

java.lang.IllegalArgumentException
原因: java.net.URISyntaxException: インデックス 2 の不透明部分に不正な文字:
E:\product.xsd

ただし、これは私の xsd が存在する正しいパスです。

誰でもこれで私を助けてください。

私のコードは次のようなものです:

File schemaFile = new File("E:\\product.xsd");
InputSource is;

is = new InputSource(new FileInputStream(schemaFile));
is.setSystemId(schemaFile.getAbsolutePath());
// Parse & build
sc.parseSchema(is);
4

1 に答える 1

0

systemId はファイルではなく URL です。

代わりに、次を使用します。

is.setSystemId(schemaFile.toURI().toString())

実際の例については、この回答を参照してください。ハッピーパスマングリング!

于 2011-01-12T01:28:19.480 に答える