Avatar billede juliemusen Nybegynder
02. marts 2012 - 12:05 Der er 7 kommentarer og
1 løsning

håndtere succesfuld login

Jeg skal håndtere et succesfuldt login, men jeg aner ikke hvad jeg skal gøre her. Det er hvor det starter med XXXXX

package au.cs.dweb.qiang;

import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
* Servlet implementation class Login
*/
@WebServlet("/Login")
public class Login extends ShopServlet {
    private static final long serialVersionUID = 1L;

    public static class Args {
        public static final String USERNAME = "username";
        public static final String PASSWORD = "password";
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp)
            throws ServletException, IOException {
        String username = req.getParameter(Args.USERNAME);
        String password = req.getParameter(Args.PASSWORD);

        if (username == null || password == null) {
            resp.sendRedirect("login.jsp");
            return;
        } else {
            CustomerInfo customer;
            try {
                customer = this.getClient().login(username, password);
            } catch (IOException e) {
                showError(resp, "Invalid username/password");
                return;
            }

            if (customer == null) {
                showError(resp, "Invalid username/password");
            } else {
               
               
               
               
               
               

                // handle the successful case incl. session
                // Util.setLoggedInCustomer(req, customer.getId(),
                // customer.getName());
                // resp.sendRedirect("index.jsp");
            }
        }
    }

    private void showError(HttpServletResponse resp, String msg)
            throws IOException {
        // resp.sendRedirect("index.jsp?msg=" + URLEncoder.encode(msg, "UTF8"));
    }

}

Nogle der kan hjælpe?
Avatar billede juliemusen Nybegynder
02. marts 2012 - 13:56 #1
Login skal være afhængig af xsd skemaet:

<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.cs.au.dk/dWebTek/2011"
    xmlns:w="http://www.cs.au.dk/dWebTek/2011" xmlns:h="http://www.w3.org/1999/xhtml"
    elementFormDefault="qualified">

    <import namespace="http://www.w3.org/1999/xhtml" schemaLocation="import.xsd" />


<element name="createCustomer" type="w:createCustomer" />
    <complexType name="createCustomer">
        <all>
            <element ref="w:shopKey" />
            <element ref="w:customerName" />
            <element ref="w:customerPass" />
        </all>
    </complexType>

Dvs at der skal bruges en servlet, jsp og dette xsd skema. Det skal være sådan at man kan registrer sig som bruger, og logge ind, og derefter huske en som bruger på hvilken som helst side man er på.

Login siden har jeg:

<%@ 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>Insert title here</title>

<link rel="stylesheet" type="text/css" href="css/form.css" />
<link rel="stylesheet" type="text/css" href="css/background.css" />
</head>
<body>
    <form action="???create-account???" method="post">
        <table class="register_background" align="center" border="1">
            <tr>
                <td class="formtext">Brugernavn</td>
                <td><input type="text" name="username"/></td>
                <td>3</td>
            </tr>
            <tr>
                <td class="formtext">Kode</td>
                <td><input type="password" name="password"/></td>
            <td>3</td>
            </tr>
            <tr>
                <td>Gentag Kode</td>
                <td><input type="password" name="password2"/></td>
                <td>3</td>
            </tr>
            <tr>
                <td></td>
               
                <td><input type="submit" value="Create my account"/></td>
               
               
                <td>3</td>
            </tr>
            <tr>
                <td colspan="3"><a href="velkommen.jsp">Tilbage</a></td>
            </tr>
        </table>
    </form>
</body>
</html>

Jeg håber virkelig i kan hjælpe mig med hele koden. Jeg har siddet med det i mange dage, og er ikke rigtig kommet længere. Det er vel ikke sådan at du har en hel kode, som kan gøre dette Arne?

Kh Julie
Avatar billede arne_v Ekspert
02. marts 2012 - 19:46 #2
Ved successfuld login saetter du vel noget i session, som du saa senere kan teste paa.

Og saa skal der forwardes til en side.

Der er faktisk udkommenteret kode i det du har postet som goer noget af dette.
Avatar billede arne_v Ekspert
02. marts 2012 - 19:48 #3
Men jeg maa indroemme at jeg tror ikke at dit problem er kode. Jeg tror at dit problem er at du ikke har defineret hvad du skal lave.

Har du fundet ud af hvordan brugeren skal navigere mellem sider og hvilke web services kald der skal laves hvornaar i flowet?
Avatar billede juliemusen Nybegynder
03. marts 2012 - 19:07 #4
Hej igen Arne.

Vi har fået vores login til at virke og hvor man kan oprette en bruger, så det er jo super.

Har du fundet ud af hvordan brugeren skal navigere mellem sider og hvilke web services kald der skal laves hvornaar i flowet?

Når man er kommet frem til sit succesfulde login, skal man blive viderestillet til index.jsp. Herfra skal der så være menuer og links rundt på siden. Bliver sessionen så gemt der? man skal vel ikke sætte et script ind på hver side vel, som henviser til en java applet?
Avatar billede arne_v Ekspert
03. marts 2012 - 20:46 #5
session deles mellem alle side

nej - jeg tror ikke at I skal bruge applet
Avatar billede arne_v Ekspert
03. marts 2012 - 20:46 #6
efter login skal I enten lave en redirect eller en forward til side
Avatar billede juliemusen Nybegynder
14. marts 2012 - 20:11 #7
Hej Arne, som i den anden tråd takker jeg dig mange gange :-)

Ligger du et svar?

Kh Julie
Avatar billede arne_v Ekspert
14. marts 2012 - 20:22 #8
svar
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester