📄 data.jsp
字号:
<% /** * $RCSfile: data.jsp,v $ * $Revision: 1.4 $ * $Date: 2002/11/21 23:46:53 $ */%><%@ page import="java.io.*, java.util.*, java.text.*, com.jivesoftware.util.*, com.jivesoftware.forum.*, com.jivesoftware.forum.database.*, com.jivesoftware.forum.util.*" errorPage="error.jsp"%><%@ include file="global.jsp" %><% // Permission check if (!isSystemAdmin) { throw new UnauthorizedException("You don't have admin privileges to perform this operation."); } // Get a handle on a DbForumFactory object (we can do that because we're // the system admin: DbForumFactory dbForumFactory = DbForumFactory.getInstance(); // Get a DbDataExport instance: DbDataExport exporter = DbDataExport.getInstance(dbForumFactory); // If an export is currently running, redirect to the status page: if (exporter.isRunning()) { response.sendRedirect("dataStatus.jsp?type=export"); return; } // Get parameters boolean cancel = request.getParameter("cancel") != null; boolean doExport = "export".equals(request.getParameter("mode")); boolean doImport = "import".equals(request.getParameter("mode")); boolean startExport = request.getParameter("startExport") != null; boolean startImport = request.getParameter("startImport") != null; String filename = request.getParameter("file"); boolean standard = "standard".equals(request.getParameter("type")); boolean custom = "custom".equals(request.getParameter("type")); boolean exportIDs = ParamUtils.getBooleanParameter(request,"exportIDs"); boolean exportUsers = ParamUtils.getBooleanParameter(request,"exportUsers"); boolean exportGroups = ParamUtils.getBooleanParameter(request,"exportGroups"); boolean exportPerms = ParamUtils.getBooleanParameter(request,"exportPerms"); boolean exportForums = ParamUtils.getBooleanParameter(request,"exportForums"); String customFilename = ParamUtils.getParameter(request,"customFilename"); // Set default values for the booleans if no parameter was passed in if (request.getParameter("exportIDs") == null) { exportIDs = false; } if (request.getParameter("exportUsers") == null) { if (custom) { exportUsers = false; } else { exportUsers = true; } } if (request.getParameter("exportGroups") == null) { if (custom) { exportGroups = false; } else { exportGroups = true; } } if (request.getParameter("exportPerms") == null) { if (custom) { exportPerms = false; } else { exportPerms = true; } } if (request.getParameter("exportForums") == null) { if (custom) { exportForums = false; } else { exportForums = true; } } // Cancel if requested if (cancel) { response.sendRedirect("data.jsp"); return; } // Setup the correct output filename: if (doExport) { if (customFilename == null) { customFilename = exporter.getFilename(); } } // Set properties on the exporter object, run an export if requested boolean exportFilenameError = false; boolean exportIOError = false; if (doExport) { exporter.setExportIDs(exportIDs); exporter.setExportUsers(exportUsers); exporter.setExportGroups(exportGroups); exporter.setExportPerms(exportPerms); exporter.setExportForums(exportForums); if (customFilename != null) { try { exporter.setFilename(customFilename); } catch (IllegalArgumentException iae) { // bad filename exportFilenameError = true; } } // Run the export if (startExport && !exportFilenameError) { try { exporter.export(); response.sendRedirect("data.jsp"); return; } catch (IOException ioe) { exportIOError = true; } } } // Do an import boolean genImportError = false; if (doImport && startImport) { // Convert the filename from hex: filename = new String(StringUtils.decodeHex(filename)); Reader in = new BufferedReader(new InputStreamReader(new FileInputStream( new File(JiveGlobals.getJiveHome() + System.getProperty("file.separator") + "data" + System.getProperty("file.separator") + filename)),"UTF-8")); DbDataImport importer = new DbDataImport(dbForumFactory); try { importer.doImport(in); } catch (Exception e) { genImportError = true; e.printStackTrace(); response.sendRedirect("data.jsp?mode=import&error=true"); return; } response.sendRedirect("data.jsp"); return; }%><%@ include file="header.jsp" %><p><% // Title of this page and breadcrumbs String title = "Data Import & Export"; String[][] breadcrumbs = { {"Main", "main.jsp"}, {title, "data.jsp"} };%><%@ include file="title.jsp" %><script language="JavaScript" type="text/javascript"><!--function disable(el, val) { el.exportIDs.disabled = val; el.exportUsers.disabled = val; el.exportGroups.disabled = val; el.exportPerms.disabled = val; el.exportForums.disabled = val; el.customFilename.disabled = val;}//--></script><font size="-1">The import and export functions allow you to read data into and writedata from your Jive Forums installation. All data uses the Jive Forums XML format.</font><p><% // Show the import/export choice if no choice has been selected yet: if (!doImport && !doExport) {%> <font size="-1"> <b>Please choose what you would like to do:</b> -- Note, you will be able to customize your import or export. </font> <p> <form action="data.jsp"> <table cellpadding="2" cellspacing="0" border="0"> <tr> <td rowspan="99" nowrap> </td> <td><input type="radio" name="mode" value="import" id="rb01"></td> <td> <font size="-1"> <label for="rb01"> Import data to this Jive Forums installation. </label> </font> </td> </tr> <tr> <td><input type="radio" name="mode" value="export" id="rb02"></td> <td> <font size="-1"> <label for="rb02"> Export data from this Jive Forums installation. </label> </font> </td> </tr> <tr> <td> </td> <td> <br> <input type="submit" value="Continue..."> <input type="submit" name="cancel" value="Cancel"> </td> </tr> </table> </form><% // Show options for doImport or doExport: } else {%> <% // Options for importing if (doImport) { %> <font size="-1"> <p> <b>Import Data</b> </p> </font> <font size="-1"> Choose a data file and proceed with an import. All files are imported from the directory <%= (JiveGlobals.getJiveHome() + File.separator + "data" + File.separator) %> </font><p> <% if ("true".equals(request.getParameter("error"))) { %> <font size="-1"> <i>An error occurred while importing your data. Please see your appserver's error logs for more information.</i> </font><p> <% } %> <form action="data.jsp"> <input type="hidden" name="mode" value="import"> <table bgcolor="<%= tblBorderColor %>" cellpadding="0" cellspacing="0" border="0"> <tr><td> <table bgcolor="<%= tblBorderColor %>" cellpadding="3" cellspacing="1" border="0">
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -