Visualizzazione dei risultati da 1 a 10 su 17

Visualizzazione discussione

  1. #3
    Quote Originariamente inviata da Scara95 Visualizza il messaggio
    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>
    Ultima modifica di LeleFT; 07-11-2014 a 16:29 Motivo: Aggiunti i tag CODE

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.