数週間悩んで解決できませんでしたので、投稿させて頂きました。
環境は以下の通りです。
OS :WindowsNTServer4.0(SP6)
WebServer :IIS4.0
Servlet-Engine :Tomcat3.2.1(バイナリ版)
JavaVM :J2SE SDK 1.3.02
IIS-Tomcatリダイレクタ:isapi_redirect.dll

設定の仕方は、
http://www.dmz.hitachi-sk.co.jp/Java/Tech/servle …
の通りに行いました。
設定終了後、http://localhost/examples/servlets/ は正常に表示されたのですが、PCを再起動後にもう一度上記のページを表示すると「ファイルが見つかりません」のエラーが発生してしまいます。
他に設定しなければならない箇所があるのでしょうか?
教えてください。
宜しくお願いします。

このQ&Aに関連する最新のQ&A

A 回答 (4件)

No.3で回答させて頂いたmisokaです。



ポート8007のログ(Q2.)は、Contextのログ(Q1.)と
同じコンソールに出るはずのものです
(が、IISの場合は試したことがないので、ちょっと
曖昧ではあります(すみません)。
とはいえ、この当たりの動作がApacheとIISとで
変わってしまうとはあまり思えないのですが...)。

いちおう、デフォルト8007ポートは、WebサーバとTomcatと
の連携を行うためのポートです。これがオープンしていないと
TomcatはWebサーバにアドオンできません。
またこのポートは、Tomcatを終了するときにも使うそうですので、
おそらく正常に動いている場合は、オープンするはずのもの
ではないか、と思います。
もっとも、8007はあくまでデフォルト値で、server.xmlの
設定の仕方如何で変更できるようですが。

ということで
コンソールで PoolTcpConnectorのログが確認できないなら、
Tomcatが起動の途中で死んでしまっていると考えてよいのでは?
と思います。
(死因は何でしょうか? 思い当たるフシはないでしょうか?)
すくなくとも、Apacheとの連携の場合はそう言えると思いますし、
IISでも、おそらくこの当たりの動作は変わらないと思います。

ちなみに、
Apacheとの連携はWin98SE上でやってみましたが、ナンにも考えずに、
ただインストールして起動しただけでも動作しました。
(もちろん、再起動後も動作しました)
こういう事例を聞くと、Apacheの方が相性がいいような気がしますし、
Apacheとの連携の方がよくあるパターンですので、
万一のトラブルにも、対応の見通しがよくなると思いますが、
詳しい情報は残念ながら、もっていません。

この回答への補足

misokaさん、回答有難うございました。
No.3のQ2を確認したところ、PoolTcpConnectorの8007ポートログは
出ていました。
また、No.2の回答に対する補足に書き込みましたが、
http://localhost:8080/examples/servlets/ は正常に表示されました。
原因は、サーバー名を間違って指定していました。
という事は、IISとTomcatの連携に失敗しているという事ですよね?
何か解決策をご存知でしょうか? 良ければ教えて頂くと助かります。
宜しくお願いします。

補足日時:2001/06/18 13:57
    • good
    • 0
この回答へのお礼

他のサイトを調べていましたら、設定が抜けているのを発見しました。
iis_redirect.regを編集して"log_level"="error"と変更する事に
より解決する事が出来ました。大変参考になりました。有難うございました。

お礼日時:2001/09/05 09:07

基本的な確認事項なので恐縮ですが、


startup.bat実行時のコンソールに、

 ContextManager: Adding context Ctx( /examples )

というログは出ているでしょうか?
また、PoolTcpConnectorが8007ポート(だったかな?)
を開いている、と同じログに出ているでしょうか?

それから、

 %TOMCAT_HOME%\webapps\examples\servlets\index.html

は、ちゃんと存在しているでしょうか? また、
URLを http://localhost/examples/servlets/index.html
(index.htmlを)補って書いてみるとどうでしょうか?

IIS-Tomcatのことについて詳しいわけではないので、
よく分からないのですが、
arataさんの実験からは、Tomcatの起動に失敗したという
ケースの他に、IISとの連携にコケている、というケースも
考えられるような気がします
(IISと連携させる設定によって、Tomcatが80や8080ポートを開かない場合。
IIS+Tomcatで404エラーだということは、そういうことだと思います)。
そうなると、原因がIIS側や連携部分にある可能性も
考えられそうです。

この回答への補足

misokaさん、回答有難うございました。
早速、ご指摘通り確認してみました。

<確認事項>
Q1:startup.bat実行時のコンソールに
  ContextManager: Adding context Ctx( /examples )
  というログは出ているのか?
Q2:PoolTcpConnectorが8007ポートを開いていると同じログに出るのか?
Q3:x:\webapps\examples\servlets\index.htmlは存在するのか?
Q4:URLを http://localhost/examples/servlets/index.htmlと対象ファイルを
  補って見るとどうなるか?

<確認結果>
A1:コンソールからきちんと確認できました。
A2:ログの場所が分からなかった為、確認出来ませんでした。
A3:index.htmlファイルは上記のQ3に示されたパスに存在していました。
A4:404「ページが見つかりません」エラーが発生して、表示出来ませんでした。

以上のような結果になってしまいました。
私が行ったインストールの方法が誤っているのでしょうか?
また、実際運営するWebサーバーのOSがWindowsNTServer4.0である為、
WebサーバーにIIS4.0を選択したのですが Apache(Win版) の方がTomcatと相性が
いいのでしょうか? お手数をお掛けしますが、教えてください。

補足日時:2001/06/15 08:51
    • good
    • 0

IISではなく、Windows2000でApache+Tomcatで動かしているので、自信はないのですが。




startup.batで起動されているのですね?

IIS経由でなく、TOMCATで、直接
http://localhost:8080/examples/servlets/
のページを見た場合は表示できますか?

表示できなければ、tomcatの起動に失敗しています。
表示できれば、IISとの連携に失敗しています。

また、tomcat、IISの順に起動した場合、状況は変わりますか?

この場合、tomcatをサービス化すると直るかもしれません。サービス化については、検索エンジンで探すといっぱいでてきますので、それを参照してください。(一応紹介しておきます。)
サービス化した場合で、JDK1.3以降を使用していると、ログオフでTomcatが停止してしまうバグが発生します。JDK1.31であれば、wrapper.propertiesのwrapper.cmd_line で、javaに渡すオプションに-Xrsを追加すると、これを回避できます。(記述する位置を間違えるとエラーになって起動しなくなるので注意して下さい)

参考URL:http://www5b.biglobe.ne.jp/~y-tomy/tomcat/fig_in …

この回答への補足

申し訳ありません。
昨日の書き込みで http://localhost:8080/examples/servlets/
が表示出来ませんでしたと書きましたが、URLのサーバー名を間違って指定
していました。正しくサーバー名を指定すると正常に表示されました。
しかしながら、http://localhost/examples/servlets/ と(8080部分を削除)
指定すると404「ページが見つかりません」のエラーが発生します。
この現象は、TomcatとIISの連携に失敗しているとの事ですが、IIS側のどの
部分を再設定すると解消されるのでしょうか?

補足日時:2001/06/15 09:45
    • good
    • 0
この回答へのお礼

書き込みが遅くなってしまいまして、申し訳ありません。
回答有難うございました。
早速、arateさんがおっしゃっている様に、http://localhost:8080/examples/servlets/へアクセスしたところ
「サーバーが見つかりません」というエラーが発生し、期待したページを
表示する事が出来ませんでした。この原因は、Tomcatの起動に失敗している
との事ですが、どのような対処を行えば正常にTomcatを起動する事が出来る
ようでしょうか?

お礼日時:2001/06/14 16:39

サーバーが立ち上がってないから、ページが表示されないのでは?


と思います。

自動起動するのなら、コントロールパネルのサービスから
設定できる様な気もします。
NTサーバーって使ったことがないから、間違ってるかもしれないですけど

この回答への補足

PC再起動後、IISはサービス開始しており、またTomcatは /bin/startup.bat
を実行しております。 
この状況でサンプルの http://localhost/examples/servlets/ にアクセス
すると404のエラー「ページが見つかりません」が発生します(上記質問のエラー
メッセージ「ファイルが見つかりません」は誤りでした。すみません)。
どこを再設定すれば、404エラーが発生せずにアクセスできるのでしょうか?

補足日時:2001/06/08 08:38
    • good
    • 0

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

QTomcat5.5でhttp://localhost:8080/myApp/でディレクトリ一覧が表示されない。

はじめまして。javaの初心者です。先ほども
Tomcat5.5の設定についての質問をさせていただいた
のですが、質問の回答者様のご返事を待たずに改めて
質問をさせていただくのは、申し訳ございません。
現在jdk1.5.0_06とTomcat 5.5.17をインストール
していまして、Tomcatの設定で苦戦しております。
http://localhost:8080/myApp/を入力すると
「HTTPステータス 404 - /myApp/」と表示されて
ディレクトリ一覧が表示されないのに
http://localhost:8080/myApp/test.htmlや
http://localhost:8080/myApp/testでサーブレット
が表示される状態になっています。おそらく
コンテキストの設定が問題になっていると思うのです
がどのようにしたら解決するのがわかりません。
どうか教えてください。お願いします。

Aベストアンサー

%CATALINA_HOME%\conf\web.xml

に以下の記述があると思います。
そのパラメータに「listings」というのがあります。
これがtrueであれば一覧は表示されfalseであれば表示されません。
ココをもう一度確認してみてください。

<servlet>
<servlet-name>default</servlet-name>
<servlet-class>
org.apache.catalina.servlets.DefaultServlet
</servlet-class>
<init-param>
<param-name>debug</param-name>
<param-value>0</param-value>
</init-param>
<init-param>
<param-name>listings</param-name>
<param-value>true</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>

%CATALINA_HOME%\conf\web.xml

に以下の記述があると思います。
そのパラメータに「listings」というのがあります。
これがtrueであれば一覧は表示されfalseであれば表示されません。
ココをもう一度確認してみてください。

<servlet>
<servlet-name>default</servlet-name>
<servlet-class>
org.apache.catalina.servlets.DefaultServlet
</servlet-class>
<init-param>
<param-name>debug</param-name>
<param-value>0<...続きを読む

QIISとTomcatを協調させるisapi_redirect.dllはどこで配布されてる?

IISとTomcatを協調させるにはTomcatのウェブサイトよりisapi_redirect.dll.zipを/win32/i386フォルダよりダウンロードしろと書かれていますが、Apache Tomcatのウェブサイトの構成が変更されたのかダウンロード先が分かりません。

http://jakarta.apache.org/builds/tomcat/release/v3.1/bin/win32/i386/
にisapi_redirect.dll.zipがあったと思われるのですが、現在のダウンロード先が分かる方いらっしゃいませんか?

Aベストアンサー

TomcatとWebサーバのコネクタはJKまたはJK2です。
以下の所からダウンロードできます。

http://sunsite.tus.ac.jp/pub/apache/jakarta/tomcat-connectors/jk2/binaries/

Qhttp://www.skuare.net/test/horizont

http://www.skuare.net/test/horizontinyscrolling.html
上記のサイト様で使用しているjavascriptを使ってデザインを考えています。

上記のサイト様は、メニューとコンテンツが同じフレーム内(階層)にありますが、
これを、メニューとコンテンツを別々のフレームに入れ(コンテンツ部分はインフレームに入れたいです。)、メニューを常に見える状態にしたいです。
(添付画像参照)

上記の状態までは、問題なくページを作れています。
しかし、色々試してはみたのですが、フレームに入れるとなかなかうまく行かず困っています。
どのように直せば良いでしょうか…

どうぞ宜しくお願い致します。

Aベストアンサー

このjavascriptを使って親からiframeコンテンツ内部をスクロール制御するよう
直すのは結構たいへんそうです。

私なら、iframeコンテンツのhtmlの中に、このjavascriptと、
スクロールナビゲーションリンクのタグを非表示で、そのまんま
設置しておいて、


親にも設置したナビゲーションリンクから、iframe内のナビゲーションリンク
をjavascriptで突っつきます。

Qhttp://news.com.com/ みたいなナビゲーションは?

http://news.com.com/ のサイトの上部にあるような、マウスを持っていくとその下にサブメニューがポンポンと出てくるような動きは、どのような仕組みでやっているのでしょうか?
ヒントだけでも教えてください。お願いします。

Aベストアンサー

CSS と JavaScript を組み合わせています。
(CSS や JavaScript を無効にして、動作の違いを確認。)

たぶん、CSS で要素の表示するしないを設定し、
JavaScript でそれを制御しているのでしょう。

Qhttp://www.ajaxmail.jp/のAjaxmailを使用

http://www.ajaxmail.jp/のAjaxmailを使用いたしております。リンクをクリックするとメールフォームがポップアップで表示されるのですが、このフォームのスクリプトに対して最初のリンクのクリックと同時にPOSTでデータを送りたいと思っておりますがうまく行きません。

ソースは以下


<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="Content-Script-Type" content="text/javascript" />
<title>AjaxMail:Ajaxを活用したフリーPHPメールフォーム</title>
<link rel="stylesheet" type="text/css" href="css/lightview.css" />
<script type="text/javascript" src="js/protoculous-effects-packer.js"></script>
<script type="text/javascript" src="js/lightview.js"></script>
</head>

<body>

<div style="margin:200px">

<form name="form1" action="http://xxxx.com/ajaxmail-utf-8/ajaxmail/sample.php" method="post">
<input type="hidden" name="str" value="xxxx@xxxx.xx.xx">
</form>

<a href='JavaScript:document.form1.submit()' rel='iframe' title='送信フォームタイトル :: 送信フォーム説明文 :: width: 750, height: 600' class='lightview'>text1</a>
</form>

フォームをポップアップさせるJavaScriptとPOSTを制御するJavaScriptとの組み合わせの仕方がよくわかりません。

恐れ入りますがどなたかご教授頂けると幸いです

http://www.ajaxmail.jp/のAjaxmailを使用いたしております。リンクをクリックするとメールフォームがポップアップで表示されるのですが、このフォームのスクリプトに対して最初のリンクのクリックと同時にPOSTでデータを送りたいと思っておりますがうまく行きません。

ソースは以下


<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="Content-Script-Type" content="text/javascript" />
<title>AjaxMail:Ajaxを活用したフリーPHPメールフォーム</title>
<li...続きを読む

Aベストアンサー

===続き===
<p><strong>内容</strong><br />
<textarea cols="50" rows="10" name="内容" id="内容">
</textarea>
</p>
<p><input type="submit" value="確認する"></p>
</form>
<script type="text/javascript" language="javascript">
function ajax_popup(no){
var form_data,Kanrisya_Mail;
switch(no){
case 1:
Kanrisya_Mail="hogehoge1@fuga.fuga";
form_data="1";
break;
case 2:
Kanrisya_Mail="hogehoge2@fuga.fuga";
form_data="2";
break;
case 3:
Kanrisya_Mail="hogehoge3@fuga.fuga";
form_data="3";
break;
default:
Kanrisya_Mail="";
form_data="";
break;
}
document.getElementById("E-mail").value=Kanrisya_Mail;
document.getElementById("内容").value=form_data;
Lightview.show({href:'#ajaxForm',rel:'inline',title:"送信フォーム",
options:{autosize:true,topclose:true}});
document.observe('lightview:opened',function(){
new Spry.Widget.ValidationTextField("checkText1", "none", {validateOn:["change"]});
new Spry.Widget.ValidationTextField("checkText2", "email",{validateOn:["change"]});
});
}
function ajaxsend(){
var form_data={"E-mail":document.getElementById("E-mail").value,
"内容":document.getElementById("内容").value};
Lightview.show({href:'./ajaxmail/sendmail.php',rel:'ajax',
options:{autosize: true,topclose:true,ajax:{parameters:form_data,}}
});
}
</script>
</body>
</html>

===続き===
<p><strong>内容</strong><br />
<textarea cols="50" rows="10" name="内容" id="内容">
</textarea>
</p>
<p><input type="submit" value="確認する"></p>
</form>
<script type="text/javascript" language="javascript">
function ajax_popup(no){
var form_data,Kanrisya_Mail;
switch(no){
case 1:
Kanrisya_Mail="hogehoge1@fuga.fuga";
form_data="1";
break;
case 2:
Kanrisya_Mail="hogehoge2@fuga.fuga";
form_data="2";
break;
case 3:
Kanrisya_...続きを読む


人気Q&Aランキング

おすすめ情報