【试水CAS-4.0.3】第02节_CAS服务端登录页个性化
完整版见https://jadyer.github.io/2015/07/16/sso-cas-login-diy/
/**
* @see ------------------------------------------------------------------------------------------------------------------------
* @see CAS个性登录页
* @see 0.cas的页面显示控制是集中在\WEB-INF\cas.properties中的cas.viewResolver.basename属性的,它的值默认是default_views
* @see 所以cas会去classpath中寻找default_views.properties,在default_views.properties中指定了登录登出页面等
* @see 1.改动cas.properties文件,cas.viewResolver.basename=msxf,再拷贝default_views.properties为msxf.properties
* @see 2.改动msxf.properties文件,/WEB-INF/view/jsp/default改为/WEB-INF/view/jsp/msxf
* @see 当中casLoginView.url表示默认登录页,casLoginGenericSuccessView.url表示默认登录成功页
* @see 3.复制/WEB-INF/view/jsp/default/及其子文件夹全部文件到/WEB-INF/view/jsp/msxf/中
* @see 接下来就能够任意改动登录页面了
* @see 注意\WEB-INF\view\jsp\msxf\ui\includes\bottom.jsp页面中引用了googleapis的一些jquery库
* @see 能够换成百度CDN(http://cdn.code.baidu.com/)的,比方http://apps.bdimg.com/libs/jqueryui/1.10.2/jquery-ui.min.js
* @see ------------------------------------------------------------------------------------------------------------------------
* @create 2015-7-16 下午4:56:17
* @author 玄玉<http://blog.csdn.net/jadyer>
*/
以下是我改动的casLoginView.jsp
<%@ page pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%> <c:set var="ctx" value="${pageContext.request.contextPath}" scope="session"/> <!DOCTYPE HTML>
<html>
<head>
<meta charset="UTF-8"/>
<title>CAS单点登录系统</title>
<link rel="icon" type="image/x-icon" href="${ctx}/favicon.ico"/>
<script type="text/javascript" src="${ctx}/js/jquery-1.10.2.min.js"></script>
<script type="text/javascript" src="${ctx}/js/jquery-ui-1.10.2.min.js"></script>
<script type="text/javascript" src="${ctx}/js/cas.js"></script>
<!--[if lt IE 9]>
<script src="${ctx}/js/html5shiv-3.7.2.min.js" type="text/javascript"></script>
<![endif]-->
</head> <style>
body {background-color: #CBE0C9;}
#msg {padding:20px; margin-bottom:10px;}
#msg.errors {border:1px dotted #BB0000; color:#BB0000; padding-left:100px; background:url(${ctx}/images/error.gif) no-repeat 20px center;}
</style> <body>
<c:if test="${not pageContext.request.secure}">
<div id="msg" class="errors">
<h2>Non-secure Connection</h2>
<p>You are currently accessing CAS over a non-secure connection. Single Sign On WILL NOT WORK. In order to have single sign on work, you MUST log in over HTTPS.</p>
</div>
</c:if>
<form:form method="post" commandName="${commandName}" htmlEscape="true">
<!--
cssClass用于指定表单元素CSS样式名,相当于HTML元素的class属性
cssStyle用于指定表单元素样式,相当于HTML元素的style属性
cssErrorClass用于指定表单元素错误发生时相应的样式
path属性用于绑定表单对象的属性值,它支持级联属性,比方path="user.userName"将调用表单对象getUser.getUserName()绑定表单对象的属性值
-->
<form:errors path="*" id="msg" cssClass="errors" element="div" htmlEscape="false"/>
<input type="hidden" name="lt" value="${loginTicket}"/>
<input type="hidden" name="execution" value="${flowExecutionKey}"/>
<input type="hidden" name="_eventId" value="submit"/>
<table border="9">
<tr>
<td>
<c:if test="${not empty sessionScope.openIdLocalId}">
<strong>${sessionScope.openIdLocalId}</strong>
<input type="hidden" name="username" value="${sessionScope.openIdLocalId}"/>
</c:if>
<c:if test="${empty sessionScope.openIdLocalId}">
<form:input tabindex="1" path="username" placeholder="帐号" htmlEscape="true" maxlength="16" size="25"/>
</c:if>
</td>
</tr>
<tr>
<td>
<form:password tabindex="2" path="password" placeholder="密码" htmlEscape="true" maxlength="16" size="25"/>
</td>
</tr>
<tr>
<td>
<input type="checkbox" tabindex="3" name="warn" value="true"/>
<label for="warn">转向其它网站前提示我</label>
</td>
</tr>
<tr>
<td>
<input type="submit" tabindex="4" value="登录"/>
</td>
</tr>
</table>
</form:form>
</body>
</html>
以下是我改动的casGenericSuccess.jsp
<%@ page pageEncoding="UTF-8"%>
<body style="background-color:#CBE0C9;">
<span style="color:red; font-size:64px; font-weight:bold;">登录成功</span>
</body>
以下是效果图



【试水CAS-4.0.3】第02节_CAS服务端登录页个性化的更多相关文章
- 【试水CAS-4.0.3】第06节_CAS服务端配置HTTPS
完整版见https://jadyer.github.io/2012/05/30/tomcat-https/ /** * @see CAS服务端配置HTTPS * @see -------------- ...
- 【试水CAS-4.0.3】第01节_CAS服务端搭建及导入源代码到MyEclipse
完整版见https://jadyer.github.io/2015/07/16/sso-cas-server-demo/ /** * @see ---------------------------- ...
- 部署基于.netcore5.0的ABP框架后台Api服务端,以及使用Nginx部署Vue+Element前端应用
前面介绍了很多关于ABP框架的后台Web API 服务端,以及基于Vue+Element前端应用,本篇针对两者的联合部署,以及对部署中遇到的问题进行处理.ABP框架的后端是基于.net core5.0 ...
- SpringCloud升级之路2020.0.x版-19.Eureka的服务端设计与配置
本系列代码地址:https://github.com/HashZhang/spring-cloud-scaffold/tree/master/spring-cloud-iiford Eureka Se ...
- 单点登录(SSO)解决方案之 CAS服务端数据源设置及页面改造
接上篇 单点登录(SSO)解决方案之 CAS 入门案例 服务端数据源设置: 开发中,我们登录的user信息都是存在数据库中的,下面说一下如何让用户名密码从我们的数据库表中做验证. 案例中我最终把cas ...
- CAS (7) —— Mac下配置CAS 4.x的JPATicketRegistry(服务端)
CAS (7) -- Mac下配置CAS 4.x集群及JPATicketRegistry(服务端) tomcat版本: tomcat-8.0.29 jdk版本: jdk1.8.0_65 cas版本: ...
- Swift3.0服务端开发(一) 完整示例概述及Perfect环境搭建与配置(服务端+iOS端)
本篇博客算是一个开头,接下来会持续更新使用Swift3.0开发服务端相关的博客.当然,我们使用目前使用Swift开发服务端较为成熟的框架Perfect来实现.Perfect框架是加拿大一个创业团队开发 ...
- Json.Net6.0入门学习试水篇
原文:Json.Net6.0入门学习试水篇 前言 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.简单地说,JSON 可以将 JavaScript 对象中 ...
- 【试水CAS-4.0.3】第07节_CASclient配置单点登录
完整版见https://jadyer.github.io/2015/07/26/sso-cas-client-login/ 本文源代码下载:http://download.csdn.net/detai ...
随机推荐
- 一行代码解决IE兼容性问题
在网站开发中不免因为各种兼容问题苦恼,针对兼容问题,其实IE给出了解决方案Google也给出了解决方案百度也应用了这种方案去解决IE的兼容问题 百度源代码如下 <!Doctype html> ...
- Java基础学习总结(47)——JAVA输入输出流再回忆
一.什么是IO Java中I/O操作主要是指使用Java进行输入,输出操作. Java所有的I/O机制都是基于数据流进行输入输出,这些数据流表示了字符或者字节数据的流动序列. Java的I/O流提供了 ...
- NYIST 1030 Yougth's Game[Ⅲ]
Yougth's Game[Ⅲ]时间限制:3000 ms | 内存限制:65535 KB难度:4 描述有一个长度为n的整数序列,A和B轮流取数,A先取,每次可以从左端或者右端取一个数,所有数都被取完时 ...
- hdu 4544 湫湫系列故事——消灭兔子 优先队列+贪心
将兔子的血量从小到大排序,箭的威力也从小到大排序, 对于每仅仅兔子将威力大于血量的箭增加队列,写个优先队列使得出来数位价钱最少.. #include<stdio.h> #include&l ...
- 闭包(closure)与协程共用时要注意的事情
闭包是一种能够让你用非常舒服的方式来编程的小技巧,Go也支持闭包. 假设从来没有接触过闭包,想在一開始就弄懂什么是闭包(closure)是非常困难的,就像递归一样,直到你真正写过.用过它,你才干真正的 ...
- JavaSE入门学习24:Java面向对象补充
一Java中的Object类 Object类是全部Java类的父类.假设一个类没有使用extendskeyword明白标识继承另外一个类,那么这个类默认 继承Object类. public class ...
- Post请求方式长度參数过长导致參数为空
Post提交方式本身对于參数的长度没有限制,HTTP协议也没有限制. 可是今天在做一个web项目的时候碰到一个问题,当要提交的表单内容达到一定大小时,发现后台代码接收到的參数为空. 查询了一下.发现是 ...
- 为QML创建C++插件(下载)
版权声明:本文为博主原创文章,欢迎转载,转载请注明出处 https://blog.csdn.net/MatchYang/article/details/54564462 1. 为QML创建C++插件的 ...
- artTemplate的使用
引言 腾讯的前端模板引擎,不逊于doT.js 1.引入 <script type="text/javascript" src="../plugin/artTempl ...
- IMP-00010: 不是有效的导出文件,标题验证失败
IMP-00010: 不是有效的导出文件,标题验证失败 IMP-00000: 未成功终止导入 在google上查找了一下,大概有两种情况: 1.imp/exp的版本不对,也就是说低版本的导出,可以 ...