如何使用Spring Security进行Primefaces登录

时间:2018-07-29 06:58:14

标签: spring-security primefaces

我是新手,所以我已经用Prime 6.2编写了一个Web应用程序,我需要使用spring security来确保登录安全,我该怎么做以及如何配置我的web.xml或其他配置文件。 这是我的样本web.xml

  <?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.1" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd">

    <context-param>
        <param-name>com.sun.faces.numberOfViewsInSession</param-name>
        <param-value>5</param-value>
    </context-param>
    <context-param>
        <param-name>com.sun.faces.serializeServerState</param-name>
        <param-value>false</param-value>
    </context-param>
    <context-param>
        <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
        <param-value>server</param-value>
    </context-param>
    <context-param>
        <param-name>javax.faces.PROJECT_STAGE</param-name>
        <param-value>Production</param-value>
    </context-param>
    <context-param>
        <param-name>javax.faces.DATETIMECONVERTER_DEFAULT_TIMEZONE_IS_SYSTEM_TIMEZONE</param-name>
        <param-value>true</param-value>
    </context-param>
    <context-param>
        <param-name>javax.faces.INTERPRET_EMPTY_STRING_SUBMITTED_VALUES_AS_NULL</param-name>
        <param-value>true</param-value>
    </context-param>
    <context-param>
        <param-name>primefaces.PRIVATE_CAPTCHA_KEY</param-name>
        <param-value>6Lf2XQkTAAAAAHsc1-7Mt_kMlmcmGqlxoMDJlp2K</param-value>
    </context-param>
    <context-param>
        <param-name>primefaces.PUBLIC_CAPTCHA_KEY</param-name>
        <param-value>6Lf2XQkTAAAAANcvOwYqPxWL4iZDksFqHpS39GDA</param-value>
    </context-param>

    <context-param>
        <param-name>primefaces.PUSH_SERVER_URL</param-name>
        <param-value>http://127.0.0.1:8080</param-value>
    </context-param>
    <context-param>
        <param-name>primefaces.CLIENT_SIDE_VALIDATION</param-name>
        <param-value>true</param-value>
    </context-param>
    <context-param>
        <param-name>primefaces.UPLOADER</param-name>
        <param-value>commons</param-value>
    </context-param>
    <context-param>
        <param-name>primefaces.THEME</param-name>
        <param-value>#{guestPreferences.theme}</param-value>
    </context-param>
    <context-param>
        <param-name>primefaces.FONT_AWESOME</param-name>
        <param-value>true</param-value>
    </context-param>

    <servlet>
        <servlet-name>Faces Servlet</servlet-name>
        <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>Faces Servlet</servlet-name>
        <url-pattern>*.jsf</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>Faces Servlet</servlet-name>
        <url-pattern>*.xhtml</url-pattern>
    </servlet-mapping>

</web-app>

这是我的登录页面:

<ui:composition template="/WEB-INF/templateLogin.xhtml">
<ui:define name="body">
    <f:view>
        <h:form styleClass="form-signin" prependId="false">
            <section class="panel panel-default bg-white ">
            <header class="panel-heading text-center">

                <br/>
                <h:outputLabel value="#{msg['title.project']}"/>
            </header>

            <div class="panel-body wrapper-lg">
            <div class="form-group">
                <h:outputLabel styleClass="control-label" for="loginName"
                               value="#{msg['security.login.loginName']}:"/>
                <span class="asterisk">*</span>

                <p:inputText id="loginName" value="#{userBean.username}"
                             maxlength="20"
                             styleClass="form-control input-lg"/>

            </div>

            <div class="form-group">
                <h:outputLabel styleClass="control-label" for="password"
                               value="#{msg['security.login.password']}:"/>
                <span class="asterisk">*</span>

                <p:password id="password" onchange="#{userBean.password}" value="#{userBean.password}"
                               maxlength="20"
                               styleClass="form-control input-lg password"/>

            </div>



            <h:commandButton styleClass="btn btn-success1 chart341" style="margin-right:5px;" action="#{userBean.login}"
                             value="#{msg['security.button.login']}"
                             onclick="javascript:if (!validateForm()) return false;" >
            </h:commandButton>
            </div>
            </section>

        </h:form>
    </f:view>
</ui:define>

0 个答案:

没有答案