Nexacro-Xeni is a server module that provides necessary features for clients to process data in file forms. It is designed to transfer data from a file to a Grid or vice versa.
Nexacro-Xeni supports the following file formats and features.
File format | Extension | Features |
---|---|---|
Microsoft Excel 97-2003 | xls | export / import |
Microsoft Excel 2007/2010 | xlsx | export / import |
CSV format file | csv | import |
HancomOffice Hancell 2010 | cell | export |
HancomOffice Hancell 2014 | cell | export / import |
Installation
Nexacro-xeni is provided as a Java-based server module, and the supported environment and functions vary depending on the version as follows.
Nexacro-xeni | JDK version | POI Library Version | Maintenance |
---|---|---|---|
1.x.x | Version 1.8 or later | POI 4.1.2 | New versions and changes included |
Versions 1.4.1 and later provide an X-API that can be used in WAS implemented with the Jakarta EE specification.
Download and use the file with ""_jakarta_” in the file name.
https://jakarta.ee/compatibility/
You can deploy the provided Web application ARchive (WAR) file. Otherwise, you can unzip the WAR file in your PC and then copy necessary files to the /WEB-INF/lib directory or to the defined class path.
Copying the above files to a server rather than deploying the WAR file may cause problems due to the disparity in library versions.
Nexacro-Xeni utilizes the Apache POI library. Click the following link for the details on Apache POI.
To run Nexacro-Xeni, you must install X-APIs. To that end, please refer to Installing Nexacro Platform X-APIs.
If you copy JAR files to the existing context, you must add the below codes to the web.xml file.
<servlet> <servlet-name>XExportImport</servlet-name> <servlet-class>com.nexacro.java.xeni.services.GridExportImportServlet</servlet-class> </servlet> <servlet> <servlet-name>XImport</servlet-name> <servlet-class>com.nexacro.java.xeni.services.GridExportImportServlet</servlet-class>class> </servlet> <servlet-mapping> <servlet-name>XExportImport</servlet-name> <url-pattern>/XExportImport</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>XImport</servlet-name> <url-pattern>/XImport</url-pattern> </servlet-mapping> <context-param> <param-name>export-path</param-name> <param-value>/export</param-value> </context-param> <context-param> <param-name>import-path</param-name> <param-value>/import</param-value> </context-param> <context-param> <param-name>monitor-enabled</param-name> <param-value>true</param-value> </context-param> <context-param> <param-name>monitor-cycle-time</param-name> <param-value>30</param-value> </context-param> <context-param> <param-name>file-storage-time</param-name> <param-value>10</param-value> </context-param>
The JAR file list and codes of web.xml as described above represents the nexacro17-xeni_20180531_1 version of Nexacro-Xeni. Those contents may change later in accordance with future updates.
Confirming Installation
To confirm the successful installation, open the below URL through a web browser.
http://127.0.0.1:8080/XExportImport
Then, check that the below message is returned.
The URL differs according to installation paths. If you deploy the WAR file rather than copying the inside files, the below URL will be given to you.
http://127.0.0.1:8080/nexacro17-xeni/XExportImport
Settings
The below table presents the main parameters registered in the servlet context.
Name | Default value | Description |
---|---|---|
export-path | /export | Designates the path where downloaded files are temporarily saved. |
import-path | /import | Designates the path to hold temporary files whose data is processed into Grid components. If the value of the monitor-enabled parameter is set to "true," the temporary files will be deleted right after the data processing. |
monitor-enabled | true | Determines whether to run the file manager. If "false," the file manager will not operate while the temporary files will not be deleted. |
monitor-cycle-time | 30 | Sets the interval for deleting temporary downloaded files by minute. At determined intervals, the file manager will operate, check the files that are subject to deletion, and finally remove those files. |
file-stroage-time | 10 | Sets the period for storing temporary downloaded files by minute. When the file manager operates, it deletes the files that have been stored longer than a determined period. |
For further details, please refer to the readme.txt file included in the WAR file.
Example
This section explains simple examples of processing data using Nexacro-Xeni. Go to the below item in the help menu for the details on properties, methods and events
Objects > Misc. Objects > ExcelExportObject
Export
The process of exporting data begins with sending Grid-bound data to the server. Next, the server creates a file based on the data to allow users to download the file. In the below sample script, users will download the file derived from the data bound to the Grid00 component.
this.Button00_onclick = function(obj:Button, e:nexacro.ClickEventInfo) { this.exportObj = new ExcelExportObject(); var ret = this.exportObj.addExportItem(nexacro.ExportItemTypes.GRID, this.Grid00, "Sheet1!A1"); this.exportObj.set_exporturl("http://localhost:8080/XExportImport"); this.exportObj.exportData(); }
Import
At the beginning of the importing data process, users send their files to the server, which will convert those files into Datasets. Afterward, the users will perform their tasks by downloading those Datasets.
this.Button00_onclick = function(obj:Button, e:nexacro.ClickEventInfo) { this.importObj = new ExcelImportObject("Import00",this); this.importObj.addEventHandler("onsuccess", this.Import_onsuccess, this); this.importObj.set_importurl("http://localhost:8080/XExportImport"); this.importObj.importData("","output=ds","Dataset00=ds"); } this.Import_onsuccess = function(obj,e) { this.Grid00.createFormat(); }