質問

Jetty 7.2に展開したいシンプルなサーブレットを作成しました。 Jettyが実行されており、JSPページを提供することができます http://localhost:8080/jonas/test.jsp. 。私は桟橋を始めました java -jar start.jar 指図。

コンパイルされたサーブレットを保存しました MyServlet.class<my_jetty_directory>/webapps/jonas/WEB-INF/classes/MyServlet.class そして、そのサーブレットにアクセスしようとしました http://localhost:8080/jonas/servlets/MyServlet しかし、私は取得します HTTP 404 エラー。

HTTP ERROR 404

Problem accessing /jonas/servlet/MyServlet. Reason:

    Not Found

私がしなければならないことはもっとありますか?桟橋ファイル構造のどこに配置する必要がありますか MySerlvet.class?


私は今、シンプルを作成しました web.xml ファイルして保存しました <my_jetty_directory>/webapps/jonas/WEB-INF/web.xml 私の桟橋を再開しましたが、うまくいきません。これが私のシンプルです web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app>
  <servlet>
    <servlet-name>MyServlet</servlet-name>
    <servlet-class>MyServlet</servlet-class>
  </servlet>
</web-app>

私はJSPに同様の問題を抱えていましたが、それは今解決されています: jetty webサーバーにJSPファイルを展開するにはどうすればよいですか?

役に立ちましたか?

解決

サーブレットをマッピングする必要があります web.xml, 、使用 <servlet><servlet-mapping>, 、または注釈を付けます @WebServlet サーブレット3.0を使用する場合。

他のヒント

jettyサーバーのインストールフォルダーまたはlibまたはbinまたはconfサブフォルダーにconfigまたはreadme.txtファイルがあるはずだと思います。それらを読んでください、そして、あなたはあなたのクラスを置くために特定のディレクトリを取得します。 Jetty Serverでクラスディレクトリを設定するか、少なくともそれを覚えておいてください。これらは、Jettyサーバーが実行されるときに実行されるクラスになります。

ClassPathに関しては、Javaには、指定フォルダーからクラスを実行するように言われる方法があります。 A-を追加できます。

* "." at the end of classpath variable in WINDOWS NT platform
* set CLASSPATH=%CLASSPATH%;. in command mode or AUTOEXEC.bat of other WINDOWS
* set CLASSPATH=%CLASSPATH%:. and export CLASSPATH in linux

これとともに、 "。" -FullStop、ClassPath変数では、その現在のDirecoryのクラスをJavaコマンドを実行するようにします。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top