
 Originariamente inviata da 
Scara95
					
				 
				Certo, questo forum è ricco di veggenti!
Otterrai sicuramente una risposta con queste informazioni (:
			
		 
	 
 
allora riporto il codice. ho creato un EJB project con all'interno questo package.
	codice:
	package ejb;
import javax.ejb.Remote;
@Remote
public interface Calcolatrice {
    public float somma(float numero1, float numero2);
    public float moltiplicazione(float numero1, float numero2);
    public float sottrazione(float numero1, float numero2);
    public float divisione(float numero1, float numero2);
    
}
 
e questa classe
	codice:
	package ejb;
import javax.ejb.Stateless;
@Stateless
public class ImplementazioneCalcolatrice implements Calcolatrice{
    @Override
    public float somma(float numero1, float numero2) {
        // TODO Auto-generated method stub
        return numero1 + numero2;
    }
    @Override
    public float moltiplicazione(float numero1, float numero2) {
        // TODO Auto-generated method stub
        return numero1 * numero2;
    }
    @Override
    public float sottrazione(float numero1, float numero2) {
        // TODO Auto-generated method stub
        return numero1 - numero2;
    }
    @Override
    public float divisione(float numero1, float numero2) {
        try{
            return numero1 / numero2;
        }
        
        catch (Exception e){
            System.out.println("ERRORE DIVISIONE PER 0");
            return 0;
        }
    }
    
    
}
 
poi un dinamic web project con all'interno una servlet:
	codice:
	package ejb;
import java.io.IOException;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
/**
 * Servlet implementation class CalcolatriceServlet
 */
@WebServlet("/CalcolatriceServlet")
public class CalcolatriceServlet extends HttpServlet {
    private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public CalcolatriceServlet() {
        super();
        // TODO Auto-generated constructor stub
    }
    /**
     * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
     */
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        HttpSession sessione = request.getSession(true);
        RequestDispatcher rd = this.getServletContext().getRequestDispatcher("/index.jsp");
        float numero1 = Float.parseFloat(request.getParameter("numero1")+"");
        float numero2 = Float.parseFloat(request.getParameter("numero2")+"");
        char operatore = request.getParameter("operatore").charAt(0);
        float result = 0;
        try {
            Context contesto = new InitialContext();
            Calcolatrice calcolatrice = (Calcolatrice) contesto.lookup("ImplementazioneCalcolatrice/remote-ejb.Calcolatrice");
            switch(operatore){
            case '+': result=calcolatrice.somma(numero1, numero2); break;
            case '-': result=calcolatrice.sottrazione(numero1, numero2); break;
            case '/': result=calcolatrice.divisione(numero1, numero2); break;
            case '*': result=calcolatrice.moltiplicazione(numero1, numero2); break;
            
            }
        sessione.setAttribute("risultato", result);
        request.setAttribute("numero1", numero1);
        request.setAttribute("numero2", numero2);
        
        }
        
        catch(NamingException e){
            
            sessione.setAttribute("errore",e.getMessage());
        }
        rd.forward(request, response);
        
        
    }
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // TODO Auto-generated method stub
        doGet(request,response);
    }
}
 
ed un index su webcontent:
	codice:
	<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Calcolatrice</title>
</head>
<body>
<h2><b><u>Benvenuto nella tua prima applicazione con gli EJB</u></b></h2>
<%
float numero1 = 2;
float numero2 = 1;
if(request.getAttribute("numero1") != null)
 numero1 = Float.parseFloat(request.getAttribute("numero1")+"");
if(request.getAttribute("numero2") != null)
     numero2 = Float.parseFloat(request.getAttribute("numero2")+"");
%>
<form method="post" action="CalcolatriceServlet">
<b>Numero 1:</b><input type="text" name="numero1" value="<%=numero1 %>" /><br />
<b>Numero 2:</b><input type="text" name="numero2" value="<%=numero2 %>" /><br />
<u><b>Opzioni:</b></u><br />
<ul>
<li>
<b>+</b><input type="radio" name="operatore" value="+" checked>
</li>
<li>
<b>-</b><input type="radio" name="operatore" value="-">
</li>
<li>
<b>*</b><input type="radio" name="operatore" value="*" >
</li>
<li>
<b>/</b><input type="radio" name="operatore" value="/" >
</li>
</ul>
<input type="submit" value="INVIA" /></form>
<font color="brown"> Il risultato è:</font><b><%=session.getAttribute("risultato") %></b><br />
<font color="red"> Si è verificato il seguente errore:</font><b><%=session.getAttribute("errore") %></b><br />
</body>
</html>