# JSF JPA Login Example

Click here to start the JSF JPA Login Example

## Description

This is an example MyEclipse JSF 2.2.4, JPA 2.1 web application project that demonstrates a simple user registration and login flow.
Some key concepts covered in this example are:

- Use of @ManagedBean and @RequestScoped annotations to configure the JSF managed bean and its scope
- Page navigation using the JSF 2.x implicit page navigation technique
- JSF 2.x Flash Scope
- JSF 2.x h:link
- JPA reverse engineering using the MyEclipse Persistence Tools

To simpify operation, this project is preconfigured to run as a standalone Web project with the 1-Click application launcher on the MyEclipse Server Sandbox, i.e., embedded Tomcat 7 servlet container that ships with MyEclipse. Alternatively, the project may also be deployed to Java EE 6 and higher application servers.

## Requirements

- MyEclipse 2014 or later
- Java SE 6 or greater

## How to Run

1. You must first start the embedded Derby server which hosts the database this application will use. Switch to the Servers view, select MyEclipse Derby and click the Run button.
2. Right-click on this project and select either Debug As or Run As, then select "MyEclipse Server Application". Choose a server that you would like to test the application with; MyEclipse will automatically deploy the application to the chosen server and start the server. Note that the home page of the application is automatically opened in an internal web browser only for the MyEclipse Tomcat servers. For other servers please open a web browser internally or externally, enter the home page URL to run and test the application.

## Related Links

- MyEclipse JSF Tutorial
- MyEclipse JPA Tutorial
- MyEclipse Tomcat Tutorial

## Feedback

We hope you found this example project helpful. If you ran into any problems while working with the example project, please feel free to post to our support forums and let us know. Also if you have any suggestions for improvements, noticed something wrong or just wanted to ask questions we encourage you to post and let us know!