2012-01-02 12 views
0

私は以下のように春のXMLファイルにClass-Path属性を使用し、プロパティは、アプリケーションでファイルをサーバが見えない。この場合クラスパス

<bean class="com.fritolay.suppliernet.common.lastresorthandler.impl.SingletonPropertiesRepository"> 
<property name="propertiesFile" value="classpath:ecr/sample.properties" /> 
</bean> 

私の質問は、2つのモジュール[1.Web Project 2.Java Project]があることです。あなたは二つの異なるプロジェクトを持っている場合は

PropertyAccessException 1: org.springframework.beans.MethodInvocationException: Property 'propertiesFile' threw exception; nested exception is java.io.FileNotFoundException: class path resource [ecr/sample.properties] cannot be resolved to absolute file path because it does not reside in the file system: zip:C:/Oracle/Middleware/user_projects/domains/sample/servers/AdminServer/tmp/_WL_user/_appsdir_supplier-net_ear/6e86rt/sample-service.jar!/ecr/sample.properties 
+0

'ecr'パッケージのプロパティファイルはありますか? Bean自体がクラスパスリソースを処理していますか? –

+0

はいプロパティファイルはecrパッケージにあります。Beanクラスの中のその処理リソースファイルは以下のとおりです。 public void setPropertiesFile(resource propertiesFile)throws IOException { this.repository.setPropertiesFiles(Collections.singletonMap( DEFAULT_KEY、propertiesFile)); } – Ran

+0

/WEB-INF/classesディレクトリに展開されているプロパティファイル、またはクラスがパックされているJARファイル(存在する場合)の中に配置されているプロパティファイルを確認しましたか? –

答えて

1

あなたのJavaエンジンは、この場所であなたのファイルを探しています(あなたのエラーで読み取り):あなたが見ることができるように

C:/Oracle/Middleware/user_projects/domains/sample/servers/AdminServer/tmp/_WL_user/_appsdir_supplier-net_ear/6e86rt/sample-service.jar!/ecr/sample.properties 

は、!マークは、それが(一時的なJARファイル内のファイルを探している意味確かに、IDEアーティファクト)。

IDE(または展開用に選択したツール)がJAR内のプロパティファイルを含まないため、エラーが発生しているようです。 それが原因であってもよい:コンパイル時に

  • 、あなたのツールが コンパイルターゲットディレクトリにこれらのrecourcesをコピーされていません(usualy /classes
  • 時の梱包で、あなたのJAR構築ツールは 含めていませんJarにリソースをproperties、避けてください。

どちらの場合でも、使用するIDEまたはツールに応じて、ビルドおよび展開の構成を確認する必要があります。

2

は、あなたが確認する必要があります:私は次のエラーを取得しています私のアプリケーションを展開するとき、私は、Webプロジェクトでは、このXMLファイルを定義し、Javaプロジェクトのsrc folder.But下のプロパティファイルを配置していますウェブプロジェクトをデプロイすると、Javaプロジェクトのコードにアクセスできます。爆発的な方法で作業している場合は、javaプロジェクトウェブプロジェクトからアクセスする必要があります。日食は簡単です。

+0

です。ありがとう、実際には私はこのアプリケーションをeclipseで構築してビルドしたいと思っています。日食で私は 'AddProject'の依存関係を簡単に知ることができます。 – Ran

+1

次に、スプ​​リング設定で戦う前に、 ** sample.properties **を生成している(または出ていない)が、WEB-INF内のecrフォルダにあります。私のeclipseのアドバイスは、あなたが爆発的な方法で作業していた場合でした。 – jenaiz