私のロジックは、アプリケーション .war に埋め込まれたファイルをロードする必要があります。ファイルはアプリケーションのルートにあります。パスがハードコードされているため、私のマシンでは問題なく動作します。しかし、サーバーにデプロイすると、絶対パスが異なるため機能しません。
ClassLoader を使用しようとしましたが、null 参照を取得し、FacesContext を使用しようとしましたが、どちらも成功しませんでした。私はglassfish 3とMojarra 2.1.6を使用しています
私のプロジェクトツリーは次のようになります。
私のコードでは、次のようにファイルを参照しています。
File hmmFile = new File("/home/kirill/projetos/biosearchrefinement/pos-en-bio-medpost.HiddenMarkovModel");
ただし、これはアプリケーションをローカルで実行した場合にのみ機能します。リモート サーバーにデプロイすると、明らかにそのファイルのロードが停止します。このファイルをプロジェクトのルート フォルダに相対的にロードしたいと思います。
ありがとう!