Download stateless session bean 2.x

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
Stateless Session Bean(EJB2.X)
Select File  New Project… and then choose the Java Web category and Web Application
project:
Right-click the Converter project and select New  Session Bean. Specify an EJB name, package,
and choose to create a stateless session
Click Finish.
Expand the Enterprise Beans under the project and right click on ConverterBean and choose Add
 Business Method.
In this example from the Mastering Enterprise JavaBeans, specify the name as cToF and a return
type of String. If the method required parameters, you can add them at the same time by clicking
Add…:
Right-click the Converter project and select New Servlet. Specify an Servlet name, package.
After coding, click run.
ConverterServlet.java
package converter.web;
import java.io.IOException;
import java.io.PrintWriter;
import javax.ejb.EJB;
import javax.servlet.annotation.WebServlet;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import converter.ejb.ConverterBean;
@WebServlet
public class ConverterServlet extends HttpServlet {
@EJB
ConverterBean converter;
protected void processRequest(
HttpServletRequest request,
HttpServletResponse
response)
throws
ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
// Output the results
out.println("<html>");
out.println("<head>");
out.println("<title>Temperature Converter</title>");
out.println("</head>");
out.println("<body>");
out.println(
"<h1>Temperature Converter </h1>");
try {
String degree = request.getParameter("degree");
if ((degree != null) && (degree.length() > 0)) {
double d = Double.parseDouble(degree);
if (request.getParameter("C TO F") != null) {
String centigrade = converter.cToF(d);
out.println(
"<p>"
+
degree
+
"
centigrade degrees are "
+ centigrade + " .</p>");
}
if (request.getParameter("F TO C") != null) {
String fahrenheit = converter.fToC(d);
out.println(
"<p>"
centigrade degrees are "
+
degree
+
"
+ fahrenheit + " .</p>");
}
} else {
out.println("<p>Enter
degree
to
convert:</p>");
out.println("<form method=\"get\">");
out.println(
"<p>
<input
type=\"text\"
name=\"degree\" size=\"25\"></p>");
out.println("<br/>");
out.println(
"<input
type=\"submit\"
name=\"F TO C\" value=\"F TO C\">"
+
"<input
name=\"C TO F\" value=\"C TO F\">");
out.println("</form>");
}
} finally {
out.println("</body>");
out.println("</html>");
out.close();
type=\"submit\"
}
}
// <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)
ServletException, IOException {
processRequest(request, response);
}
/**
throws
* 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)
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";
throws
} // </editor-fold>
}
ConverterBean.java
/*
* Copyright 2011 Oracle and/or its affiliates.
* All rights reserved.
You may not modify, use,
* reproduce, or distribute this software except in
* compliance with
the terms of the License at:
* http://developers.sun.com/license/berkeley_license.html
*/
package converter.ejb;
import java.math.BigDecimal;
import java.text.DecimalFormat;
import javax.ejb.Stateless;
/**
* This is the bean class for the ConverterBean enterprise bean.
* @author ian
*/
@Stateless
public class ConverterBean {
private DecimalFormat twoDigits = new DecimalFormat
("0.00");
public String cToF(double c) {
String result = twoDigits.format(((c*9.0/5.0 +
32)*100)/100.0);
return
result;
}
public String fToC(double f) {
String
result
twoDigits.format(((f-32)*5.0/9.0*100)/100.0);
return
result;
}
}
Web.xml
<?xml version="1.0" encoding="UTF-8"?>
=
<web-app version="3.0"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
<servlet>
<servlet-name>ConverterServlet</servlet-name>
<servlet-class>converter.web.ConverterServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ConverterServlet</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
</web-app>
Related documents