sitemesh应用

来源:互联网 发布:隐形眼镜 知乎 编辑:程序博客网 时间:2024/06/01 08:40

//web.xml
<filter>
    <filter-name>sitemesh</filter-name>
    <filter-class>org.sitemesh.config.ConfigurableSiteMeshFilter</filter-class>
</filter>
  <filter-mapping>
    <filter-name>sitemesh</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>

//pom.xml

<dependency>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-sitemesh-plugin</artifactId>
<version>2.3.4.1</version>
</dependency>
<dependency>
<groupId>opensymphony</groupId>
<artifactId>sitemesh</artifactId>
<version>2.4.2</version>
</dependency>
<dependency>
<groupId>org.sitemesh</groupId>
<artifactId>sitemesh-tools-benchmark</artifactId>
<version>3.0-alpha-1</version>
</dependency>

sitemesh3.xml
<sitemesh>
<mapping path="/*" decorator="/WEB-INF/layouts/default.jsp"/>//任何页面引入装饰模板
<!-- <mapping path="/emsConfigAction/*" decorator="/WEB-INF/layouts/emsDefault.jsp"/>
<mapping path="/" exclue="true"/>
<mapping path="*.htm" exclue="true"/>
<mapping path="/error/*" exclue="true"/>
<mapping path="/securityAction/logout.action" exclue="true"/>
<mapping path="/dataSyncAction/add*" exclue="true"/> -->

</sitemesh>


//装饰模板  default.jsp

<%@page import="org.apache.commons.lang3.StringUtils"%>
<%@page import="java.util.List"%>
<%@page import="org.apache.log4j.Logger" %>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ include file="/WEB-INF/include/common.jsp"%>
<c:set var="basePath" value="${pageContext.request.contextPath}" />

<!DOCTYPE html>
<html>
<head>

<jsp:include page="/WEB-INF/layouts/common.jsp"></jsp:include>
<script type="text/javascript" src="${basePath}/js/common/timeout.js"></script>
<script type="text/javascript"
src="${basePath}/js/homepage/changeUserPwd.js"></script>
<script type="text/javascript">
    basePath = "${basePath}";

</script>
<style type="text/css">
.banner a {
color: #000;
padding-left:5px;
}
</style>
<title></title>
<sitemesh:write property="head" />
<script type="text/javascript">
<%-- var requestUrl='<%=url%>';
      setInterval("myInterval()",1200000);//1000为1秒钟
       function myInterval()
       {
jQuery.getScript(requestUrl,
        function(data){           
        });       
        } --%>
</script>
</head>
<body>
  <!--顶部 Begin-->
<jsp:include page="/WEB-INF/include/head.jsp" />
<!--顶部 End-->

<!-- 主内容 Begin-->
<div class="mainContentContainer" style="height:4%;">
<!-- mainNav start -->
<div class="mainNav">
<div class="wrapper">
<ul class="clearfix">
<li class="fLeft navCurrent"><span class="mainText whiteText font14 fontB">首&nbsp;页</span></li>
<li class="fLeft navDrop">
<a class="navMenu mainText whiteText font14 fontB" href="">监&nbsp;控</a>
</li>
<li class="fLeft navDrop">
<a class="navMenu mainText whiteText font14 fontB" href="${basePath}/alarmAction/toIndex.action"">报&nbsp;警</a>
</li>
<li class="fLeft navDrop">
<a class="navMenu mainText whiteText font14 fontB" href="">统&nbsp;计</a>
</li>
</ul>
</div>
</div>
</div>
<!-- 主内容 End-->


<sitemesh:write property="body" />//按标签元素名引入,把符合路劲的jsp对应元素加入,增量




<!-- 尾部 Begin -->
<jsp:include page="/WEB-INF/include/foot.jsp"/>
<!-- 尾部End -->
</body>


</html>



//引用页面  common.jsp

//前面有utf-8后面就不能有
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<c:set var="basePath" value="${pageContext.request.contextPath}" />

<!-- css file -->
<link rel="stylesheet" href="${basePath}/css/base.css" type="text/css" >
<link rel="stylesheet" href="${basePath}/css/public.css" type="text/css" >
<link rel="stylesheet" href="${basePath}/css/widget.css" type="text/css" >
<!-- js file -->
<script src="${basePath}/js/jquery-1.8.2.min.js"></script>



//加入页面1  index.jsp

<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<c:set var="basePath" value="${pageContext.request.contextPath}" />
<!DOCTYPE html>
<html  xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>OSS</title>
</head>
<body>


</body>
</html>


//加入页面2  alarm.jsp


<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<c:set var="basePath" value="${pageContext.request.contextPath}" />
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type="text/javascript"
src="${basePath}/staticjs/My97DatePicker/WdatePicker.js" defer="defer"></script>
<script>
var pageSize =10;
var sortId = null;
var sortType = null;
$(function(){
//loadTableData(1); 
//$(".host_con_title span").click(function(){
//var id = this.id;
//if(id!=''){
//if(sortId==null){
//sortId = id;
//sortType = '0';
//}else{
//if(sortId==id){
//if(sortType == '0'){
//sortType = '1';
//}else{
//sortType = '0';
//}

//}else{
//sortId = id;
//sortType = '0';
//}

//}
//loadTableData(1); 
//}

//})

}) 
function initCurrTablePager(data){
var pagebar="";
var nowpage=data.currentPageNum;
var totalpages=Math.ceil(data.totalSize/data.pageSize);

var endPage=totalpages;

if(nowpage<=1){pagebar+="<b>上一页</b>";}
if(nowpage>1){pagebar+="<a href='javascript:void(0);' onclick='loadTableData("+(nowpage-1)+")'>上一页</a>"}

if(nowpage-1>4){
pagebar+="<a href='javascript:void(0);' onclick='loadTableData(1)'>"+1+"</a>";
pagebar+="<span>...</span>"
for(var i=nowpage-4;i<=nowpage;i++){
if(nowpage==i){pagebar+="<span class='page_index'>"+nowpage+"</span>"}
else {pagebar+="<a href='javascript:void(0);' onclick='loadTableData("+i+")'>"+i+"</a>"}
}
}else{
for(var i=1;i<=nowpage;i++){
if(nowpage==i){pagebar+="<span  class='page_index'>"+nowpage+"</span>"}
else {pagebar+="<a href='javascript:void(0);' onclick='loadTableData("+i+")'>"+i+"</a>"}
}
}

if(nowpage+4<endPage){
for(var i=nowpage+1;i<=nowpage+4;i++){
pagebar+="<a href='javascript:void(0);' onclick='loadTableData("+i+")'>"+i+"</a>";
}
pagebar+="<span>...</span>"
     pagebar+="<a href='javascript:void(0);' onclick='loadTableData("+endPage+")'>"+endPage+"</a>";
}
else{
for(var i=nowpage+1;i<=endPage;i++){
pagebar+="<a href='javascript:void(0);' onclick='loadTableData("+i+")'>"+i+"</a>";
}
}

if(nowpage>=totalpages){pagebar+="<b>下一页</b>"}
if(nowpage<totalpages){pagebar+="<a class='next' href='javascript:void(0);' onclick='loadTableData("+(nowpage+1)+")'>下一页</a>"}

$("#new_page").html(pagebar);
}
function searchData(){
sortId = null;
sortType = null;
loadTableData(1);
}
function loadTableData(currentpage){
var sDate = $("#startDateSearch").val();
var eDate = $("#endDateSearch").val();
if(sDate!=''&&eDate!=''&&dateCompare(sDate,eDate)){
alertInfo("查询起始日期不能晚于终止日期");

return;
}

var requUrl="${basePath}/operateLogAction/getOperateLog.action";
$.ajax({
type : 'post',
url : requUrl,
data: {
subsystem:$("#subsystem").val(),
operateType:$("#operateType").val(),
startDateSearch:$("#startDateSearch").val(),
endDateSearch:$("#endDateSearch").val(),
eventId:$("#eventId").val(),
sidx:sortId,
sord:sortType,
page:currentpage,
rows:pageSize},
dataType : 'json',
success : function(data) {
//alert(data);
$("#listmac").text("");
var dataList =data.data;
var startRowNo = data.startRowNo;
var liHtml="";
for(var i=0;i<dataList.length;i++){
liHtml+='<tr>';
liHtml+='<td><span class="field">'+(startRowNo++)+'</span></td>';
liHtml+='<td><span class="field">'+dataList[i].eventId+'</span></td>';
liHtml+='<td><span class="field">'+dataList[i].operateType+'</span></td>';
liHtml+='<td><span class="field">'+dataList[i].timestamp+'</span></td>';
liHtml+='<td><span class="field">'+dataList[i].requestContent+'</span></td>';
liHtml+='<td><span class="field">'+dataList[i].requestStatus+'</span></td>';
liHtml+='<td><span class="field" title="'+dataList[i].responseContent+'" style="width: 400px;text-overflow: ellipsis;white-space: nowrap;display: inline-block;overflow: hidden;">'+dataList[i].responseContent+'</span></td>';
liHtml+='<td><span class="field">'+dataList[i].subsystem+'</span></td>';
liHtml+='<td><span class="field">'+dataList[i].eventName+'</span></td>';
liHtml+='</tr>';
}
$("#listmac").append(liHtml);
initCurrTablePager(data);
}
});

}


</script>
</head>

<body>
<div class="main">
    <div class="host_box" >
       <div class="ems_box" >
            <span>Resource Id:</span><select   class="ems_btn"  id="subsystem" style="width:140px;margin-left: 4%;">
            <option  value="-1">--请选择--</option>
            <option  value="Host1" selected>Host1</option>
            <option value="Host2">Host2</option>
            <option value="虚拟机1">虚拟机1</option>
             <option value="虚拟机2">虚拟机2</option></select>
            
            
             <span style="margin-left: 4%;">报警指标:</span><select   class="ems_btn"  id="subsystem" style="width:140px;margin-left: 4%;">
            <option  value="-1">--请选择--</option>
            <option  value="CPU利用率">CPU利用率&gt;=95%</option>
            <option value="内存利用率">内存利用率&gt;=90%</option>
            <option value="磁盘利用率">磁盘利用率&gt;=95%</option>
             </select>
           
           
                <span style="margin-left: 4%;">告警级别:</span><select   class="ems_btn"  id="subsystem" style="width:140px;margin-left: 4%;">
            <option  value="-1">--请选择--</option>
            <option  value="严重">严重</option>
            <option value="警告">警告</option>
            <option value="低等">低等</option>
             </select>
           
       
           
            </div> 
            <div class="ems_box">
           
        <!--  <input type="text"  id="operateType" class="ems_btn"/> -->
            <span>开始时间:</span><input id="startDateSearch" class="ems_btn" style="width:140px;margin-left: 6%" type="text" name="startDateSearch" onclick="WdatePicker({dateFmt:'yyyy-MM-dd HH:mm:ss'})"><span style="margin-left: 3.5%;">结束时间:</span>
            <input id="endDateSearch" class="ems_btn" type="text" style="width:140px;margin-left: 4%" name="endDateSearch" onclick="WdatePicker({dateFmt:'yyyy-MM-dd HH:mm:ss'})">
            <!-- <span>eventId</span><input id="eventId" style="width:160px;" type="text"  class="ems_btn"/> -->
            <span style="margin-left: 5%;">报警状态:</span><select   class="ems_btn"  id="subsystem" style="width:140px;margin-left: 2.9%;">
            <option  value="-1">--请选择--</option>
            <option  value="未处理">未处理</option>
            <option value="已确认">已确认</option>
            </select>
            <input type="button" style="cursor:pointer;margin-left: 2%" name="搜索" value="搜索" onclick="searchData()" class="ems_search"/><font></font>
            </div> 
            <div class="host_con">
            <table border="0" cellpadding="0" cellspacing="0"  class="tab_top">
            <thead  class="host_con_title">
            <tr>
            <td style="width:20px"><span class="field"></span></td>
            <td style="width:150px"><span id="eventIdSort" style="cursor:pointer" class="field">名称</span></td>
                    <td style="width:150px" ><span id="operateTypeSort"  style="cursor:pointer" class="field">ip</span></td>
                    <td><span class="field">cpu使用率</span></td>
                    <td><span class="field">内存使用率</span></td>
                    <td><span class="field">磁盘使用率</span></td>
                    <td><span class="field">报警状态</span></td>
                     <td><span class="field">级别</span></td>
                     <td><span id="timestampSort"  style="cursor:pointer" class="field">告警产生时间</span></td>
            </tr>
                </thead>
               
                <tbody id="listmac">
                       
                </tbody>
                </table>
            </div>
       <div id="new_page"></div>
        </div>
    </div>
   
   

</body>
</html>


0 0