サーブレットプログラムを作成しているサーバーにファイルをアップロードしたいのですが、ドキュメントがアップロードされるディレクトリの場所は、web.xmlのパラメータから取得する必要があります。私はこれまでweb.xmlを使用したことがなく、各サーブレットのエントリを作成することだけを知っています。 NetBeansで作成しているWebアプリケーションプロジェクトでこのファイルを表示できません。これを手伝ってください。ありがとうございました。
YOURPROJECT\web\WEB-INF
フォルダーに配置する必要があるため、フルパスは次のようになります。YOURPROJECT\web\WEB-INF\web.xml
編集(2015年8月21日)
duffymo からのコメントで反対票を獲得しました、私の答えは正しくありません。
そして、誤解を避けるために、段階的な写真で答えを説明することにしました。
Linux(Ubuntu)およびWindows(Windows 7)オペレーティングシステムでのNetbeansの動作を説明します。
Linux:
web
フォルダがそこにあることに注意してください。
このフォルダにweb.xmlファイルを手動で作成できます またはプロジェクトのコンテキストメニュー「新規->作成->その他」からNetbeansを使用して作成します。
ここで、YOURPROJECT\web\WEB-INF\
フォルダーをナビゲートして、web.xml
が存在することを確認します。
同じルールがWindowsオペレーティングシステムにも当てはまります。下の図を確認してください。
ここでweb.xmlを作成できます:
または、上記のようにNetbeansを使用します。
私はそれがとても遅いことを知っていますが、私は同じ問題を抱えていたので、ここに解決策があります:
Web.xmlを作成するには:
(Netbean 7.4 JDK 7でテスト済み)
web.xml
はJava EE 6
ではオプションです。したがって、デフォルトではNetbeans
にロードされません。 Netbeansからweb.xml
を手動でロードする必要があります。
プロジェクトを右クリックして、New
-> Other
-> Web
-> Standard Deployment Descriptor (web.xml)
-> Next
-> Finish
を選択してみてください。それに従うと、構成ファイルに作成されます。
ビデオチュートリアル: https://www.youtube.com/watch?v=UAMOeHtPwrc
最初にサーブレットページを作成する必要があります。そうすると、web.xmlがWEB.INF /に生成されます。
Web.xmlでcontext-parametersを使用できます
通常のJavaクラスでは、この静的フィールドを読み取ります。
<?xml version="1.0" encoding="UTF-8"?>
<web-app ...>
...
<context-param>
<description>directory where the document would be uploaded</description>
<param-name>directory</param-name>
<param-value>/tmp</param-value>
</context-param>
...
</web-app>
また、このコンテキストパラメータにはServletContext.getInitParameter
関数を使用してアクセスできます。
サーブレット3.0仕様を使用している場合は、アノテーションを使用できます( http://docs.Oracle.com/javaee/6/api/javax/servlet/annotation/package-summary.html )。 @WebInitParam
があなたが探しているものだと思います。