Динамическая генерация классов с использованием JAXB - PullRequest
1 голос
/ 29 декабря 2010

Я пытаюсь сгенерировать классы из xsd, используя XJC класс jaxb. однако я получаю

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);

1 Ответ

0 голосов
/ 12 января 2011

SystemId - это URL, а не файл.

Вместо этого используйте:

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

См. этот ответ для рабочего примера. Счастливого пути, покалечивающего!

...