You create a Web service client application to consume a Web service. The Web service client application connects to the Web service via a Web service proxy.
In this tutorial, you use a Java Web servlet as a client application.
In the Java EE perspective, choose the converterwebclient project, and then choose .
In the list of wizards, choose Next .
, and then chooseIn the Java package field, enter com.sap.tutorial.servlet .
In the Class name field, enter ConverterServlet , and then choose Finish .
Update the source code as shown in the example below.
The @WebServiceRef annotation declares a reference to the ConverterService Web service.
package com.sap.tutorial.servlet; import java.io.IOException; import java.io.PrintWriter; import java.math.BigDecimal; import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.xml.namespace.QName; import javax.xml.ws.WebServiceRef; import com.sap.tutorial.javaee.service.ConverterLocal; import com.sap.tutorial.javaee.service.ConverterService; /** * Servlet implementation class for Servlet: ConverterServlet * */ public class ConverterServlet extends javax.servlet.http.HttpServlet implements javax.servlet.Servlet { /* (non-Java-doc) * @see javax.servlet.http.HttpServlet#HttpServlet() */ @WebServiceRef(name = "ConverterService") ConverterService service; public ConverterServlet() { super(); } /* (non-Java-doc) * @see javax.servlet.http.HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response) */ protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub response.setContentType("text/html"); PrintWriter out = response.getWriter(); out.println("<html>"); out.println("<head><title>Converter Web Service</title></head>\n"); out.println("<body>"); out.print("<form action=\""); out.print("ConverterServlet\" "); out.println("method=GET>"); String euro =request.getParameter("euro"); String usd = request.getParameter("usd"); try { if (euro != null && usd != null) { ConverterLocal emptyWebServiceBean = service.getPort(new QName("http://sap.com/tutorial/javaee//service", "{http://sap.com/tutorial/javaee/}ConverterLocal_ConverterServiceGroup_BASIC"),com.sap.tutorial.javaee.service.ConverterLocal.class); BigDecimal EURresult = emptyWebServiceBean.euroToDollar(new BigDecimal(new Integer(usd))); BigDecimal USDresult = emptyWebServiceBean.dollarToEuro(new BigDecimal(new Integer(euro))); out.println("<h3>"+"EUR="+euro+": Converted amount in USD is: "+USDresult+"</h3>"); out.println("<h3>"+"USD="+usd+": Converted amount in Euro is: "+EURresult+"</h3>"); } else { out.println("<h3>"+"No values entered. Please enter amount in Euro or USD."+"</h3>"); } out.println("<P>"); out.println("Enter amount in Euro: "); out.println("<input type=text size=20 name=euro>"); out.println("<br>"); out.println("Enter amount in USD: "); out.println("<input type=text size=20 name=usd>"); out.println("<br>" + "<br>"); out.println("<input type=submit value=Convert>"); out.println("</form>"); out.println("</body>"); out.println("</html>"); } catch (Exception e) { out.println(e.getMessage()); } } }
Save your changes.