マンガでよめる痔のこと・薬のこと

web.xmlの記述方法を教えてください。
画面のフォームからの入力で、サーブレットに飛ばそうとしています。
IDEとしてeclipseを使っています

[環境]
tomcat5.5
eclipse3.2

[index.html] http://localhost:8080/newPackage/ にアクセス→画面OK → フォームを送信
<html>
<head>
<form method= POST action=newPackageClass>
<input type="text" name="id1" value="入力してください">
<input type="submit">
</form>
</head>
</html>

[server.xml]
<Context path="/newPackage" reloadable="true" docBase="C:\Documents and Settings\name\workspace\newPackage" workDir="C:\Documents and Settings\name\workspace\tomcatProject\work" />

[web.xml]
<servlet>
<servlet-name>newPackageServlet</servlet-name>
<servlet-class>newPackageClass</servlet-class>
</servlet>

<servlet-mapping>
<servlet-name>newPackageServlet</servlet-name>
<url-pattern>/newPackageClass</url-pattern>
</servlet-mapping>

[newPackageClass.javaおよびnewPackageClass.class]
場所:newPackageプロジェクト直下(デフォルトパッケージの中)

//適切なimport
public class newPackageClass extends HttpServlet {

public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException {
//略
}
public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException {
doGet(req, res);
}
}

このように実装したところ、「The requested resource (/newPackage/newPackageClass) is not available.」
と出ました。
このためserver.xmlは問題がなく、
web.xmlのservlet-classに問題があるような気がします。
もし原因が分かりましたら教えてくださいませ。

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

A 回答 (3件)

>>> CATALINA_HOMEフォルダはtomcat5.5の中には無かったのですが



中ではありません。tomcat5.5そのものです。たとえば、

C:\Program Files\Apache Software Foundation\Tomcat 5.5
です。このインストールディレクトリは、環境変数CATALINA_HOMEに登録しておくべきものです。

この回答への補足

環境変数CATALINA_HOMEとして
tomcat5.5フォルダのディレクトリを登録しました。
しかしまだ動きません。

そもそもjspページは表示できているし、
jsp→jspの遷移は問題なく動くので
やはりweb.xml(かserver.xml)の問題な気がします。

補足日時:2008/04/17 09:20
    • good
    • 0
この回答へのお礼

あと、tomcat起動時に次のエラーメッセージが出ます。

The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Sun\SDK\jdk\jre\bin;.;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\Program Files\Mail Enable\BIN;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\PROGRA~1\COMMON~1\Odbc\FILEMA~1;C:\j2sdk1.4.2_03\bin;C:\Program Files\Common Files\Adobe\AGL;c:\Program Files\Microsoft SQL Server\90\Tools\binn\;C:\Program Files\MySQL\MySQL Server 5.0\bin;C:\Sun\SDK\bin;C:\Sun\AppServer\bin
----------------------------------------------------------------
このままでもjspの表示はうまくいくので
問題ないかと思っていたのですが・・・

お礼日時:2008/04/17 10:06

・ 次のファイルが存在しませんか?



1.%CATALINA_HOME%\conf\Catalina\localhost\newPackage.xml

2.%CATALINA_HOME%\webapps\newPackage\META-INF\context.xml

あればこれらが優先されます。

この回答への補足

言い忘れましたが、
開発環境のECLIPSEはamateras2.0.3を用いて
インストールしました。

CATALINA_HOMEフォルダはtomcat5.5の中には無かったのですが、
どこにあるでしょうか?
よろしくお願いします。

補足日時:2008/04/15 08:53
    • good
    • 0

>>> 場所:newPackageプロジェクト直下(デフォルトパッケージの中)



クラスファイルnewPackageClass.classの配置が違うように思われます。

C:\Documents and Settings\name\workspace\newPackage\WEB-INF\classes

の直下においてみてください。

この回答への補足

ご解答ありがとうございました。
しかし例外が出ました。
上と同じものです。

ターゲットのクラスファイルが認識されない
理由が分からないです。
お願いします。

補足日時:2008/04/14 21:55
    • good
    • 0

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


人気Q&Aランキング