2013-10-19 62 views
0
import javax.servlet.*; 
import java.io.*; 

public class MyServlet implements Servlet 
{ 

    public void init(ServletConfig con) {} 

    public void service(ServletRequest req, ServletResponse res) throws IOException,ServletException 
    { 

    res.setContentType("text/html"); 
    PrintWriter out=res.getWriter(); 
    String s="blah"; 
    String s1="blah"; 
    out.println("<html><body>"); 

    if((s.equals(req.getParameter("firstname")))&&(s1.equals(req.getParameter("pwd")))) 

    out.println("passwords match"); 

    else 
    out.println("password and name combo does not match"); 

    out.println("</body></html>"); 
    } 

    public void destroy() {} 

    public ServletConfig getServletConfig() { return null;} 
    public String getServletInfo() { return null;} 
} 

這是我的servlet class.its文件,保存的名稱爲MyServlet.java,類文件也是如此。tomcat資源缺失,servlet未運行

,這裏是xml文件:

<web-app> 
    <servlet> 
     <servlet-name>demoo</servlet-name> 
     <servlet-class>MyServlet</servlet-class> 
    </servlet> 
    <servlet-mapping> 
     <servlet-name>demoo</servlet-name> 
     <url-pattern>/demo</url-pattern> 
    </servlet-mapping> 
</web-app> 

我所做的文件夾WEB-INF,然後類... WEB-INF還包含.xml文件

但是當我嘗試運行的servlet,它說資源沒有發現 PS-我已經在尋找與該名稱的servlet:演示

本地主機:8081/S1 /演示 * S1是戰爭文件 *

戰爭文件的HTML文件似乎雖然在服務器上運行正常。

*

+0

請發佈您嘗試訪問的網址。 –

+0

請確保您將您的課程編譯到文件夾「WEB-INF/classes' – A4L

+0

它們僅在classes文件夾中編譯。 – user2837260

回答

1

如果您使用的是Java 6,只需添加以下標註在你的servlet類並從WEB-INF目錄web.xml文件。我希望它會工作

@WebServlet(name = "MyServlet", urlPatterns = {"/demo"}) 
+0

我應該將它添加到.java文件並重新編譯? – user2837260

+0

這樣的 @WebServlet(name =「MyServlet」,urlPatterns = {「/ my」}) public class MyServlet implements Servlet { – Shamse

1

使用下面的代碼,刪除你的web.xml,如果您正在使用maven爲您的項目,然後本地應用程序啓動可進行重新編譯和部署Web應用程序

import javax.servlet.*; 
    import java.io.*; 
    import javax.servlet.annotation.WebServlet; 

    @WebServlet(name = "MyServlet", urlPatterns = {"/demo"}) 
    public class MyServlet implements Servlet { 

    public void init(ServletConfig con) { 
    } 

    public void service(ServletRequest req, ServletResponse res) throws IOException, ServletException { 

     res.setContentType("text/html"); 
     PrintWriter out = res.getWriter(); 
     String s = "blah"; 
     String s1 = "blah"; 
     out.println("<html><body>"); 

     if ((s.equals(req.getParameter("firstname"))) && (s1.equals(req.getParameter("lastname")))) { 
     out.println("passwords match"); 
    } else { 
     out.println("password and name combo does not match"); 
    } 

    out.println("</body></html>"); 
} 

public void destroy() { 
} 

public ServletConfig getServletConfig() { 
    return null; 
} 

public String getServletInfo() { 
    return null; 
} 
} 
+0

昨天晚上編譯時給了我一個錯誤,會給它另一個去 – user2837260

+0

umm ..編譯這次...但仍然是相同的錯誤...資源沒有找到..urghhh – user2837260

0

這樣的:

mvn clean tomcat:run-war 

不要忘了在你的pom.xml提

<packaging>war</packaging>