2012-02-07 11 views
5

httpServletResponse()。setHeader( "custtype"、 "permanent")を正常に設定しましたが、httpServletResponse()。getHeader( "custtype")を取得しようとすると、私はcontrol + soaceを実行するとgetheaderメソッドが表示されません日食ではなく、文書ごとにhttp://docs.oracle.com/javaee/6/api/javax/servlet/http/HttpServletResponse.htmlにあります。なぜgetHeaderメソッドがEclipseでここに表示されないのか分かりません。どのように私はServletResponse()。getHeader(文字列)として応答からヘッダーを取得できますか?

どのように応答からヘッダーを取得できますか?

答えて

4

getHeaders(...)メソッドHttpServletResponseはServlet 3.0以降でサポートされています。、このバージョン以前はsetHeader(...)メソッドしか見つかりませんでした。

以前のバージョンでは、レスポンスをラップし、ラッパークラスにヘッダーを格納することができます。

+0

私のEclipseにはJava 1.6のコンパイラ準拠があり、私のプロジェクトにはバージョン3.0の 'Dynamic Web Module'ファセットがあります...なぜEclipseがjavax.servlet.http.HttpServletResponseに 'setHeader() – Black

+1

これはどうやってできますか?小さな例を教えてください。 – Salvo

-1

機能はHttpServletResponseクラスで利用できます。

+0

OPはそのクラスを使用していますが、あなたの答えは何ですか? – Eddie

2

http://docs.oracle.com/javaee/6/api/javax/servlet/http/HttpServletResponse.html#getHeader(java.lang.String)はこう述べていますので、

:サーブレット3.0

setHeaderは、サーブレット3.0で追加されました。おそらく、あなたのEclipseインスタンスは以前のバージョンのドキュメントを使用しています。

+0

もしset headerが見えるならば、get headerも正しく見えるはずですか?jre 6を使用しています。 –

+1

いいえ、必ずしもそうではありません。なぜそれは対称でなければならないのですか?ドキュメントでは、 'setHeader'のために' since 'を入れず、 'getHeader'はServlet 3.0からはっきりと始まります。応答にヘッダーを設定するのは、設定されたヘッダーを読み取るよりも一般的です。 –

0

Javaの以前のバージョンを使用している可能性があります。 getHeader(String)がバージョン3.0以降に追加されました。追加する場合は、Javaバージョンをアップグレードしてください。

+0

Javaのバージョンとは関係ありませんが、Servletの仕様はJavaとは独立してバージョン化されています。 – Eddie

関連する問題