2017-07-27 6 views
0

私はアプリケーションWARに静的なXSDファイルを追加していますが、それを 'リソース'に取り込めません。私はそれで生きることができますが、FileSystemResourceを使ってファイルにアクセスできないようです。 ファイルはWARの下に 'tools/schema/model.xsd'として存在します。私は以下のバリエーションを試してきましたが、うまくいきません。「リソース」以外のファイルにアクセスするにはどうすればよいですか?

new FileSystemResource("/tools/schema/model.xsd"); 
    new FileSystemResource("tools/schema/model.xsd"); 

私は間違っていますか?

答えて

0

私は困惑しています。あなたは戦争でresources-directoryを持つ必要はありません。 maven war-pluginを使用すると、src/resourcesディレクトリからすべてが/ WEB-INF/classesに置かれ、WARに含まれている任意のクラスで呼び出される.getResource()を介してアクセスできます。

追加のリソースが必要な場合は、maven-resource-pluginを使用して最初にクラスにコピーして、war-pluginが正しくWARに挿入できるようにします。 は、MyClassのは

MyClass.getResource("'tools/schema/model.xsd") 

は、URLを返す必要がありますあなたのWAR内のJavaクラスであると言うか、getResourceAsStreamを直接読み取ることができるInputStreamを返します。

関連する問題