Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @ManagedBean(name = "login")
- @RequestScoped
- public class AdminLoginController{
- protected String getPageAfterLogin() {
- return "/templates/bsTemplate.jsf";
- }
- private String inUserName;
- private String inUserPass;
- private static final Logger logger = LoggerFactory.getLogger(LoginController.class);
- private static ResourceBundle bundle = ResourceBundle.getBundle("webcore");
- public void doLogin() throws Exception {
- logger.debug("doLogin");
- if (checkLogin()) {
- String result = getPageAfterLogin();
- ExternalContext ec = FacesContext.getCurrentInstance().getExternalContext();
- ec.redirect(ec.getRequestContextPath() + result);
- }
- }
- public boolean checkLogin() throws Exception {
- boolean result = false;
- try {
- if (inUserName != null && !inUserName.isEmpty() && inUserPass != null && !inUserPass.isEmpty()) {
- this.inUserName = inUserName.toUpperCase();
- checkLogin(inUserName, inUserPass);
- saveLoginPasswordToSessionParams();
- result = true;
- } else {
- logger.error(bundle.getString("ERROR_EMPTY_LOGIN_PASSWORD"));
- throw new JInvJsfException(bundle.getString("ERROR_EMPTY_LOGIN_PASSWORD"));
- }
- } catch (Exception e) {
- logger.error(bundle.getString("ERROR_AUTH") + e.getMessage(), e);
- throw new JInvJsfException(bundle.getString("ERROR_AUTH") + e.getMessage(), e);
- }
- return result;
- }
- public String getInUserName() {
- return inUserName;
- }
- public void setInUserName(String inUserName) {
- this.inUserName = inUserName;
- }
- public String getInUserPass() {
- return inUserPass;
- }
- public void setInUserPass(String inUserPass) {
- this.inUserPass = inUserPass;
- }
- private void saveLoginPasswordToSessionParams() {
- HttpUtil.getSession().setAttribute("login", inUserName);
- HttpUtil.getSession().setAttribute("password", inUserPass);
- }
- private void checkLogin(String inUserName, String inUserPass) throws Exception {
- }
- }
- <!DOCTYPE html>
- <html xmlns="http://www.w3.org/1999/xhtml"
- xmlns:h="http://xmlns.jcp.org/jsf/html"
- xmlns:p="http://primefaces.org/ui"
- xmlns:f="http://xmlns.jcp.org/jsf/core">
- <h:head>
- <meta charset="utf-8"/>
- <meta name="viewport" content="width=device-width, initial-scale=1.0"/>
- <title> Web Admin</title>
- <link href="${facesContext.externalContext.requestContextPath}/resources/css/bootstrap.min.css" rel="stylesheet"/>
- <link href="${facesContext.externalContext.requestContextPath}/resources/fonts/awesome/css/font-awesome.css" rel="stylesheet"/>
- <link href="${facesContext.externalContext.requestContextPath}/resources/css/animate.css" rel="stylesheet"/>
- <link href="${facesContext.externalContext.requestContextPath}/resources/css/login.css" rel="stylesheet"/>
- </h:head>
- <h:body class="gray-bg">
- <div class="container">
- <div class="row" >
- <div class=" panelRightBorder">
- <h:form styleClass="form-horizontal ">
- <div class="col-sm-offset-3 col-md-offset-2 col-md-7 col-sm-6 loginAllign">
- <div class="panel panel-info">
- <div class="panel-heading">
- <h:graphicImage class="" value="/resources/images/logo3.png" />
- <div style="display:inline-block; width:10px"></div>
- <label> Web Administrator</label>
- </div>
- <div class="panel-body">
- <fieldset>
- <legend>Авторизация</legend>
- <div class="form-group">
- <label class="col-sm-4 control-label">Адрес приложения</label>
- <div class="col-sm-8">
- <h:inputText styleClass="form-control focused" value="#{login.inUserName}" label="Логин"/>
- </div>
- </div>
- <div class="form-group">
- <label class="col-sm-4 control-label">Логин</label>
- <div class="col-sm-8">
- <h:inputText styleClass="form-control focused" value="#{login.inUserName}" label="Логин"/>
- </div>
- </div>
- <div class="form-group">
- <label class="col-sm-4 control-label">Пароль</label>
- <div class="col-sm-8">
- <h:inputSecret styleClass="form-control focused" value="#{login.inUserPass}" label="Пароль" redisplay="true"/>
- </div>
- </div>
- </fieldset>
- <div class="form-group">
- <div class="col-sm-offset-4 col-sm-6">
- <p:commandButton styleClass="btn btn-primary btn-lg btn-xs-fullwidth" actionListener="#{login.doLogin}" value="Войти">
- </p:commandButton>
- <p:messages id="messages" showDetail="true" autoUpdate="true" closable="true" />
- </div>
- </div>
- </div>
- </div>
- </div>
- </h:form>
- </div>
- </div>
- </div>
- <script src="${facesContext.externalContext.requestContextPath}/resources/js/jquery-3.1.1.min.js"></script>
- <script src="${facesContext.externalContext.requestContextPath}/resources/js/bootstrap.min.js"></script>
- <script src="${facesContext.externalContext.requestContextPath}/resources/js/jquery.metisMenu.js"></script>
- <script src="${facesContext.externalContext.requestContextPath}/resources/js/jquery.slimscroll.min.js"></script>
- <script src="${facesContext.externalContext.requestContextPath}/resources/js/inspinia.js"></script>
- <script src="${facesContext.externalContext.requestContextPath}/resources/js/pace.min.js"></script>
- <script src="${facesContext.externalContext.requestContextPath}/resources/js/jquery.peity.min.js"></script>
- <script src="${facesContext.externalContext.requestContextPath}/resources/js/peity-demo.js"></script>
- </h:body>
- </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement