Edit D:\app\Administrator\product\11.2.0\dbhome_1\j2ee\OC4J_EM\applications\em\em\health\healthOMSDetail.jsp
<%@ include file="/sdk/oemTop.jspf" %> <%@ include file="/oemNoscript.jspf" %> <%@ taglib uri="http://xmlns.oracle.com/uix/ui" prefix="uix" %> <%@ taglib uri="http://xmlns.oracle.com/oem/jsp/tag" prefix="oem"%> <%@ page import="oracle.sysman.eml.mntr.Constants"%> <%@ page import="java.util.ResourceBundle"%> <%@ page import="java.util.Vector"%> <%@ page import="oracle.sysman.emSDK.util.jdk.NLSUtil"%> <%@ page import="oracle.sysman.resources.health.HealthResourceBundle"%> <%@ page import="oracle.sysman.emSDK.chart.SimpleChartDataSource"%> <jsp:useBean id="defaultBean" scope="request" type="oracle.sysman.eml.health.data.HealthOMSDetailBeanInfo"/> <uix:renderingContext id="renderingContext"> <oem:setURLEncoder id="renderingContext"/> <uix:bundle name="HealthResourceBundle" class="oracle.sysman.resources.health.HealthResourceBundle"/> <uix:bundle name="sdkUIMsg" class="oracle.sysman.emSDK.eml.SDKUIMsg"/> <uix:bundle name="MntrResourceBundle" class="oracle.sysman.resources.MntrResourceBundle"/> <uix:document> <%@ include file="/oemTitle.jspf" %> <uix:body> <uix:pageLayout> <%@ include file="/oemGlobal.jspf" %> <%@ include file="header.jsp" %> <uix:header textBinding="header@defaultBean@servletRequest"> <%@ include file="healthTimestampandError.jsp" %> <% java.util.Map omsMap = defaultBean.getomsData(); ResourceBundle rb = NLSUtil.getBundle(HealthResourceBundle.class.getName(), request); %> <uix:rowLayout width="100%"> <uix:spacer width="3" /> <uix:tableLayout width="100%"> <uix:tableLayout width="100%"> <% if (omsMap != null) { String status = (String)omsMap.get("status"); String statusImage = defaultBean.getgotrafficImage(); String image = defaultBean.getupImage(); if((status == null) || (status.equals("down"))) { statusImage = defaultBean.getstoptrafficImage(); image = defaultBean.getdownImage(); } String since = (String)request.getAttribute("since"); %> <uix:rowLayout width="100%"> <uix:cellFormat hAlign="right" vAlign="top" width="10%"> <uix:image source="<%=statusImage%>" /> </uix:cellFormat> <uix:cellFormat hAlign="right" vAlign="top" width="49%"> <uix:rowLayout width="100%"> <uix:cellFormat hAlign="right" width="30%"> <uix:styledText textBinding="STATUS@HealthResourceBundle" styleClass="OraInstructionText"/> </uix:cellFormat> <uix:cellFormat width="1%" /> <uix:cellFormat width="2%" /> <uix:cellFormat width="1%" /> <uix:cellFormat hAlign="left" width="66%"> <uix:image source="<%=image%>" /> </uix:cellFormat> </uix:rowLayout> <uix:rowLayout width="100%"> <uix:cellFormat hAlign="right" width="30%"> <uix:styledText textBinding="START_TIME@HealthResourceBundle" styleClass="OraInstructionText"/> </uix:cellFormat> <uix:cellFormat width="1%" /> <uix:cellFormat width="2%" /> <uix:cellFormat width="1%" /> <uix:cellFormat hAlign="left" width="66%"> <uix:styledText text="<%=since%>" styleClass="OraInstructionTextStrong"/> </uix:cellFormat> </uix:rowLayout> <uix:rowLayout width="100%"> <uix:cellFormat hAlign="right" width="30%"> <uix:styledText textBinding="IAS@HealthResourceBundle" styleClass="OraInstructionText"/> </uix:cellFormat> <uix:cellFormat width="1%" /> <uix:cellFormat width="2%" /> <uix:cellFormat width="1%" /> <uix:cellFormat hAlign="left" width="66%"> <% String omsIAS = (String)request.getAttribute("omsIAS"); String omsIASdestination = (String)request.getAttribute("omsIASdestination"); if((omsIAS != null) && (omsIAS.length() > 0)) { if((omsIASdestination != null) && (omsIASdestination.length() > 0)) { %> <uix:styledText text="<%=omsIAS%>" styleClass="OraInstructionText" destination="<%=omsIASdestination%>"/> <% } else { %> <uix:styledText text="<%=omsIAS%>" styleClass="OraInstructionTextStrong"/> <% } } else { %> <uix:styledText textBinding="METRIC_NOT_AVAILABLE@HealthResourceBundle" styleClass="OraInstructionTextStrong"/> <% } %> </uix:cellFormat> </uix:rowLayout> <uix:rowLayout width="100%"> <uix:cellFormat hAlign="right" width="30%"> <uix:styledText textBinding="OC4J@HealthResourceBundle" styleClass="OraInstructionText"/> </uix:cellFormat> <uix:cellFormat width="1%" /> <uix:cellFormat width="2%" /> <uix:cellFormat width="1%" /> <uix:cellFormat hAlign="left" width="66%"> <% String omsOC4J = (String)request.getAttribute("omsOC4J"); String omsOC4Jdestination = (String)request.getAttribute("omsOC4Jdestination"); if((omsOC4J != null) && (omsOC4J.length() > 0)) { if((omsOC4Jdestination != null) && (omsOC4Jdestination.length() > 0)) { %> <uix:styledText text="<%=omsOC4J%>" styleClass="OraInstructionText" destination="<%=omsOC4Jdestination%>"/> <% } else { %> <uix:styledText text="<%=omsOC4J%>" styleClass="OraInstructionTextStrong"/> <% } } else { %> <uix:styledText textBinding="METRIC_NOT_AVAILABLE@HealthResourceBundle" styleClass="OraInstructionTextStrong"/> <% } %> </uix:cellFormat> </uix:rowLayout> <uix:rowLayout width="100%"> <uix:cellFormat hAlign="right" width="30%"> <uix:styledText textBinding="HOST@HealthResourceBundle" styleClass="OraInstructionText"/> </uix:cellFormat> <uix:cellFormat width="1%" /> <uix:cellFormat width="2%" /> <uix:cellFormat width="1%" /> <uix:cellFormat hAlign="left" width="66%"> <% String omsHost = (String)request.getAttribute("omsHost"); String omsHostdestination = (String)request.getAttribute("omsHostdestination"); if((omsHost != null) && (omsHost.length() > 0)) { if((omsHostdestination != null) && (omsHostdestination.length() > 0)) { %> <uix:styledText text="<%=omsHost%>" styleClass="OraInstructionText" destination="<%=omsHostdestination%>"/> <% } else { %> <uix:styledText text="<%=omsHost%>" styleClass="OraInstructionTextStrong"/> <% } } else { %> <uix:styledText textBinding="METRIC_NOT_AVAILABLE@HealthResourceBundle" styleClass="OraInstructionTextStrong"/> <% } %> </uix:cellFormat> </uix:rowLayout> <% String cpuUse = (String)request.getAttribute("omsCpu"); String cpuUseDest = (String)request.getAttribute("omsCpudestination"); String cpuUseImage = (String)request.getAttribute("omsCpuimage"); String mem = (String)request.getAttribute("omsMem"); String memDest = (String)request.getAttribute("omsMemdestination"); String memImage = (String)request.getAttribute("omsMemimage"); String jvmMem = (String)request.getAttribute("omsJvmMem"); String jvmMemDest = (String)request.getAttribute("omsJvmMemdestination"); String jvmMemImage = (String)request.getAttribute("omsJvmMemimage"); String uploadPort = (String)request.getAttribute("uploadPort"); String secureUploadPort = (String)request.getAttribute("secureUploadPort"); String sessionCount = null; String sessionCountDest = null; String sessionCountImage = null; java.util.Map sessionMap = defaultBean.getsessionData(); if (sessionMap != null) { sessionCount = (String)sessionMap.get("sessionCount"); sessionCountDest = (String)sessionMap.get("sessionCountdestination"); sessionCountImage = (String)sessionMap.get("sessionCountimage"); } String notificationCount = "0"; String notificationCountDest = ""; if (omsMap != null) { notificationCount = (String)omsMap.get("notification_count"); notificationCountDest = (String)omsMap.get("notification_countdestination"); } if((cpuUse != null) && (cpuUse.length() > 0)) { %> <uix:rowLayout width="100%"> <uix:cellFormat hAlign="right" width="30%"> <uix:styledText textBinding="CPU_USE@HealthResourceBundle" styleClass="OraInstructionText"/> </uix:cellFormat> <uix:cellFormat width="1%" /> <uix:cellFormat width="2%" > <uix:image source="<%=cpuUseImage%>" /> </uix:cellFormat> <uix:cellFormat width="1%" /> <uix:cellFormat hAlign="left" width="66%"> <uix:styledText text="<%=cpuUse%>" styleClass="OraInstructionText" destination="<%=cpuUseDest%>"/> </uix:cellFormat> </uix:rowLayout> <% } if((mem != null) && (mem.length() > 0)) { %> <uix:rowLayout width="100%"> <uix:cellFormat hAlign="right" width="30%"> <uix:styledText textBinding="MEMORY_USE@HealthResourceBundle" styleClass="OraInstructionText"/> </uix:cellFormat> <uix:cellFormat width="1%" /> <uix:cellFormat width="2%" > <uix:image source="<%=memImage%>" /> </uix:cellFormat> <uix:cellFormat width="1%" /> <uix:cellFormat hAlign="left" width="66%"> <uix:styledText text="<%=mem%>" styleClass="OraInstructionText" destination="<%=memDest%>"/> </uix:cellFormat> </uix:rowLayout> <% } if((jvmMem != null) && (jvmMem.length() > 0)) { %> <uix:rowLayout width="100%"> <uix:cellFormat hAlign="right" width="30%"> <uix:styledText textBinding="JAVA_MEM_USE@HealthResourceBundle" styleClass="OraInstructionText"/> </uix:cellFormat> <uix:cellFormat width="1%" /> <uix:cellFormat width="2%" > <uix:image source="<%=jvmMemImage%>" /> </uix:cellFormat> <uix:cellFormat width="1%" /> <uix:cellFormat hAlign="left" width="66%"> <uix:styledText text="<%=jvmMem%>" styleClass="OraInstructionText" destination="<%=jvmMemDest%>"/> </uix:cellFormat> </uix:rowLayout> <% } %> <uix:rowLayout width="100%"> <uix:cellFormat hAlign="right" width="30%"> <uix:styledText textBinding="SESSION_COUNT@HealthResourceBundle" styleClass="OraInstructionText"/> </uix:cellFormat> <uix:cellFormat width="1%" /> <uix:cellFormat width="2%" > <uix:image source="<%=sessionCountImage%>" /> </uix:cellFormat> <uix:cellFormat width="1%" /> <uix:cellFormat hAlign="left" width="66%"> <% if((sessionCount != null) && (sessionCount.length() > 0)) { %> <uix:styledText text="<%=sessionCount%>" styleClass="OraInstructionText" destination="<%=sessionCountDest%>"/> <% } else { %> <uix:styledText textBinding="METRIC_NOT_AVAILABLE@HealthResourceBundle" styleClass="OraInstructionTextStrong"/> <% } %> </uix:cellFormat> </uix:rowLayout> <uix:rowLayout width="100%"> <uix:cellFormat hAlign="right" width="30%"> <uix:styledText textBinding="NOTIFICATIONS_DELIVERED@HealthResourceBundle" styleClass="OraInstructionText"/> </uix:cellFormat> <uix:cellFormat width="1%" /> <uix:cellFormat width="2%" > </uix:cellFormat> <uix:cellFormat width="1%" /> <uix:cellFormat hAlign="left" width="66%"> <% if((notificationCount != null) && (notificationCount.length() > 0)) { %> <uix:styledText text="<%=notificationCount%>" styleClass="OraInstructionText" destination="<%=notificationCountDest%>"/> <% } else { %> <uix:styledText textBinding="METRIC_NOT_AVAILABLE@HealthResourceBundle" styleClass="OraInstructionTextStrong"/> <% } %> </uix:cellFormat> </uix:rowLayout> <uix:rowLayout width="100%"> <uix:cellFormat hAlign="right" width="30%"/> <uix:cellFormat width="1%" /> <uix:cellFormat width="2%" > </uix:cellFormat> <uix:cellFormat width="1%" /> <uix:cellFormat hAlign="left" width="66%"> <uix:styledText textBinding="NOTIFICATIONS_DELIVERED_TIP@HealthResourceBundle" styleClass="OraInlineInfoText"/> </uix:cellFormat> </uix:rowLayout> <uix:rowLayout width="100%"> <uix:cellFormat hAlign="right" width="30%"> <uix:styledText textBinding="UPLOAD_PORT@HealthResourceBundle" styleClass="OraInstructionText"/> </uix:cellFormat> <uix:cellFormat width="1%" /> <uix:cellFormat width="2%" /> <uix:cellFormat width="1%" /> <uix:cellFormat hAlign="left" width="66%"> <% if((uploadPort != null) && (uploadPort.length() > 0)) { %> <uix:styledText text="<%=uploadPort%>" styleClass="OraInstructionTextStrong"/> <% } else { %> <uix:styledText textBinding="UPLOAD_PORT_UNDEFINED@HealthResourceBundle" styleClass="OraInstructionTextStrong"/> <% } %> </uix:cellFormat> </uix:rowLayout> <uix:rowLayout width="100%"> <uix:cellFormat hAlign="right" width="30%"> <uix:styledText textBinding="SECURE_UPLOAD_PORT@HealthResourceBundle" styleClass="OraInstructionText"/> </uix:cellFormat> <uix:cellFormat width="1%" /> <uix:cellFormat width="2%" /> <uix:cellFormat width="1%" /> <uix:cellFormat hAlign="left" width="66%"> <% if((secureUploadPort != null) && (secureUploadPort.length() > 0) && (!secureUploadPort.equals("-1")) && (!secureUploadPort.equals("None"))) { %> <uix:styledText text="<%=secureUploadPort%>" styleClass="OraInstructionTextStrong"/> <% } else { %> <uix:styledText textBinding="SECURE_UPLOAD_PORT_UNDEFINED@HealthResourceBundle" styleClass="OraInstructionTextStrong"/> <% } %> </uix:cellFormat> </uix:rowLayout> </uix:cellFormat> <uix:cellFormat hAlign="right" width="1%"> </uix:cellFormat> <uix:cellFormat hAlign="right" vAlign="top" width="40%"> <uix:rowLayout width="100%"> <uix:cellFormat hAlign="left" width="49%"> <uix:header textBinding="UI_LOAD_GRAPH_LABEL@HealthResourceBundle" size="1"> <uix:tableLayout cellSpacing="2"> <uix:contents> <uix:rowLayout> <% SimpleChartDataSource chartData = (SimpleChartDataSource)request.getAttribute("UILoadChartData"); if(chartData == null) { %> <uix:styledText textBinding="METRIC_NOT_AVAILABLE@HealthResourceBundle" styleClass="OraInstructionTextStrong"/> <% } else { %> <uix:cellFormat hAlign="left" width="95%"> <oem:chart title="" shortDescBinding="UI_LOAD_GRAPH_LABEL@HealthResourceBundle" chartType="timeSeriesChart" orientation="vertical" width="350" height="150" yAxisLabelBinding="UI_LOAD_GRAPH_Y_AXIS_LABEL@HealthResourceBundle" timeGranularity="HOUR" xAxisMinBinding="UILoadXAxisMin@servletRequest" xAxisMaxBinding="UILoadXAxisMax@servletRequest" legendPosition="south"> <uix:contents> <oem:boundChartDataSource chartDataSourceBinding = "UILoadChartData@servletRequest"/> <oem:chartColumn sourceIndex="0" displayLabelBinding="UI_LOAD_GRAPH_LABEL@HealthResourceBundle"/> <oem:chartColumn sourceIndex="1" displayLabel="Time" isTimeColumn="true"/> </uix:contents> </oem:chart> </uix:cellFormat> <% } %> </uix:rowLayout> </uix:contents> </uix:tableLayout> </uix:header> </uix:cellFormat> </uix:rowLayout> <uix:rowLayout width="100%"> <uix:cellFormat hAlign="left" width="49%"> <uix:header textBinding="SESSIONS_GRAPH_LABEL@HealthResourceBundle" size="1"> <uix:tableLayout cellSpacing="2"> <uix:contents> <uix:rowLayout> <% SimpleChartDataSource chartData = (SimpleChartDataSource)request.getAttribute("sessionsChartData"); if(chartData == null) { %> <uix:styledText textBinding="METRIC_NOT_AVAILABLE@HealthResourceBundle" styleClass="OraInstructionTextStrong"/> <% } else { %> <uix:cellFormat hAlign="left" width="95%"> <oem:chart title="" shortDescBinding="SESSIONS_GRAPH_LABEL@HealthResourceBundle" chartType="timeSeriesChart" orientation="vertical" width="350" height="150" yAxisLabelBinding="SESSIONS_GRAPH_Y_AXIS_LABEL@HealthResourceBundle" timeGranularity="HOUR" xAxisMinBinding="sessionsXAxisMin@servletRequest" xAxisMaxBinding="sessionsXAxisMax@servletRequest" destinationBinding="sessionsChartDatadestination@servletRequest" legendPosition="south"> <uix:contents> <oem:boundChartDataSource chartDataSourceBinding = "sessionsChartData@servletRequest"/> <oem:chartColumn sourceIndex="0" displayLabelBinding="SESSIONS_GRAPH_LABEL@HealthResourceBundle"/> <oem:chartColumn sourceIndex="1" displayLabel="Time" isTimeColumn="true"/> </uix:contents> </oem:chart> </uix:cellFormat> <% } %> </uix:rowLayout> </uix:contents> </uix:tableLayout> </uix:header> </uix:cellFormat> </uix:rowLayout> </uix:cellFormat> </uix:rowLayout> </uix:tableLayout> <% } %> <uix:header textBinding="LOADER@HealthResourceBundle" size="1"> <uix:tableLayout width="100%"> <uix:rowLayout width="100%"> <uix:styledText textBinding="LOADER_DESCRIPTION@HealthResourceBundle" styleClass="OraInstructionText"/> </uix:rowLayout> </uix:tableLayout> <uix:spacer width="3"/> <uix:tableLayout width="100%"> <% String filesysspace = (String)request.getAttribute("fileSysSpace"); String filesysspaceDest = (String)request.getAttribute("fileSysSpacedestination"); String filesysspaceImage = (String)request.getAttribute("fileSysSpaceimage"); if (omsMap != null) { String directory = (String)omsMap.get("load_directory"); String throughput = (String)omsMap.get("load_processing"); String throughputdestination = (String)omsMap.get("load_processingdestination"); String throughputImage = (String)omsMap.get("load_processingimage"); String oldest = (String)omsMap.get("load_oldestfile"); String oldestImage = (String)omsMap.get("load_oldestfileimage"); String pending = (String)omsMap.get("load_backlog"); String pendingdestination = (String)omsMap.get("load_backlogdestination"); String pendingImage = (String)omsMap.get("load_backlogimage"); String processing = (String)omsMap.get("load_run_string"); String processingdestination = (String)omsMap.get("load_rundestination"); String processingImage = (String)omsMap.get("load_runimage"); %> <uix:rowLayout width="100%"> <uix:cellFormat hAlign="right" width="35%"> <uix:styledText textBinding="LOADER_DIRECTORY@HealthResourceBundle" styleClass="OraInstructionText"/> </uix:cellFormat> <uix:cellFormat width="1%" /> <uix:cellFormat width="2%" /> <uix:cellFormat width="1%" /> <uix:cellFormat hAlign="left" width="61%"> <uix:styledText text="<%=directory%>" styleClass="OraInstructionTextStrong"/> </uix:cellFormat> </uix:rowLayout> <uix:rowLayout width="100%"> <uix:cellFormat hAlign="right" width="35%" /> <uix:cellFormat width="1%" /> <uix:cellFormat width="2%" /> <uix:cellFormat width="1%" /> <uix:cellFormat hAlign="left" width="61%"> <uix:styledText textBinding="LOAD_DIR_TIP@HealthResourceBundle" styleClass="OraInlineInfoText"/> </uix:cellFormat> </uix:rowLayout> <% if((filesysspaceDest != null) && (filesysspaceDest.length() > 0)) { %> <uix:rowLayout width="100%"> <uix:cellFormat hAlign="right" width="35%"> <uix:styledText textBinding="LOADER_DIR_SPACE@HealthResourceBundle" styleClass="OraInstructionText"/> </uix:cellFormat> <uix:cellFormat width="1%" /> <uix:cellFormat width="2%" > <uix:image source="<%=filesysspaceImage%>" /> </uix:cellFormat> <uix:cellFormat width="1%" /> <uix:cellFormat hAlign="left" width="61%"> <uix:styledText text="<%=filesysspace%>" styleClass="OraInstructionText" destination="<%=filesysspaceDest%>"/> </uix:cellFormat> </uix:rowLayout> <% } %> <uix:rowLayout width="100%"> <uix:cellFormat hAlign="right" width="35%"> <uix:styledText textBinding="DATA_PENDING_LOAD@HealthResourceBundle" styleClass="OraInstructionText"/> </uix:cellFormat> <uix:cellFormat width="1%" /> <uix:cellFormat width="2%" > <uix:image source="<%=pendingImage%>" /> </uix:cellFormat> <uix:cellFormat width="1%" /> <% if((pendingdestination != null) && (pendingdestination.length() > 0)) { %> <uix:cellFormat hAlign="left" width="61%"> <uix:styledText text="<%=pending%>" styleClass="OraInstructionText" destination="<%=pendingdestination%>"/> </uix:cellFormat> <% } else { %> <uix:cellFormat hAlign="left" width="61%"> <uix:styledText text="<%=pending%>" styleClass="OraInstructionTextStrong"/> </uix:cellFormat> <% } %> </uix:rowLayout> <% } %> </uix:tableLayout> </uix:header> <uix:header textBinding="JOB_DISPATCHER@HealthResourceBundle" size="1"> <uix:styledText textBinding="DISPATCHER_DESCRIPTION@HealthResourceBundle" styleClass="OraInstructionText"/> <uix:tableLayout width="100%"> <uix:spacer width="3"/> <% java.util.Map jobMap = defaultBean.getjobDispatcherData(); if (jobMap != null) { String processing = (String)jobMap.get("processing"); String processingDestination = (String)jobMap.get("processingdestination"); String processingImage = (String)jobMap.get("processingimage"); String throughput = (String)jobMap.get("throughput"); String throughputDestination = (String)jobMap.get("throughputdestination"); String throughputImage = (String)jobMap.get("throughputimage"); %> <uix:rowLayout width="100%"> <uix:cellFormat hAlign="right" width="35%"> <uix:styledText textBinding="PROCESSING@HealthResourceBundle" styleClass="OraInstructionText"/> </uix:cellFormat> <uix:spacer width="1"/> <uix:cellFormat width="2%" > <uix:image source="<%=processingImage%>" /> </uix:cellFormat> <uix:cellFormat width="1%" /> <% if((processingDestination != null) && (processingDestination.length() > 0)) { %> <uix:cellFormat hAlign="left" width="61%"> <uix:styledText text="<%=processing%>" styleClass="OraInstructionText" destination="<%=processingDestination%>"/> </uix:cellFormat> <% } else { %> <uix:cellFormat hAlign="left" width="61%"> <uix:styledText text="<%=processing%>" styleClass="OraInstructionTextStrong"/> </uix:cellFormat> <% } %> </uix:rowLayout> <uix:rowLayout width="100%"> <uix:cellFormat hAlign="right" width="35%"> <uix:styledText textBinding="JOB_THROUGHPUT@HealthResourceBundle" styleClass="OraInstructionText"/> </uix:cellFormat> <uix:spacer width="1"/> <uix:cellFormat width="2%" > <uix:image source="<%=throughputImage%>" /> </uix:cellFormat> <uix:cellFormat width="1%" /> <% if((throughputDestination != null) && (throughputDestination.length() > 0)) { %> <uix:cellFormat hAlign="left" width="61%"> <uix:styledText text="<%=throughput%>" styleClass="OraInstructionText" destination="<%=throughputDestination%>"/> </uix:cellFormat> <% } else { %> <uix:cellFormat hAlign="left" width="61%"> <uix:styledText text="<%=throughput%>" styleClass="OraInstructionText" destinationBinding="refreshDestination@servletRequest"/> </uix:cellFormat> <% } %> </uix:rowLayout> <% } %> </uix:tableLayout> </uix:header> </uix:tableLayout > </uix:rowLayout > <uix:spacer width="2"/> <%@ include file="healthRelatedLinks.jsp" %> </uix:header> </uix:pageLayout> </uix:body> </uix:document> </uix:renderingContext>
Ms-Dos/Windows
Unix
Write backup
jsp File Browser version 1.2 by
www.vonloesch.de