How to retrieve data from MySQL database and place in a HTML Form using Soap Web Services using Java ,

Viewed 38

I attempted to retrieve user information from the MySQL database, but when I ran my program and searched for the user by name, nothing appeared in the HTML table. I can't figure out what's the issue. Below in my code,

Web Service Code

 @WebMethod(operationName = "search")
    public List<UserRegister> search(@WebParam(name = "name")String name ) {
      Connection connection = DBUtils.getConnection(); 
 
      List<UserRegister> user = new ArrayList<>();

      UserRegister u=null;

    try {
  
    String searchQuery = "select * from register where name= ?";

    PreparedStatement ps = connection.prepareStatement(searchQuery);
        ps.setString(1, name);
        ResultSet rs = ps.executeQuery();
        
        while (rs.next()) {

            u = new UserRegister();
            
            u.setName(rs.getString("name"));
            u.setBranch(rs.getString("branch"));
            u.setAge(rs.getString("age"));
            u.setPhone(rs.getString("phone"));
            
            user.add(u);


        }
    }catch(SQLException asd){
        System.out.println(asd.getMessage());
    }
    return user;
}

Java Servlet

@WebServlet("/SearchServlet")
public class SearchServlet extends HttpServlet {

   
    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        
        String Name = request.getParameter("name");
        UserRegister userRegister = new UserRegister();
        userRegister.setName(Name);
        searchClass sclass = new searchClass();

        request.setAttribute("name", sclass.search(Name));
        RequestDispatcher view = request.getRequestDispatcher("display.jsp");
        view.forward(request, response);
 
        }
    }

Java Class For Call the Web Service

public class searchClass {
    public List<UserRegister> search( String username) {
    SerachService_Service service=new SerachService_Service();
    SerachService proxy =service.getSerachServicePort();
       
    return (List<UserRegister>) proxy.search(username);
   } 
}

JSp For Search Bar

 <form method="Get"  action="SearchServlet">
<table border="0" width="300" align="center" bgcolor="#CDFFFF">
<tr><td colspan=2 align="center">
<h3>Search Employee</h3></td></tr>
<tr><td ><b>User Name</b></td>
<td>: <input  type="text" name="name">
<tr><td colspan=2 align="center">
<input  type="submit"></td></tr>
</table>
</form>
    </body>

JSP Display Data

   <table>
    <c:forEach var="user" items="${name}">

                                <tr>
                                    <td>
                                        <c:out value="${user.name}" />
                                    </td>
                                    <td>
                                        <c:out value="${user.branch}" />
                                    </td>
                                    <td>
                                        <c:out value="${user.age}" />
                                    </td>
                                    <td>
                                        <c:out value="${user.phone}" />
                                    </td>
                                   
                                </tr>
                            </c:forEach>

    </body>
0 Answers
Related