Aplikacja WWW - projekt - serwlety - Java Server Pages - Web Services


 

Otworzyć projekt PSS_Project_I  w środowisku NetBeans

Utworzyć nowy projekt Aplikację WWW o nazwie WebApplication

 

 

Dodać usługę WWW do utworzonej aplikacji:

 

 

 

Jako lokalizację usług WWW podać pakiet wsdl:

 

 

Dodać metodę o nazwie ws do usługi WWW:

 

Dodać metodę o nazwie ws do usługi WWW: (wpisać ws w miejsce Method_Name)

 

 

Dodać do aplikacji WWW odwołanie do usługi WWW o nazwie utworzonej w poprzednim zadaniu:

 

 

 

 

 

W aplikacji PSS_Project_I dołączyć serwlet NewServlet, kod podany poniżej, zainstalować serwlet, dopisać odwołanie do serwletu. W ten sposób, serwlet będzie odczytywał dane z usługi WWW i wyświetli otrzymane dane w przeglądarce klienta.


/*
 * NewWebService.java
 *
 */
 
package ppp;
 
import javax.jws.WebMethod;
import javax.jws.WebService;
 
/**
 *
 */
@WebService()
public class NewWebService {
    /**
     * Web service operation
     */
    @WebMethod
    public String ws() {
        // TODO implement operation 
        String S = "WebService";
        return S;
    }
    
}

/*
 * NewServlet.java
 *
 */
 
import java.io.*;
import java.net.*;
 
import javax.servlet.*;
import javax.servlet.http.*;
 
import wsdl.*;
import javax.xml.ws.WebServiceRef;
 
/**
 *
 * @author darek
 * @version
 */
public class NewServlet extends HttpServlet {
 
    @WebServiceRef(wsdlLocation = "http://localhost:8080/WebApplication/NewWebServiceService?wsdl")
    private wsdl.NewWebServiceService service;
    
    /** Processes requests for both HTTP <code>GET</code> and <code>POST</code> methods.
     * @param request servlet request
     * @param response servlet response
     */
    protected void processRequest(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
 
        String S1 = null;
        
        try { // Call Web Service Operation
            wsdl.NewWebService port = service.getNewWebServicePort();
            // TODO process result here
            //java.lang.String result = port.ws();
            //S1 = result;
            
            java.lang.String result = port.ws();
            S1 = result;
            
        } catch (Exception ex) {
            // TODO handle custom exceptions here
        }
        response.setContentType("text/html;charset=UTF-8");
        PrintWriter out = response.getWriter();
        
 
        
        
        out.println("<html>");
        out.println("<head>");
        out.println("<title>Servlet NewServlet</title>");
        out.println("</head>");
        out.println("<body>");
        out.println("<h1>Servlet NewServlet at " + request.getContextPath () + "</h1>");
        out.println(S1);
        out.println("</body>");
        out.println("</html>");
        
        out.close();
    }
    
    // <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
     */
    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
     */
    protected void doPost(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
        processRequest(request, response);
    }
    
    /** Returns a short description of the servlet.
     */
    public String getServletInfo() {
        return "Short description";
    }
    // </editor-fold>
}

 

 

Zadanie:

W usłudze WWW, napisać metodę GetProducts, zwracającą dostępne produkty.