Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

using java Part A: 1. Create a User JavaBean. The User bean should have all the

ID: 3885741 • Letter: U

Question

using java

Part A:

1. Create a User JavaBean. The User bean should have all the attributes collected from the new customer form. Also give it a username and password property.

2. In the NewCustomerServlet, create an instance of the User bean from the new customer form data. The username should consist of their last name combined with their zipcode. Give them a temporary password of welcome1.

3. Add the new create user object to the session scope.

4. Using EL, bind the customer object to the success page and display all the attributes along with the new username and password.

Part B:

1. Add a “Reset Password” link to the Login Page.

Create a password_reset.jsp

2. Using EL, bind the User object password to a form field in a page.

Allow the user to change their password.

3. On the servlet side, retrieve the user from the session and change the password to the password entered on the reset form.

Save the User object in session scope.

Redirect the user to the account_activity page.

Part C:

1. On the account_activity page use a JSTL if statement. If the User object is in the session and not null, display a welcome message containing their firstname and lastname in the page. If it does not exist, display a “Not Logged In” message on the page.

part D:

1. Implement a header.html and footer.jsp file for the header and footer of your TOBA application. Using a JSP tag, the footer should “dynamically” display the current date in the copyright information. Include the header and footer in all pages of your application.

Explanation / Answer

1) Registration Form(HTML)

<form action="/action_page.php">
<div class="container">
<label><b>Email</b></label>
<input type="text" placeholder="Enter Email" name="email" required>

<label><b>Password</b></label>
<input type="password" placeholder="Enter Password" name="psw" required>

<label><b>Repeat Password</b></label>
<input type="password" placeholder="Repeat Password" name="psw-repeat" required>
<input type="checkbox" checked="checked"> Remember me
<p>By creating an account you agree to our <a href="#">Terms & Privacy</a>.</p>

<div class="clearfix">
<button type="button" class="cancelbtn">Cancel</button>
<button type="submit" class="signupbtn">Sign Up</button>
</div>
</div>
</form>

2) Registration Servlet

<html>
<body>
<form action="servlet/Register" method="post">
  
Name:<input type="text" name="userName"/><br/><br/>
Password:<input type="password" name="userPass"/><br/><br/>
Email Id:<input type="text" name="userEmail"/><br/><br/>
Country:
<select name="userCountry">
<option>India</option>
<option>Pakistan</option>
<option>other</option>
</select>
  
<br/><br/>
<input type="submit" value="register"/>
  
</form>
</body>
</html>

5) Registration Login Page

/* Full-width input fields */
input[type=text], input[type=password] {
width: 100%;
padding: 12px 20px;
margin: 8px 0;
display: inline-block;
border: 1px solid #ccc;
box-sizing: border-box;
}

/* Set a style for all buttons */
button {
background-color: #4CAF50;
color: white;
padding: 14px 20px;
margin: 8px 0;
border: none;
cursor: pointer;
width: 100%;
}

/* Extra styles for the cancel button */
.cancelbtn {
padding: 14px 20px;
background-color: #f44336;
}

/* Float cancel and signup buttons and add an equal width */
.cancelbtn,.signupbtn {
float: left;
width: 50%;
}

/* Add padding to container elements */
.container {
padding: 16px;
}

/* The Modal (background) */
.modal {
display: none; /* Hidden by default */
position: fixed; /* Stay in place */
z-index: 1; /* Sit on top */
left: 0;
top: 0;
width: 100%; /* Full width */
height: 100%; /* Full height */
overflow: auto; /* Enable scroll if needed */
background-color: rgb(0,0,0); /* Fallback color */
background-color: rgba(0,0,0,0.4); /* Black w/ opacity */
padding-top: 60px;
}

/* Modal Content/Box */
.modal-content {
background-color: #fefefe;
margin: 5% auto 15% auto; /* 5% from the top, 15% from the bottom and centered */
border: 1px solid #888;
width: 80%; /* Could be more or less, depending on screen size */
}

/* The Close Button (x) */
.close {
position: absolute;
right: 35px;
top: 15px;
color: #000;
font-size: 40px;
font-weight: bold;
}

.close:hover,
.close:focus {
color: red;
cursor: pointer;
}

/* Clear floats */
.clearfix::after {
content: "";
clear: both;
display: table;
}

/* Change styles for cancel button and signup button on extra small screens */
@media screen and (max-width: 300px) {
.cancelbtn, .signupbtn {
width: 100%;
}
}