質問

JavaでXJCを実行するためにクラスを書いています。私のコードは次のとおりです。

 URL url = new URL("C:\\Users\\Simran\\Desktop\\books.xsd"); 
 SchemaCompiler sc = XJC.createSchemaCompiler();
 sc.parseSchema(new InputSource(url.toExternalForm()));
 S2JJAXBModel model = sc.bind();
 JCodeModel cm = model.generateCode(null, null);
 cm.build(new FileCodeWriter(new File("C:\\Users\\Simran\\Desktop\\books.xsd")));

ただし、これを実行すると、次のエラーが発生します。

Exception in thread "main" java.net.MalformedURLException: no protocol: books.xsd
    at java.net.URL.<init>(Unknown Source)
    at java.net.URL.<init>(Unknown Source)
    at java.net.URL.<init>(Unknown Source)
    at jaxbTest.Test1.main(Test1.java:22)

誰かがこれを手伝ってくれませんか?

役に立ちましたか?

解決

追加してみてください "file://" ファイルパスの先頭に。しかし、Bozhoが提案したように、ここでURLは必要ありません。

他のヒント

これは有効なURLではありません。準備することで有効にすることができます file:// プロトコルとして。

しかし、URLはまったく必要ありません。渡すことができます Reader (と同様に InputStream)に InputSource コンストラクタ。したがって、例:

new InputSource(new FileReader(path))

仮想コンソールを開いている間、上記を持っていました。

解決策:ブラウザで非常に安全なオプションを選択しています。

start-> java configuration-> security - cilick on-非常に高い。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top