📄 layout.jsp
字号:
<%@ page import="java.io.StringWriter" %>
<%@ page import="java.io.PrintWriter" %>
<%@ page import="com.sslexplorer.boot.Util" %>
<%@ page import="java.util.List" %>
<%@ page import="com.sslexplorer.core.CoreServlet" %>
<%@ page import="com.sslexplorer.plugin.PluginDefinition" %>
<%@ page import="com.sslexplorer.core.CoreScript" %>
<%@ page import="com.sslexplorer.core.PanelManager" %>
<%@ page import="com.sslexplorer.core.AvailableMenuItem" %>
<%@ page import="com.sslexplorer.wizard.AbstractWizardSequence" %>
<%@ page import="com.sslexplorer.security.Constants" %>
<%@ page import="java.util.Iterator" %>
<%@ page import="com.sslexplorer.core.Panel" %>
<%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean" %>
<%@ taglib uri="http://struts.apache.org/tags-tiles" prefix="tiles" %>
<%@ taglib uri="http://struts.apache.org/tags-logic" prefix="logic" %>
<%@ taglib uri="/sslexplorer/taglibs/explorer" prefix="explorer" %>
<%@ taglib uri="/sslexplorer/taglibs/navigation" prefix="navigation" %>
<%@ taglib uri="/sslexplorer/taglibs/security" prefix="security" %>
<%@ taglib uri="/sslexplorer/taglibs/input" prefix="input" %>
<bean:page id="sessionObj" property="session"/>
<bean:page id="requestObj" property="request"/>
<% try {
%>
<html>
<bean:page id="sessionObj" property="session"/>
<bean:page id="requestObj" property="request"/>
<tiles:useAttribute name="resourcePrefix" scope="request" classname="java.lang.String"/>
<tiles:useAttribute name="resourceBundle" scope="request" classname="java.lang.String"/>
<tiles:useAttribute name="infoImage" scope="request" classname="java.lang.String"/>
<tiles:useAttribute name="info" scope="request" classname="java.lang.String"/>
<tiles:useAttribute name="messageArea" scope="request" classname="java.lang.String"/>
<tiles:useAttribute name="header" scope="request" classname="java.lang.String"/>
<tiles:useAttribute name="footer" scope="request" classname="java.lang.String"/>
<tiles:useAttribute name="content" scope="request" classname="java.lang.String"/>
<tiles:useAttribute name="actionLink" scope="request" classname="java.lang.String"/>
<tiles:useAttribute name="noBodyStyle" scope="request" classname="java.lang.String"/>
<tiles:useAttribute name="displayGlobalWarnings" scope="request" classname="java.lang.String"/>
<tiles:useAttribute name="updateAction" scope="request" classname="java.lang.String"/>
<tiles:useAttribute name="menuItem" scope="request" classname="java.lang.String" ignore="true"/>
<tiles:useAttribute name="rssFeed" scope="request" classname="java.lang.String"/>
<tiles:insert flush="false" attribute="pageHeader">
<tiles:put name="resourcePrefix" beanName="resourcePrefix"/>
<tiles:put name="resourceBundle" beanName="resourceBundle"/>
</tiles:insert>
<body>
<explorer:pageScripts/>
<%
for(int i = 0 ; i < CoreServlet.getServlet().getPluginManager().getPluginCount(); i++) {
PluginDefinition def =
CoreServlet.getServlet().getPluginManager().getPluginDefinition(
CoreServlet.getServlet().getPluginManager().getPluginAt(i));
%>
<tiles:insert flush="false" page="<%= "/WEB-INF/jsp/tiles/bodystart-" + def.getDescriptor().getId() + ".jspf" %>"/>
<%
}
%>
<div id="layout_page">
<% if(!Boolean.TRUE.equals(request.getAttribute(Constants.REQ_ATTR_HIDE_HEADER))) { %>
<div id="layout_topbar">
<div id="component_pageHeader">
<div id="component_navigationBar">
<ul>
<logic:iterate id="rootMenuItem" name="navBar" type="com.sslexplorer.core.AvailableMenuItem">
<li>
<input:toolTip textAlign="center" width="120" styleId="<%= rootMenuItem.getMenuItem().getId() + "Link" %>" href="<%= rootMenuItem.getPath() %>" key="<%= "navBar." + rootMenuItem.getMenuItem().getId() %>" bundle="<%= rootMenuItem.getMenuItem().getMessageResourcesKey() %>">
<div class="<%= rootMenuItem.getMenuItem().getId() + "Image" %>">
</div>
</input:toolTip>
</li>
</logic:iterate>
</ul>
</div>
</div>
</div>
<% } %>
<div id="layout_center">
<!-- can't do in CSS, anyone any ideas?!? -->
<table cellpadding="0" border="0" cellspacing="0" id="layout_inner">
<tr class="layout_row">
<% if(!Boolean.TRUE.equals(request.getAttribute(Constants.REQ_ATTR_HIDE_SIDE_BAR))) { %>
<td id="layout_leftbar">
<% AvailableMenuItem selectedMenuItem = (AvailableMenuItem)request.getAttribute(Constants.SELECTED_MENU);
AbstractWizardSequence seq = (AbstractWizardSequence)session.getAttribute(Constants.WIZARD_SEQUENCE); %>
<div id="component_navmode">
<navigation:inWizard>
<navigation:inWizard finish="false">
<bean:message key="<%= seq.getResourcePrefix() + ".heading" %>" bundle="<%= seq.getResourceBundle() %>"/>
</navigation:inWizard>
</navigation:inWizard>
<navigation:inWizard value="false">
<navigation:menuAvailable>
<explorer:setupMode requiresSetupMode="true">
<bean:message key="navigation.setup" bundle="navigation"/>
</explorer:setupMode>
<navigation:inManagementConsole>
<bean:message key="navigation.managementConsole" bundle="navigation"/>
</navigation:inManagementConsole>
<navigation:inUserConsole>
<bean:message key="navigation.userConsole" bundle="navigation"/>
</navigation:inUserConsole>
</navigation:menuAvailable>
</navigation:inWizard>
</div>
<div id="layout_menus">
<%
for(Iterator i = PanelManager.getInstance().getPanels(Panel.SIDEBAR, request, response).iterator(); i.hasNext(); ) {
Panel p = (Panel)i.next();
try { %>
<tiles:insert flush="false" page="<%= p.getTileIncludePath(pageContext) %>"/>
<%
} catch(Throwable headerException) {
System.err.println("----> Error occured processing JSP header");
headerException.printStackTrace();
System.err.println("<---- End of JSP header error");
StringWriter sw = new StringWriter();
headerException.printStackTrace(new PrintWriter(sw));
%> <pre> <%= sw.toString() %> </pre> <%
}
}
%>
</div>
<div id="layout_footer">
<tiles:insert flush="false" attribute="footer">
<tiles:put name="vpnClientStatus" beanName="vpnClientStatus"/>
</tiles:insert>
</div>
</td>
<% } %>
<td id="layout_main">
<logic:notEqual name="info" value="">
<% try { %>
<tiles:insert flush="false" attribute="info">
<tiles:put name="resourcePrefix" beanName="resourcePrefix"/>
<tiles:put name="resourceBundle" beanName="resourceBundle"/>
<tiles:put name="messageArea" beanName="messageArea"/>
<tiles:put name="infoImage" beanName="infoImage"/>
<tiles:put name="displayGlobalWarnings" beanName="displayGlobalWarnings"/>
</tiles:insert>
<% } catch(Throwable infoException) {
System.err.println("----> Error occured processing JSP info");
infoException.printStackTrace();
// May contain sensitive information
// Util.dumpSessionAttributes(session);
// Util.dumpRequestAttributes(request);
// Util.dumpRequestParameters(request);
System.err.println("<---- End of JSP info error");
StringWriter sw = new StringWriter();
infoException.printStackTrace(new PrintWriter(sw));
%> <pre> <%= sw.toString() %> </pre> <%
} %>
</logic:notEqual>
<logic:notEqual name="content" value="">
<div id="layout_content">
<%
for(Iterator i = PanelManager.getInstance().getPanels(Panel.CONTENT, request, response).iterator(); i.hasNext(); ) {
Panel p = (Panel)i.next();
try { %>
<tiles:insert flush="false" page="<%= p.getTileIncludePath(pageContext) %>">
<tiles:put name="actionLink" beanName="actionLink"/>
<tiles:put name="updateAction" beanName="updateAction"/>
</tiles:insert>
<% } catch(Throwable headerException) {
System.err.println("----> Error occured processing JSP header");
headerException.printStackTrace();
System.err.println("<---- End of JSP header error");
StringWriter sw = new StringWriter();
headerException.printStackTrace(new PrintWriter(sw));
%> <pre> <%= sw.toString() %> </pre> <%
}
}
%>
</div>
</logic:notEqual>
</td>
<logic:notEqual name="messageArea" value="">
<td id="layout_rightbar">
<logic:notEqual name="messageArea" value="">
<% try { %>
<tiles:insert flush="false" attribute="messageArea">
<tiles:put name="resourcePrefix" beanName="resourcePrefix"/>
<tiles:put name="resourceBundle" beanName="resourceBundle"/>
<tiles:put name="displayGlobalWarnings" beanName="displayGlobalWarnings"/>
<tiles:put name="rssFeed" beanName="rssFeed"/>
</tiles:insert>
<% } catch(Throwable infoException) {
System.err.println("----> Error occured processing JSP info");
infoException.printStackTrace();
// May contain sensitive information
// Util.dumpSessionAttributes(session);
// Util.dumpRequestAttributes(request);
// Util.dumpRequestParameters(request);
System.err.println("<---- End of JSP info error");
StringWriter sw = new StringWriter();
infoException.printStackTrace(new PrintWriter(sw));
%> <pre> <%= sw.toString() %> </pre> <%
} %>
</logic:notEqual>
</td>
</logic:notEqual>
</tr>
</table>
</div>
</div>
<%
for(int i = 0 ; i < CoreServlet.getServlet().getPluginManager().getPluginCount(); i++) {
PluginDefinition def =
CoreServlet.getServlet().getPluginManager().getPluginDefinition(
CoreServlet.getServlet().getPluginManager().getPluginAt(i));
%>
<tiles:insert page="<%= "/WEB-INF/jsp/tiles/bodyend-" + def.getDescriptor().getId() + ".jspf" %>"/>
<%
}
%>
<explorer:pageScripts position="<%= String.valueOf(CoreScript.BEFORE_BODY_END) %>"/>
</body>
</html>
<% } catch(Throwable t) {
System.err.println("----> Error occured processing JSP");
t.printStackTrace();
System.err.println("<---- End of JSP error");
StringWriter sw = new StringWriter();
t.printStackTrace(new PrintWriter(sw));
%> <pre> <%= sw.toString() %> </pre> <%
} %>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -