Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Lenovo IdeaPad Slim 3: un notebook Snapdragon X economico
Lenovo IdeaPad Slim 3: un notebook Snapdragon X economico
Forte della piattaforma Qualcomm Snapdragon X, il notebook Lenovo IdeaPad Slim 3 riesce a coniugare caratteristiche tecniche interessanti ad uno chassis robusto, con autonomia di funzionamento a batteria che va ben oltre la tipica giornata di lavoro. Un notebook dal costo accessibile pensato per l'utilizzo domestico o in ufficio, soprattutto con applicazioni native per architettura ARM
Recensione OnePlus Watch 3 43mm: lo smartwatch che mancava per i polsi più piccoli
Recensione OnePlus Watch 3 43mm: lo smartwatch che mancava per i polsi più piccoli
OnePlus risponde alle esigenze di chi cerca un dispositivo indossabile dalle dimensioni contenute con OnePlus Watch 3 43mm. La versione ridotta del flagship mantiene gran parte delle caratteristiche del modello maggiore, offrendo un'esperienza completa in un formato compatto. Il suo limite più grande è abbastanza ovvio: l'autonomia non è il punto di forza di questo modello, ma si raggiungono comodamente le due giornate piene con un uso normale.
BOOX Note Air4 C è uno spettacolo: il tablet E Ink con Android per lettura e scrittura
BOOX Note Air4 C è uno spettacolo: il tablet E Ink con Android per lettura e scrittura
BOOX Note Air4 C rappresenta l'ultima incarnazione della categoria dei tablet E Ink a colori di Onyx, e combina le prestazioni di un dispositivo Android con l'ottima tecnologia Kaleido 3 per il display. Con schermo da 10,3 pollici, un processore Qualcomm Snapdragon 750G e 6 GB di RAM, promette un'esperienza completa per lettura, scrittura e produttività. Il prezzo lo posiziona nel segmento premium, ma questo dispositivo è un vero spettacolo!
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 22-11-2007, 13:00   #1
albertovw
Junior Member
 
Iscritto dal: Nov 2007
Messaggi: 11
[Java] Passaggio valori tra jsp e servlet

Ciao a tutti. Sto diventanto pazzo per un problema ridicolo...

JSP
Prendo da un <form method="POST... uno username ed una password.
A questo punto passo tramite la variabile di sessione "session" lo user e la pass facendo session.setAttribute("username",username); e il corrispettivo per la password.

SERVLET
Dalla servlet mi scrivo
HttpSession session = request.getSession(); //true opzionale
String username = (String) session.getAttribute("username);


ma la variabile username nella servler è sempre null!!!
sto impazzendo!!! eppure ho rovistato migliaia(esagero ma una 50ina sicuro) tra manuali e guide online e questa è la procedura corretta/consigliata!!!

che devo fare?? un guru di java sa dirmi qualcosa??


ecco il codice completo nel qual caso servisse, magari c'è un errore nascosto!!


JSP

Codice:
<html>
    <head>
        <title>Please Log In</title>
        <style type="text/css"></style>
        <script language="JavaScript" type="text/javascript"></script>
    </head>
    <body onload="login_focus()">
        <%
        boolean error = false;
        String prmError = request.getParameter("error");
        String username = request.getParameter("j_username");
        if (prmError != null) {
            error = true;
        }
        if (username == null) {
            username = new String();
        }
        %>
        <form method="POST" action="j_security_check">
            <table>
                <%
                if (error) {
                %>
                <tr>
                    <th colspan="2" class="errorMessage"> Invalid username or password </th>
                </tr>
                <tr>
                    <td colspan="2">&nbsp;</td>
                </tr>
                <% 
                }
                %>
                <tr>
                    <th class="label">User Name:</th>
                    <td><input type="text" name="j_username" id="j_username" value="<%=username%>"></td>
                    <%session.setAttribute("username",username);%>
                    
                </tr>
                <tr>
                    <th class="label">Password:</th>
                    <td><input type="password" name="j_password" id="j_password" value="<%=password%>"></td>
                    <%session.setAttribute("password",password);%>
                </tr>
                <tr>
                    <td colspan="2">&nbsp;</td>
                </tr>
                <tr>
                    <td class="alignRight"><input type="submit" value="Log In"></td>
                    <td class="alignLeft"><input type="reset"></td>
                </tr>
            </table>
        </form>
    </body>
</html>
SERVLET

Codice:
public class AdministratorMainServlet extends HttpServlet {
    
    private static final Log log = LogFactory.getLog(AdministratorMainServlet.class);
    
    /** 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 {
        if (log.isInfoEnabled()) {
            final StringBuilder sb = new StringBuilder();
            sb.append("request from:").append(request.getRemoteUser()).append('/').append(request.getRemoteAddr());
            
            if (log.isTraceEnabled()) {
                for (final Enumeration e = request.getAttributeNames(); e.hasMoreElements();) {
                    String name = e.nextElement().toString();
                    sb.append("\nattr:").append(name).append("=").append(request.getAttribute(name).toString());
                }
                for (final Enumeration e = request.getParameterNames(); e.hasMoreElements();) {
                    String name = e.nextElement().toString();
                    sb.append("\nparam:").append(name);
                    String[] values = request.getParameterValues(name);
                    for (int i = 0; i < values.length; ++i) {
                        sb.append(":").append(values[i]);
                    }
                }
                for (final Enumeration e = request.getHeaderNames(); e.hasMoreElements();) {
                    String name = e.nextElement().toString();
                    sb.append("\nheader:").append(name);
                    for (java.util.Enumeration headers = request.getHeaders(name); headers.hasMoreElements();) {
                        sb.append(":").append(headers.nextElement().toString());
                    }
                }
                log.trace(sb.toString());
            } else {
                log.info(sb.toString());
            }
        }
        
    HttpSession session = request.getSession();
        String username = (String) session.getAttribute("username");

        response.setContentType("text/html;charset=UTF-8");
        
        try {            
            Context initCtx = new InitialContext();
            Context envCtx = (Context) initCtx.lookup("java:comp/env");
            
            String loggingLevel = readOptionalParameter(envCtx, "logging.level");
            String jdbcHost = readOptionalParameter(envCtx, "jdbc.host");
            String jdbcPort = readOptionalParameter(envCtx, "jdbc.port");
            
            String jdbcDriver = (String)envCtx.lookup("jdbc.driver");
            String jdbcDatabase = (String)envCtx.lookup("jdbc.database");
            String jdbcUser = (String)envCtx.lookup("jdbc.user");
            String jdbcPwd = (String)envCtx.lookup("jdbc.pwd");
            String jdbcDriverClass = (String)envCtx.lookup("jdbc.driverclass");
            String fileManagerEndPoint = (String)envCtx.lookup("fileManagerEndPoint");
            String downloaderEndPoint = (String)envCtx.lookup("downloaderEndPoint");
            
            String scheme = request.getScheme();             // http
            String serverName = request.getServerName();     // hostname.com
            int serverPort = request.getServerPort();        // 80
            String contextPath = request.getContextPath();   // /mywebapp
            
            if ((jdbcHost == null) || (jdbcHost.length() == 0)) {
                jdbcHost = serverName;
            }
            String uploadFileUrl = scheme+"://"+serverName+":"+serverPort+contextPath+"/"+"fileupload";
            fileManagerEndPoint = scheme+"://"+serverName+":"+serverPort + fileManagerEndPoint;
            downloaderEndPoint = scheme+"://"+serverName+":"+serverPort + downloaderEndPoint;
            
            String swVerInfo= "";
            String swTitleInfo= "";
            
            InputStream inputstream= getServletContext().getResourceAsStream("/AppletAdministration.jar");
            JarInputStream jarInputStream= new JarInputStream(inputstream);
            Manifest manifest = jarInputStream.getManifest();
            
            //get MANIFEST_VERSION value from manifest

            if (manifest!=null) {
                try {
                    Map map= manifest.getEntries();
                    Attributes attrs = (Attributes)map.get("adminApplet");
                    
                    swVerInfo+= (attrs!=null && attrs.getValue(Attributes.Name.IMPLEMENTATION_VERSION)!=null)?"(ver. "+attrs.getValue(Attributes.Name.IMPLEMENTATION_VERSION)+")":"";
                    swTitleInfo+= (attrs!=null && attrs.getValue(Attributes.Name.IMPLEMENTATION_TITLE)!=null)?"\""+attrs.getValue(Attributes.Name.IMPLEMENTATION_TITLE)+"\"":"Mini Metro Administration Console";
   
                } catch (Exception ex) {
                }
            }

            PrintWriter out = response.getWriter();
            out.println("<html>");
            out.println("<head>");
            //out.println("<title>Administration Console</title>");
            out.println("<title>" + swTitleInfo + " " + swVerInfo + "</title>");
            out.println("<link REL=\"STYLESHEET\" TYPE=\"text/css\" HREF=\"main.css\"/>");
            out.println("</head>");
            out.println("<body>");
            
            //out.println("<!--" + test + "-->");
            
            out.println("<APPLET ALIGN=\"CENTER\"");
            
            out.print("codebase=\"");
            out.print(contextPath);
            out.println("/\"");
            
            out.println("code=\"SupervisorApplet.class\"");
            
            out.print("archive=\"");
            out.print("AppletAdministration.jar,");
            out.print("axis.jar,");
            
            
            
            out.println("width=\"100%\"");
            out.println("height=\"100%\">");
            
            
            // parameters
            if ((loggingLevel != null) && (loggingLevel.length() > 0)) {
                out.print("<param name=\"");
                out.print("logging.level");
                out.print("\" value=\"");
                out.print(loggingLevel);
                out.println("\" />");
            }
            
            out.print("<param name=\"");
            out.print("jdbc.driver");
            out.print("\" value=\"");
            out.print(jdbcDriver);
            out.println("\" />");
            
            out.print("<param name=\"");
            out.print("jdbc.host");
            out.print("\" value=\"");
            out.print(jdbcHost);
            out.println("\" />");
            
            out.print("<param name=\"");
            out.print("jdbc.port");
            out.print("\" value=\"");
            out.print(jdbcPort);
            out.println("\" />");
            
            out.print("<param name=\"");
            out.print("jdbc.database");
            out.print("\" value=\"");
            out.print(jdbcDatabase);
            out.println("\" />");
            
            out.print("<param name=\"");
            out.print("jdbc.user");
            out.print("\" value=\"");
            out.print(jdbcUser);
            out.println("\" />");
            
            out.print("<param name=\"");
            out.print("jdbc.pwd");
            out.print("\" value=\"");
            out.print(jdbcPwd);
            out.println("\" />");
            
            out.print("<param name=\"");
            out.print("jdbc.driverclass");
            out.print("\" value=\"");
            out.print(jdbcDriverClass);
            out.println("\" />");
            
            
            
            final Cookie[] cookies = request.getCookies();
            if (cookies != null) {
                for (int i = 0; i < cookies.length; ++i) {
                    if ("JSESSIONID".equalsIgnoreCase(cookies[i].getName())) {
                        out.print("<param name=\"");
                        out.print("sessionid");
                        out.print("\" value=\"");
                        out.print(cookies[i].getValue());
                        out.println("\" />");
                        break;
                    }
                }
            }
            
            /////////////////////////
            // PROFILATION
            /////////////////////////
            
            out.print("<param name=\"");
            out.print("roles");
            out.print("\" value=\"");
            
            final StringBuilder builder = new StringBuilder();
            for (final Iterator roles = Roles.getValues(); roles.hasNext();) {
                final String role = roles.next().toString();
                if (request.isUserInRole(role)) {
                    if (builder.length() > 0) {
                        builder.append(",");
                    }
                    builder.append(role);
                }
            }
            out.print(builder);
            out.println("\" />");
            
            out.println("</APPLET>");
            out.println("</body>");
            out.println("</html>");
            out.close();
            
        } catch (Throwable e){
            log.error(e.getMessage(), e);
            throw new ServletException(e.getMessage());
        }
    }
    private static final String readOptionalParameter(Context context, String name) {
        try {
            return (String) context.lookup(name);
        } catch (NamingException ex) {
            log.warn(ex.getMessage());
            return null;
        }
    }
    
    // <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 {
        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 {
        processRequest(request, response);
    }
    
    /** Returns a short description of the servlet.
     */
    public String getServletInfo() {
        return "Short description";
    }
    // </editor-fold>
}

Ultima modifica di albertovw : 22-11-2007 alle 13:05.
albertovw è offline   Rispondi citando il messaggio o parte di esso
Old 22-11-2007, 15:52   #2
ally
Bannato
 
L'Avatar di ally
 
Iscritto dal: Jan 2003
Città:
Messaggi: 4421
...allora...se la request è un HttpServletRequest...

Codice:
public void test(HttpServletRequest request) throws Exception{

String attributo = (String)request.getSession().getAttribute("attributo");

}
...usando Struts...ma gli strati sono simili...

...ciao...
ally è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Lenovo IdeaPad Slim 3: un notebook Snapdragon X economico Lenovo IdeaPad Slim 3: un notebook Snapdragon X ...
Recensione OnePlus Watch 3 43mm: lo smartwatch che mancava per i polsi più piccoli Recensione OnePlus Watch 3 43mm: lo smartwatch c...
BOOX Note Air4 C è uno spettacolo: il tablet E Ink con Android per lettura e scrittura BOOX Note Air4 C è uno spettacolo: il tab...
Recensione Sony Xperia 1 VII: lo smartphone per gli appassionati di fotografia Recensione Sony Xperia 1 VII: lo smartphone per ...
Attenti a Poco F7: può essere il best buy del 2025. Recensione Attenti a Poco F7: può essere il best buy...
Marchi prestigiosi a prezzi da outlet su...
Upgrade PC a prezzi mai visti: Amazon sc...
Offerte Tado su Amazon: valvole termosta...
MSI Cyborg 15 con GeForce RTX 4060 e i7 ...
MacBook Air 2025 chip M4 a 949€, ma occh...
La sonda spaziale NASA New Horizons (che...
HONOR MagicPad 3: il tablet con Snapdrag...
Qualcomm mischia le carte: in arrivo ci ...
Meta sceglie Google per lo sviluppo dell...
Redmi Note 15 Pro+: batteria più piccola...
Amazon, un weekend di svendite lampo, ta...
Tutte le offerte sui portatili: tre tutt...
Macchie addio per sempre: SpotClean ProH...
Smartphone con batteria da 8.000 mAh? On...
Dreame L10s Ultra Gen 2 al minimo storic...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 05:23.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v