私は開発のためにEclipseとTomcatを使用しています。 WebContent
フォルダー内のファイルのみがユーザーが閲覧できるようです。
そして、私はサーブレットでファイルを動的に作成する必要がありますが、どうすればWebContent
フォルダの実際のパスを取得できますか?
私はgetServletContext().getRealPath("")
を試してみました、しかし、それは日食のワークスペースのパスではなく、私のプロジェクトのパスを返します。このD:\git\Monitor\WebContent
誰もが解決策を知っているように私が何かをしたいと思いながら、それがこのD:\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\
、
のようなものだ?〜どうもありがとうサーブレットはどのようにユーザーが直接訪問できるファイルを作成できますか
0
A
答えて
0
私は教師の助けを借りて解決策を見つけました。 WebContent
の実際のパスを取得できないため、server.xml
を変更して、フロントエンド用のローカルパスを読み取り可能にします。この設定ファイルはServers
フォルダにあります。 server.xml
の下部はこのようです。
<Host appBase="webapps" autoDeploy="true" name="localhost" unpackWARs="true">
<Context docBase="Monitor" path="/Monitor" reloadable="true" source="org.eclipse.jst.jee.server:Monitor"/>
</Host>
そして、私はContext
ノードを追加し、それがこの
<Host appBase="webapps" autoDeploy="true" name="localhost" unpackWARs="true">
<Context docBase="Monitor" path="/Monitor" reloadable="true" source="org.eclipse.jst.jee.server:Monitor"/>
<Context docBase="D:\environment\apache-tomcat-9.0.0.M21-dev\user\logs" path="/Monitor/logs" reloadable="true" debug="" crossContext="true"></Context>
</Host>
のように、この方法だと、私はサーブレットでD:\environment\apache-tomcat-9.0.0.M21-dev\user\logs
にファイルを書き込むと、フロントエンドでURL localhost:8080/Monitor/logs/fileName
を使用してファイルを取得することができます〜
0
これはできません。 Webアプリケーション(WARファイル)は展開されずに、つまり圧縮されたアーカイブファイルとして展開される可能性があります。
一般的な回避策は、エンドユーザーが生成されたファイルをダウンロードできるようにするサーブレットを作成することです。あなたのサーバーFSのどこにでもあなたのファイルを置くことができるこの方法...
関連する問題
- 1. 変更できるファイルへの直接リンクを作成するにはどうすればよいですか?
- 2. NSDictionary。どのようにファイルから直接作成するのですか?
- 3. Railsは直接訪問
- 4. ユーザーがスクリーンショットを作成したかどうかはどのように知ることができますか?
- 5. どのようにしてワイアで直接Excelでテストレポートを作成できますか?
- 6. AST訪問者は、どのノードのプロパティを訪問しているのかをどのように知ることができますか?
- 7. ユーザーがテーブルのカスタムクエリを作成できるようにする
- 8. ユーザーがページをレールに作成できるようにする
- 9. Firebase:ユーザーが他のユーザーのアカウントを作成できるようにします。
- 10. ASM-Bytecode訪問者のカップルを簡単に作成できますか?
- 11. ユーザーがチェックリストを作成できるようにするプログラム
- 12. ユーザーはMicrosoft Vistaでサービスと直接対話できますか?
- 13. PHPでウェブサイト訪問者の総数をどのように見つけることができますか?
- 14. React Router:直接訪問の場合はログインしたユーザーをアカウントにリダイレクト
- 15. Angular2パラメータのURLが直接訪問したときに機能しない
- 16. ユーザーがAppStoreのようにダウンロードしてインストールできるように.ipaファイルを作成するには?
- 17. XCode 8から直接.xcarchiveを作成することはできますか?
- 18. どのように私はユーザーがユーザーのためだけに作成されたときに新しいフォルダを作成することができます
- 19. tsconfig.jsonファイルはどのように生成できますか?
- 20. Resharperは既存の領域に直接メソッドを作成できますか?
- 21. このクエリはどのように作成できますか?
- 22. このバットファイルはどのように作成できますか?
- 23. このクエリはどのように作成できますか?
- 24. レストランメニューのデータベースはどのように作成できますか?
- 25. Bot c#:どのように私は、直接の会話に再接続することができます
- 26. ASP.NETでどのようにアコーディオンコントロールを作成できますか?
- 27. Codeigniterオンライン訪問者私はどのように見ることができますか?
- 28. Macではどのように2つのファイルを接続できますか?
- 29. ユーザーがGoogleのアプリケーションエンジンからGoogleのデータストアに直接アップロードできるようにするにはどうすればよいですか?
- 30. systemdがサービスとして直接実行できるSpringブートjarファイルを作成するにはどうすればよいですか?
'Webcontent'フォルダのhtmlファイルは、' http:// localhost:8080/Monitor/html/index.html'のようなURLでアクセスできます。 – disinuo
私は、サーブレットがファイルを書き込むことができるように、WebContentの実際のパスを取得することが重要な問題だと考えました。 – disinuo
Eclipseの「WebContent」がWARアーカイブのルートになります。そこに書き込むことはできません...ファイルを格納するための安全で書き込み可能なパスを保持する設定プロパティを設定します。これはサーバーの環境によって異なります.... –