2017-03-28 7 views
0

私はチュートリアルを見てeclipseでjavaファイルに次のコードを書きました。私は、サーバー上でこれを実行しようとすると、それは私のコードは実行中のサーブレットエラー

package com.shaby.newservletdemo; 

import java.io.IOException; 
import java.io.PrintWriter; 

import javax.servlet.Servlet; 
import javax.servlet.ServletConfig; 
import javax.servlet.ServletException; 
import javax.servlet.ServletRequest; 
import javax.servlet.ServletResponse; 

public class servletInterface implements Servlet{ 
    ServletConfig servletConfig= null; 
    @Override 
    public void destroy() { 
     // TODO Auto-generated method stub 
     System.out.println("Servlet Destroyed."); 
    } 

    @Override 
    public ServletConfig getServletConfig() { 
     // TODO Auto-generated method stub 
     return servletConfig; 
    } 

    @Override 
    public String getServletInfo() { 
     // TODO Auto-generated method stub 
     return "Version 1. 2016-2019"; 
    } 

    @Override 
    public void init(ServletConfig arg0) throws ServletException { 
     // TODO Auto-generated method stub 
     this.servletConfig= arg0; 
     System.out.println("Servlet Initialized"); 
    } 

    @Override 
    public void service(ServletRequest arg0, ServletResponse arg1) throws ServletException, IOException { 
     // TODO Auto-generated method stub 
     arg1.setContentType("text/html"); 
     PrintWriter pw= arg1.getWriter(); 

     pw.println("<html><body>"); 
     pw.println("Hello Service has been done!!"); 
     pw.println("</body></html>"); 
    } 

} 

は実行部のいずれかの問題がある場合、または私は何かが足りない

Http: 404 error 
Type Status Report 

Description The origin server did not find a current representation for the target resource or is not willing to disclose that one exists 

私に示している?? 私はEclipse IDEでこれを実行しています。 Tomcat 9サーバーを使用しています。あなたのweb.xmlが設定

web.xmlの

<?xml version="1.0" encoding="UTF-8"?> 
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1"> 
    <display-name>servletsdemo</display-name> 
    <welcome-file-list> 
    <welcome-file>index.html</welcome-file> 
    <welcome-file>index.htm</welcome-file> 
    <welcome-file>index.jsp</welcome-file> 
    <welcome-file>default.html</welcome-file> 
    <welcome-file>default.htm</welcome-file> 
    <welcome-file>default.jsp</welcome-file> 
    </welcome-file-list> 
    <servlet> 
     <servlet-name>servletInterface</servlet-name> 
     <servlet-class>servletInterface</servlet-class> 
    </servlet> 

    <servlet-mapping> 
     <servlet-name>servletInterface</servlet-name> 
     <url-pattern>/servletInterface</url-pattern> 
    </servlet-mapping> 
</web-app> 

答えて

1

を持っていますか?

はそれで

<servlet-mapping> 
    <servlet-name>servletInterface</servlet-name> 
    <url-pattern>/servletInterface</url-pattern> 
</servlet-mapping> 

のようなものを持っている必要があります。

さらに、ServletではなくHttpServletを拡張する必要があります。

+0

このソリューションが動作していません。エラーが発生し、サーバーが停止する –

+0

エラーとサーバーの構成、および通話の仕方に関する詳細情報を提供します。 –

+0

私は編集を追加しました –

1

404ステータスコードは、サーバーが要求されたリソースを見つけることができないことを意味します。リクエストURIをサーブレットにマップし、サーブレットとクラス名がweb.xmlに正しく含まれているかどうかを確認してください。

+0

上記のコードをいくつか教えてもらえますか? –

+0

https://pubs.vmware.com/vfabric52/index.jsp?topic=/com.vmware.vfabric.tc-server.2.8/getting-started/tutwebapp-web-xml-file.htmlの例を参照してください。サーブレットおよびサーブレットマッピングタグ用 – OTM

+0

web.xmlのservlet-classタグの値をcom.shaby.newservletdemo.servletInterfaceに変更して試すことはできますか? – OTM

0

抽象クラスjavax.servlet.http.HttpServletを実装する必要があります。

とクラス(必要ならば)の特定のパッケージ:

<servlet-class>path.to.package.ServletInterface</servlet-class>

は、例を参照してください:Servlet Tutorials

+0

これはエラーではありませんでした。私は解決策を得た。 Thanx –