2016-02-20 2 views
2

je suis nouveau programmeur dans Java servlet j'ai un problème dans ma page. déclaration de problème: quand je clique sur le bouton puis sur le côté serveur, il fonctionne correctement, mais quand je clique sur le bouton, il ne fonctionne pas mon code html est ok. Je pense que quelque chose ne va pas dans le fichier de servlet. Veuillez vérifier le code suivant et donnez-moi la solution.hors clic ne fonctionne pas

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; 

/** 
* 
* @author Shekh Ali 
*/ 
public class HomeAutomation extends HttpServlet { 

    /** 
    * Processes requests for both HTTP <code>GET</code> and <code>POST</code> 
    * methods. 
    * 
    * @param request servlet request 
    * @param response servlet response 
    * @throws ServletException if a servlet-specific error occurs 
    * @throws IOException if an I/O error occurs 
    */ 
    protected void processRequest(HttpServletRequest request, HttpServletResponse response) 
      throws ServletException, IOException { 
     response.setContentType("text/html;charset=UTF-8"); 
     try (PrintWriter out = response.getWriter()) { 
      /* TODO output your page here. You may use following sample code. */ 
      out.println("<!DOCTYPE html>"); 
      out.println("<html>"); 
      out.println("<head>"); 
      out.println("<title>Project HomeAutomation</title>");    
      out.println("</head>"); 
      out.println("<body>"); 
      out.println("<h1>Servlet HomeAutomation Server"); 
      String b1=request.getParameter("on"); 
      String of=request.getParameter("off"); 

       if(b1.equals("on")) 
       { 
        out.println("<h1>on is clicked</h1>"); 

       } 

       if(of.equals("off")) 
       { 
        out.println("<h1>off is clicked</h1>"); 
       } 


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

    // <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the left to edit the code."> 
    /** 
    * Handles the HTTP <code>GET</code> method. 
    * 
    * @param request servlet request 
    * @param response servlet response 
    * @throws ServletException if a servlet-specific error occurs 
    * @throws IOException if an I/O error occurs 
    */ 
    @Override 
    protected void doGet(HttpServletRequest request, HttpServletResponse response) 
      throws ServletException, IOException { 
     processRequest(request, response); 
    } 

    /** 
    * Handles the HTTP <code>POST</code> method. 
    * 
    * @param request servlet request 
    * @param response servlet response 
    * @throws ServletException if a servlet-specific error occurs 
    * @throws IOException if an I/O error occurs 
    */ 
    @Override 
    protected void doPost(HttpServletRequest request, HttpServletResponse response) 
      throws ServletException, IOException { 
     processRequest(request, response); 
    } 

    /** 
    * Returns a short description of the servlet. 
    * 
    * @return a String containing servlet description 
    */ 
    @Override 
    public String getServletInfo() { 
     return "Short description"; 
    }// </editor-fold> 

} 

Répondre

1

Essayez de cast ces request.getParameter() à String comme ceci:

String b1=(String)request.getParameter("on"); 
    String of=(String)request.getParameter("off"); 

Et écrire la méthode equals dans if condition comme ceci:

if("on".equals(b1)) 
    .... 

    if("off".equals(of)) 
+0

Merci Il travaille. –