【问题标题】:How to call servlet file from html [duplicate]如何从html调用servlet文件[重复]
【发布时间】:2015-08-23 16:51:29
【问题描述】:

如何从 html 调用 servlet 文件。我试过了,但是当我点击提交时,它没有采取任何行动,我也没有收到任何错误。我想在数据库中提交数据。操作事件不起作用。请帮助我

HTML 代码

    <form name="form" method="post" action="NewServlet" >
    <label for='name' ><font size="2">Your Full Name*: </label><br/>
    <input type='text' name='name' id='name'  maxlength="50" style="height:30px; width :250;"  placeholder="Enter Full Name"/><br/><br/>


    <label for='email' >Email Address*:</label><br/>
    <input type='text' name='email' id='email' maxlength="50" style="height:30px; width :250;"  placeholder="Enter your Email"/><br/><br/>



    <label for='phone' >Phone Number*:</label><br/>
    <input type='text' name='phone' id='phone'  maxlength="15"  style="height:30px; width :250;"  placeholder="Enter Phone Number"/><br/><br/>

<label for='Reason' >Reason*:</label><br/>
<select  name="reason" style="height:30px; width :250;">
    <option>Select</option>
    <option>Enquiry</option>
    <option>Complain</option>
    <option>Order</option>
</select>
</br>
</br>
</br>

    <label for='message' >Address Or Message:</label><br/>

    <textarea style="height:100px; width :400;" name='message' id='message' placeholder="Enter  Address or Message"></textarea></p>
</b>
</size>

<%--
<input type='submit' name='btnSubmit'  value="Submit"/>
--%>
<img src="Image/submit1.png" style="width:150px; height:70px;top:50%px; " onmouseover="this.src='Image/submit2.png'" onmouseout="this.src='Image/submit1.png'"/>


</form>

Servlet 代码

public class NewServlet extends HttpServlet {


    protected void processRequest(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        response.setContentType("text/html;charset=UTF-8");
        PrintWriter out = response.getWriter();

        String driver= "com.microsoft.sqlserver.jdbc.SQLServerDriver";
       String url="jdbc:sqlserver://localhost:1433;databaseName=wristwatch; username=sa; password=abc@123;";


        try {
            //int id=Integer.parseInt(request.getParameter("txt_id"));
          String nm=request.getParameter("name");
          String email=request.getParameter("email");
           int phone=Integer.parseInt(request.getParameter("phone"));
            String reason=request.getParameter("reason");
             String add=request.getParameter("Address");


            Class.forName(driver);
          Connection c=DriverManager.getConnection(url);



          out.println("Data Inserted");  

        } 
        catch(Exception e)
        {
        System.out.print(e);


        }


        finally {            
            out.close();
        }
    }

web.xml

<servlet> 
   <servlet-name>NewServlet</servlet-name> 
   <servlet-class>NewServlet</servlet-class> 
   </servlet> 
  <servlet-mapping> 
     <servlet-name>NewServlet</servlet-name> 
     <url-pattern>/NewServlet</url-pattern> 
</servlet-mapping>

【问题讨论】:

  • 请同时发布您的web.xml 文件,因为我们可能需要它来回答您的问题。
  • 如果您使用的是 Apache TomCat,您是否在 web.xml 文件中添加了有关您的 servlet 的信息?
  • web.xml NewServletNewServletNewServlet /NewServlet
  • 将其添加(编辑)到您的问题并正确格式化。
  • 您的 doPost() 方法在 servlet 中在哪里?

标签: java servlets


【解决方案1】:

将 servlet 中的 processRequest(...){...} 更改为 doPost(...){...}

此链接可能会让您清楚。

ProcessRequest Method

【讨论】:

    猜你喜欢
    • 2015-10-03
    • 1970-01-01
    • 1970-01-01
    • 2012-10-18
    • 2011-07-24
    • 2021-06-29
    • 2012-04-05
    • 1970-01-01
    • 2011-03-02
    相关资源
    最近更新 更多