2

私のウェブアプリでは、後で他のユーザーが利用できるようにするファイル(画像とドキュメント)をアップロードするユーザーがいます。

これがglassfish-web.xmlです

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE glassfish-web-app PUBLIC "-//GlassFish.org//DTD 
    GlassFish Application Server 3.1 Servlet 3.0//EN" 
    "http://glassfish.org/dtds/glassfish-web-app_3_0-1.dtd">
<glassfish-web-app>
    <parameter-encoding default-charset="UTF-8" />
<property name="alternatedocroot_1"
         value="from=/uploads/* dir=C:/glassfish31/glassfish/domains/domain1" />
</glassfish-web-app>

動作しますが、他のシステム(linux / windows)にアプリをデプロイしたいと思います。

Q1:ここにフルパスを記述しないようにする方法はありますか?少なくともLinux / Windows上で移植可能にしますか?

Q2:ファイルをアップロードするとき、primefacesを使用し、上記と同じディレクトリを指すハードコードされた文字列を使用してファイルをディスクに保存します。

public static final String ALTERNATE_DOC_ROOT_1 = "C:/glassfish31/glassfish/domains/domain1/uploads";

コードが代替docrootの絶対パスを検索して、ファイルを格納できるようにするAPIはありますか?

4

1 に答える 1

0

Q1:絶対パスをドットに置き換えるだけで、デフォルトで次のようになります。

C:/glassfish31/glassfish/domains/domain1

<property name="alternatedocroot_1"
     value="from=/uploads/* dir=." />

だから私はそれがLinuxでも動作すると思いますが、havntはテストしました

于 2012-10-17T07:03:20.010 に答える