アガテナさんも大絶賛の創るJavaの正誤表の一番下にリクエストURLをHttpServletRequestで取得できる解説図があるんだけど、pathInfoが無かったので追加した図を作成〜 あと、getPathTranslated()で /workspace/hogeWebApp/hogePath のように、リクエストURLに含まれるpathInfoを表す絶対パスが取れる。
アガテナさんも大絶賛の創るJavaの正誤表の一番下にリクエストURLをHttpServletRequestで取得できる解説図があるんだけど、pathInfoが無かったので追加した図を作成〜 あと、getPathTranslated()で /workspace/hogeWebApp/hogePath のように、リクエストURLに含まれるpathInfoを表す絶対パスが取れる。
Servlet / JSP で GET/POST パラメータを受け取るときは request#setCharacterEncoding() を事前に読んでおく。 これは今時常識ですが、Tomcat でどうしても文字化けしてしまい、2時間くらいハマりました。 WebLogic ではどのバージョンでも setCharacterEncoding() で指定した文字セットでデコードしてくれるのに、Tomcat だと ISO-8859-1 として文字列が取得できてしまうという状況です。 Apache のバグデータベースにも Open 中のバグはなく、ぶらぶら調べてみたら@IT の記事に答えがありました! なんと Tomcat 5.x から GET パラメータに対しては setCharacterEncoding() が効かなくなったそうです。 ・@IT – Javaの文字化け対策FAQ(3) ■GET
Servlet 3.0 になってから HttpServlet クラスの @WebServlet 同様に、Filter クラスも @WebFilter というアノテーションが指定できるようになっていて、やたら便利です。 @WebFilter(dispatcherTypes = { DispatcherType.REQUEST }, urlPatterns = { "/*" }, initParams = { @WebInitParam(name = "encoding", value = "UTF-8") }) public class EncodingFilter implements Filter { private String encoding = null; @Override public void init(FilterConfig fConfig) throws Servle
Servlet3.0から、HttpServletRequest#getParts()というメソッドが追加され、ついにJavaEE標準でファイルアップロードが使えるようになりました。 JSFと連携する方法を調査したので、過程と結論をメモしておきます。 @MultipartConfigアノテーションの付いたServletが必要 前提として、getParts()を使うには@MultipartConfigアノテーションの付いたServletが必要です。 この制約のおかげで実はgetParts()はかなり使いにくくなっています。 JSFとは連携出来ない? 私が調査したのはJSFでアップロードファイルを取得する方法ですが、FacesServletには@MultipartConfigアノテーションは付いておらず、また、FacesServletはfinalで継承出来ません。 つまりFacesServlet
Tomcat 7も対応したServlet 3.0の変更点 後編:Tomcat 7の新機能で何ができるようになるのか?(2)(1/3 ページ) 前回の「Tomcat 7も対応したServlet 3.0の6つの主な変更点」では、「Tomcat 7」が実装したServlet 3.0の新機能のうち「Ease of Development(EoD、開発容易性)」「Pluggability and Extendibility(モジュール化と拡張性)」について紹介しました。今回はAsynchronous processing(非同期処理)、セキュリティ、Session Tracking、マルチパート対応を紹介します。 アノテーションによる非同期処理 Servlet 3.0から非同期処理が使えるようになりました。Servlet 2.5までは、Servlet上でスレッドを生成・起動し、リクエストやレスポンス
JSR315:Servlet3.0のPublic Reviewがでています。 Servlet3.0ではプラガブルWeb.xmlや Annotational Servlet マッピングが導入されます。 そこでアノテーションでのServletの設定方法を調べてみました。 Servlet3.0で導入されるアノテーションは以下の4つの アノテーションです。 import javax.servlet.annotation.WebServlet; //1. import javax.servlet.annotation.ServletFilter; //2. import javax.servlet.annotation.WebServletContextListener; //3. import javax.servlet.annotation.InitParam; //4. 1.サーブレットに付加
Proposed Final Draftのフェーズですが、Servlet3.0の新機能をさらっと調べてみました。 また、Servlet3.0はtomcat7でサポート予定です。 1. Asynchronous processing ・Servletで非同期処理が可能となります。 2. Modularity of web.xml ・アノテーションでServletの設定が可能となりますが、設定の更新やWeb.xmlファイルの分割を可能とするための仕様です。 3. File Upload ・標準仕様にてファイルアップロードがサポートされるようになります。 4. Support for loading static resources and JSP files from JAR files ・静的ファイルやJSPがJarファイルから取得可能となります。 5. Annotation based S
2010年3月14日 at 2:26 午前 1件のコメント Servlet 3.0 の新機能をプレゼン形式でまとめてみました。個々の機能に関する詳細は別途記載する予定ですが、ここでかんたんに概要を説明します。 Servlet 3.0 は Servlet 2.5 からかなり多くの改良が施されています。 Java SE 5 から利用可能になった、アノテーションを利用し、今まで web.xml に記載していた Servlet や Filter 等の設定をアノテーションで記載できるようになり開発生産性が大幅に向上しました。 また、プラガビリティの向上として、外部のフレームワークやライブラリの設定を web.xml 以外のファイル (web-fragment.xml) に記載できるようになったため、web.xml の肥大化を抑制でき、またフレームワークの設定管理が容易になっています。 その他では S
Writing scalable server applications in the Java™ programming language has always been difficult. Before the advent of the Java New I/O API (NIO), thread management issues made it impossible for a server to scale to thousands of users. The Grizzly NIO framework has been designed to help developers to take advantage of the Java™ NIO API. Grizzly’s goal is to help developers to build scalable and ro
Each version of Tomcat is supported for any stable Java release that meets the requirements of the final column in the table above. Tomcat should also work on any Java early access build that meets the requirements of the final column in the table above. For example, users were successfully running Tomcat 8 on Java 8 many months before the first stable Java 8 release. However, users of early acces
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く