1

コードを使用してユーザーログインフォームを作成しています。問題は、Internet Explorer からはログインできるが、Firefox からログインすると、同じコードが画面に HTML バージョンのコードを出力することです。Javaフィルターを使用しています。

以下のコードが画面に出力されています。

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html  "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html>
    <head>
<meta HTTP_EQUIV="pragma" content="no-cache"/>
<meta HTTP_EQUIV="cache-control" content="no-cache" />
<meta HTTP_EQUIV="cache-control" content="no-store"/>
<meta HTTP_EQUIV="expires" content="0" />
<title>ABC</title>
<script language="javascript" > 
 if(window.parent.length > 0) {
         var url = "/java/ehr.Home";
         var par = "null";
         if(par != "" && par != "null") { 
                 url = url + "?" + par ;
         }
         if(url != "") { 
                 window.parent.location = url; 
         }
 }
</script>
</head>
<frameset rows="111,*"  framespacing="0" frameborder="0" border="0">
<frame name="top" src="ehr.cms.PageBuilder?Page=topNavigationLegacy:/manager/home.xml" marginwidth="0" marginheight="0" scrolling="no" noresize="">
<frame name="middle" src="ShowLoading?LanguageCode=en&msgid=IDL_LOADING&redirect=/java/ehr.cms.PageBuilder?Page=topNavigationLegacy:/manager/home.xml" marginwidth="0" marginheight="0" scrolling="auto" noresize="" />
<frame name="middle" src="ehr.cms.PageBuilder?Page=/manager/home.xml" marginwidth="0" marginheight="0" scrolling="auto" noresize="">
<noframes>
<body>
<p>Please use a browser which is able to show FRAMESETS!</p>
</body>
</noframes>
</frameset>
</html>

Javaフィルターでコンテンツタイプ「text/html」も設定しましたが、同じ問題が発生しました。誰でも私の問題を調べることができますか。

4

1 に答える 1

0

お使いの Web サーバーが、正しくないコンテンツ タイプの HTTP 応答を配信しているようです。これは、ブラウザのページ情報ページを見ることで確認できます。[ツール] > [ページ情報] メニュー エントリを使用するか、CTRL-I を使用します。Firefox がページ タイプを "text/plain" のようなものと認識していることが示されることを期待しています。

「ツール」メニューには、応答に実際に何が含まれているかを確認できる他のツールがあります。つまり、「content-type」ヘッダーに含まれるもの。

IE がページをレンダリングする理由は、基本的にサーバーからの正しくない HTTP 応答をより寛容にするためだと思います。


Javaフィルターでコンテンツタイプ「text/html」も設定しましたが、同じ問題が発生しました。

どうやら、それは適切に機能していません。(おそらく正しく行っていませんか?) ブラウザー側で実際の応答ヘッダーを確認すると、これを検証するのに役立ちます。

于 2012-10-15T13:01:44.513 に答える