Section 1: NetCharts Server Architecture

This section explains the physical layout and structure of NetCharts Server’s directories and files. This information provides a good background for other discussions in this guide.

Application Server Structure

NetCharts Server’s HTTP and servlet processing functions leverage the Apache-Tomcat application server architecture.

Basic File Structure

During installation, NetCharts Server creates and populates a number of directories on the file system. A brief description of the most developer-relevant directories is provided below. Each directory is relative to the installation directory (e.g. c:\Program Files\Visual Mining\NetCharts Server)

Path Function
jre/ Java Runtime Environment
Server/ Main work directory
Server/bin/ Operating system specific files
Server/conf/ Server configuration – do not edit manually!
Server/html/ Templates used when returning different files types.
Server/logs/ Access logs and error logs.
Server/temp Default location of NetCharts Server image cache directories
Server/root/ Base webserver access directory.
Server/root/classes/ NetCharts Server class file repository.
Server/root/projects/ Projects directory. See the Project Structure section below for an explanation of its contents.
Server/root/sampledata Data files that the example applications use.
Server/webapps Built-in NetCharts Server applications.

Project Structure – Overview

A Project is the main NetCharts Server file structure that developers will work with routinely. As NetCharts Server applications are developed, generated files are stored within the context of a Project. Each project may contain data files, data source files, chart definition files, table definition files, page files, and much more. The project structure makes it easy to identify, create, and manage these files.

Projects Directory / Development Console

Developers typically access the projects directory via the Development Console, at

http://yourserver:port/Developer/index.jsp

Each project is represented on disk as a directory. Developers may create directory hierarchies within the project in order to simplify the organization of files.

NOTE: Subdirectories can be created in a project via the “New” button in the project file list by selecting “Directory” from the type menu.

The project directories all reside under a parent directory called “projects”. This directory can be found in the installation at:

<install directory>/Server/root/projects

The contents of the projects directory can be manipulated manually through the operating system’s available file system tools, but this is not recommended for developers unfamiliar with the system.

Project and Project File URL Access

The projects directory is available by an HTTP URL in the form of:

http://yourserver:port/projects

Specific projects and project names are accessible in the form:

http://yourserver:port/projects/yourprojectname/yourprojectfile.jsp

Project Security

Access to each project’s files can be independently secured by the NetCharts Server Administrator. Project-level security controls which users, or groups of users, can access a given project.

Project Contents and Resource Files

Projects can contain any type of file, including images, HTML, data files, documents, spreadsheets, and more. In addition, projects usually contain one or more files that define a data request, a chart definition, a table definition, or a page definition. These files, known as resource files, have unique extensions that identify them to the NetCharts Server. These resource file extensions, and their meanings, are detailed in the table below:

Extension

Description
.ndx or .nds Data connection file, also known as a Named Data Set (NDS). This file contains name=value style information required by the NDS processor to make a unique data request from a data source. All NDS files will identify a Java class file that gets instantiated when the NDS is referenced. Other parameters in the file may include cache information, SQL statements, aggregate function directives, and more.The .ndx extension supersedes the .nds and provides features to more easily pass in variable values.
.ndxinclude Data connection template file. This file holds a set of ndx parameters that can be made common and shared across multiple ndx files.
.cdl or .cdx Chart definition file, in Chart Definition Language (CDL) format. This contains information on the chart’s aesthetic presentation, and may contain one or more references to, and runtime parameters for, data request files.The .cdx extension supersedes the .cdl and provides features to more easily pass in variable values.
.variables Contains default values for CDX variables in the associated CDX file.
.tbl Table definition file. This describes the formatting and style of a table. Typically, it will contain a reference to a data request file that it uses as its data source.
.jsp Java Server Page. This type of page contains JSP code used to perform data manipulation and/or page layout functions.
.pgl Page Definition file. This file type describes the presentation of a report. PGL files can be outputted as PDF files or exported to HTML file types.
.css Most projects will contain a projects.css cascading stylesheet. This file contains style “classes” that can be shared across all tables and charts.