• ベストアンサー

netscapeで強制終了してしまう。

noname#3852の回答

  • ベストアンサー
noname#3852
noname#3852
回答No.2

さらっと確認しただけですので、結論は言えませんが、「お礼」で記述された静的なHTML(HTML1)の内容をコピーしてHTMLファイルとして保存し、呼び出しましたが、私の環境では質問された現象は発生しませんでした。 そこで「環境のせい」では答えにならないので、気になっている点を記述します。 JavaScriptで「win.opener.location.replace(..)」とありますが、自分自身のlocationオブジェクトを参照するために、開かれたウィンドウ(win)の開いた親ウィンドウ(opener)の「location」と遠回しにせずに、「location(またはwindow.location)」だけで十分です。 加えてURLを変更するのにreplaceメソッド利用していることがもっと気になりました。この場合、locationオブジェクトのhrefプロパティを変更します。すなわち、   location.href="新URL" ; とします。 さらにいえば、replaceメソッドでは、引数が2つ(置換前、置換後の2つ)必要な気がしました。  また、ブラウザによって挙動が違う場合、他の回答者(nagataさん)同様サーバーサイドよりクライアントサイドを疑った方が解決の近道です。 たとえば、JavaScriptで疑わしい場合、適切な位置に(見当がつかない場合1行ごとに)alertメソッドを記述して警告ダイアログを表示させて、どのタイミングでエラーが発生するのか確認するといいでしょう。 以上、参考になりましたでしょうか。

関連するQ&A

  • セッション管理

    度々の質問で申し訳ないです…。 「セッション管理」がどうしてもよく分かりません。 書籍やWeb上でいろんな説明を読んで頭では理解したつもりなんですが 実際使う段になるとつまづいてしまいます。 そこで質問です。 html → Servlret1 → JSP1 → Servlet1 → JSP2 → JSP3 このような遷移の中でセッション管理を行いたいと思っています。 今、JSP2までは無事にセッションオブジェクトに保存されたデータを 参照することができていますが、JSP2からJSP3に移るときに nullが渡されてしまうのです。 一度、Servlet1 へ制御を戻さなければだめなのでしょうか? 具体的なコードを以下に掲載します。 よろしくお願いします。 ========= Servlet1 でセッション開始 //セッションを得る HttpSession thisSession = req.getSession(true); //セッションに保存 req.getSession(false).setAttribute("Login","true"); ========= JSP2 で受け取る /* ここではちゃんと"true"が返ってきます。 */ //セッションオブジェクトから取り出す String login = (String)request.getSession(false).getAttribute("Login"); ========= JSP3 で受け取る /* ここで null が帰ってきてしまいます。 String login = (String)request.getSession(false).getAttribute("Login");

  • netscape4.75で強制終了

    JSPに埋め込んだjavascriptでnetscape4.75が強制終了してしまうと言う 現象に出会って悩んでいます。 IE5.5、netscape6では、正常に動作します。 問題のjavascript部分です。 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <HTML> <HEAD> <SCRIPT Language="JavaScript1.2"> <!-- function centerWin(){ var l =(screen.width-950)/2; var t =(screen.height-700)/2; var win = window.open ("注意.htm", "sub", "resizable=yes,width=950,height=650"); win.opener.location.replace("http://特定のHP.html"); win.moveTo(l,t); win.focus(); } //--> </SCRIPT> </HEAD> <BODY onLoad="centerWin()"> </BODY> </HTML> 何をしているかと言いますと、呼び出されたHTMLのURLを「特定のHP.html」に 変更し、サブウィンドウを新たに作成し、サブウィンドウに「注意.htm」を 表示しサブウィンドウを画面中央に移動させてフォーカスを当てています。 このJSP内のHTML部分が呼び出されると、netscape4.75が強制終了してしまいます。その内容は、以下の通りでした。 例外:アクセス違反(0xc0000005),アドレス:0x00000002 デバッグするためにAlertを1行置きに埋め込み、アクセス違反を起こしている部分をつきとめ、win.opener.location.replace("http://特定のHP.html"); で 起こっていることが、わかりました。 そこで、この部分をlocation.href="http://特定のHP.html"; と変えることで、回避されると思われたのですが、結果は同じでアクセス違反 が、出てしまい、行き詰まっています。 少しでも情報提供していただければありがたいと思います。 よろしくお願いします。 最後に長文になりましたこと、御詫びいたします。

  • Netscape 7.1を終了する際にエラーが出ます

    ATOK15を使用している関係でしょうか、Netscape 7.1を終了する際下記のエラーが出ます。 「"0x4b1385ed" の命令が "0x01b972a0" のメモリを参照しました。メモリが"read" になることはできませんでした。 プログラムを終了するには [OK] をクリックしてください。」 Microsoft Office 2003 の文章校正機能を削除してみましたが関係ないようです。 対処策をお教えく下さい。

  • netscape7.1 DDE Server Windows:Netscapeアプリケーションエラー

    netscape7.1を使用しております。先日OSをwinMEからXPに換えましたところ以下のエラーが出るようになりました。 「DDE Server Windows:Netscapeアプリケーションエラー」 "0x4b1385ed"の命令が"0x01b273c0"のメモリを参照しました。メモリが"read"になることはできませんでした。 どうなっているのか全くわかりません。netscapeのFAQのホ-ムページ等も見ましたが見つかりませんでした。どなたかご指導お願い致します。

  • String定数プールと"==演算子"との関係。

    String str1 = new String("str1"); String str2 = new String("str1"); String str3 = "str1"; if(str1 == str2){    System.out.println("same!"); } if(str1 == str3){    System.out.println("same!"); } 上記のコードで実行すると、"same!"が実行されません。 Stringオブジェクトには定数プールがあって、新たにStringオブジェクトが作成されたとき、定数プールに入っているそれまでに存在していたStringオブジェクトの値と同じであったら、新たにStringオブジェクトを作らず、それまでにあったStringオブジェクトの参照を当てるということなのです。 それに従えば、str2,str3はstr1と同じStringオブジェクトを参照しているはずだから、if文の結果はtrueになるはずなんですが、、、。 適切な回答をいただきたく思います。よろしくお願いいたします。

  • netscapeの不具合?

    NetScape4.7を使用しWEBを閲覧しているとエラーが表示れます。 http://www.microsoft.com/japan/windows/default.asp 上記URLを表示させようとすると必ず現象が発生します。 エラーメッセージは 「windows:windows Home Page - Netscape:netscape.exe -アプリケーションエラー」と言うタイトルで 「"0x0040a1b2"の命令が"0x00000014"のメモリを参照しました。メモリが"read"になることはできませんでした。」と表示されます。 設定でJAVA スクリプトのチェックを外すと現象は発生しないのですが 対応策は無いのでしょうか?

  • 携帯サイト List split

    携帯サイトをJSPで作成しているのですが、IEであれば正常に表示される以下のコードがあります。 (SessionでInsertする項目を渡しています。) A: String dataPack = (String)session.getAttribute("dataPack"); String[] insertArray = dataPack.split(","); out.print(insertArray[0]); B: List param = (List)session.getAttribute("paramPack"); out.print(param.get(0)); このどちらも携帯サイトで試すとエラー500になります。 out.print()の部分をコメントアウトすると正常に動作します。 携帯サイトでは、これらのクラスは使用できないのでしょうか?(java.util?) また、使用できないのであればこれらに代わるクラスはありませんでしょうか?

  • 画面遷移でセッション切れになります

    いつもお世話になっております。 サーブレットを使用した画面遷移で jsp(ログイン)→servlet(ログイン確認)→jsp(メニュー) →servlet(データ取得)→jsp(データ一覧表示) という流れで画面遷移を行っていたのですが、 二つ目のjsp(メニュー)まではセッションが残っているのですが 次のservletに遷移した瞬間セッションがが切れてしまいnullを検出してしまいます。 はじめのservlet(ログイン確認)にて getAttributeを使用しセッションを残していたのですが、 セッション切れの原因がわかりません。 セッション切れする原因はなんなのでしょうか。 皆様の知恵をお借りできれば幸いです。

    • ベストアンサー
    • Java
  • nullについて

    public class Test0 { public static void main(String[] args) { String str="x"; str=null; if(((Object)str).equals(null)) { System.out.println("ok"); } else { System.out.println("out"); } } } を実行するとエラーになります str=null; をコメントアウトするとエラーでなくなります クラスオブジェクトがnullに等しいかどうか をするときにたとえそのオブジェクトがnullであっても エラーにならないようにするにはどうしたらいいのでしょうか? (tryは使用しない方法でおねがいします) また String x; とした直後にxはnullなのでしょうか? String以外に一般のクラスについてもお願いします

    • ベストアンサー
    • Java
  • 終了するときに・・・・・

    終了するときに毎回ではないのですが "0x58731531"の命令が"0x00000014"のメモリを参照しました。メモリが"read"になることはできませんでした。プログラムを終了するにはOKをクリックしてください。" という文章が出てきます。どうすればいいのでしょうか?教えてくださいお願いします。