2016-11-05 11 views
0

でのエラーインスタンス化するサーブレットは、私は、Eclipseを使用してMavenの中に簡単なサーブレットを実行しようとしています。しかし、エラー500が表示されます。私が間違っていることを見てください。主な関心事は、mavenに慣れていないので、mavenでサーブレットを実行する方法です。HTTPステータス500 - EclipseのMavenの

index.jspを

<html> 
    <body> 
    <h2>Hello World!</h2> 
    <form action="mylog" method="post"> 
    loginID:<input type="text" name="name"/><br/> 
    <input type="submit" value="login"/> 

    </form> 
    </body> 
    </html> 

参照添付画像 enter image description here

エラースタック

 HTTP Status 500 - Error instantiating servlet class com.issac.mylog 

    type Exception report 

    message Error instantiating servlet class com.issac.mylog 

description The server encountered an internal error that prevented it from fulfilling this request. 

exception 

javax.servlet.ServletException: Error instantiating servlet class  com.issac.mylog 
    org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502) 
    org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79) 
    org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:616) 
    org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:528) 
    org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1100) 
    org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:687) 
    org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1520) 
    org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1476) 
    java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) 
    java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) 
    org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) 
    java.lang.Thread.run(Unknown Source) 

root cause 

java.lang.ClassNotFoundException: com.issac.mylog 
    org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1333) 
    org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1167) 
    org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502) 
    org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79) 
    org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:616) 
    org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:528) 
    org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1100) 
    org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:687) 
    org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1520) 
    org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1476) 
    java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) 
    java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) 
    org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) 
    java.lang.Thread.run(Unknown Source) 
構造 - mylog.java(サーブレット・クラス)

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

    import javax.servlet.ServletException; 
    import javax.servlet.http.HttpServlet; 
    import javax.servlet.http.HttpServletRequest; 
    import javax.servlet.http.HttpServletResponse; 


    public class mylog extends HttpServlet { 
    private static final long serialVersionUID = 1L; 


    public mylog() { 
    super(); 
    // TODO Auto-generated constructor stub 
    } 


    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 
    // TODO Auto-generated method stub 
     response.getWriter().append("Served at: ").append(request.getContextPath()); 
    } 


    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 
    // TODO Auto-generated method stub 
     String n = request.getParameter("name"); 

     PrintWriter out = response.getWriter(); 
     out.print(n); 
     out.close(); 

     doGet(request, response); 
    } 

} 

web.xmlおよびディレクトリ

答えて

0

ソースフォルダsrc/main/javaを作成し、そこにJavaソースファイルを移動

+0

は「このフォルダはすでにソースフォルダである」それが、ショーを作成しようとした解決しますサーバーのクラスパス(すなわち、WEB-INF/classes下)、中.classファイルが生成されていることを確認し、利用できるようにしますsrc/main/java&src/main/testの括弧で囲まれた "欠落"の3つのsrc/main(リソース、java&test)をすべて表示します。また、私は2日前にそれが3つすべてを示し、サーブレットも同様に働いていた同様のプロジェクトを試していた。 – techvigil

+0

Eclipseのようなサウンドは、ファイルシステムと同期していません。パッケージエクスプローラーでプロジェクト(ビューのみ - ないファイル)を削除してみてくださいMavenプロジェクトとして再インポート、その後、 – Reimeus

+0

はい、それはすべての3つのフォルダを示さなかったことを日食といくつかの問題がありました。しかし、今は2つのdiffプロジェクトを試してみましたが、それは他のプロジェクトと同じ問題ですが問題はありません。これに永続的な解決策はありませんか? – techvigil

1

src/main/resourcespropertiesファイル(または静的リソース)を配置するためであるので、サーバは、クラスファイルを見つけることができませんでしたので、あなたはsrc/main/javaの下でJavaソースファイルを作成する必要がありますフォルダ。また

、上記java.lang.ClassNotFoundException

関連する問題