IBIS-Q System Documentation - Development Environment

This page provides notes on the development environment which includes tools to use, where to get the tools, installation notes, and source files etc. This page also provides information about how to create the Web Archive deployment package. In the future CVS notes will be added as well. The items discussed on this page assume that the developer is using an Intel based PC running some form of the MS-Windows operating system. However, development can be performed on many different platforms including Linux, Unix, Mac, IBM workstations etc. Listed below are the key items that are needed:
  • Java Runtime - needed for Java based tools and the Java Application Server
  • Java Development Kit - needed for Java source code compilation and for the Java Application Server. Note that this typically includes the Java Runtime mentioned above.
  • Java Web Application Server - Could be one of the free open source packages like Tomcat, Jonas, or JBoss, or any of the myriad commercial products from IBM, Sun, Bea, Allaire, Oracle etc.
  • XML Text Editor - Any text editor will do but most XML editors perform XML validation which is of great help to avoid malformed XML/XSLT files and they typically provide syntax highlighting, auto element closing tags etc.
  • Java IDE/Text Editor - This can be any text editor but a good IDE provides syntax highlighting, API docs, code completion, and hooks to run the complier etc.

    This is not needed for Query Module developers. It is only needed/recommended for Java developers.

  • IBIS-PH View System files - These include Java source files, XML data files, XSLT files, XML configuration files, GIF and JPEG images, Javascript files, JSPs, and 3rd party libraries/JARs.

The specific items listed below are specific to an Intel based PC running MS-Windows/XP with the Eclipse IDE, Tomcat, Sun Java JDK. This is not the only way to do this nor is it the best it is simply some general information on what is available and can be done. Also, specific versions and installation instructions are not given as versions change frequently and installation instructions are readily available and covered in much greater detail on the web. As of April, 2006, the IBIS-PH View System has been successfully deployed using Sun's JDK 5.x with Tomcat 5.x.

Java Development Kit with Runtime

Go to http://java.sun.com/ and download the latest JDK for your environment (http://java.sun.com/j2se/1.5.0/download.jsp and choose the latest Java 5.x follow screen as needed to accept choose Windows offline or online and proceed to install on PC). This will involve navigating through several web pages and selecting some sort of "Acceptance". As of April, 2006 this version was 1.5 Release 6. If the ".EXE" is downloaded (recommended), simply run this program and it will step through the installation of the JDK and JRE. If the ".ZIP" is downloaded then the instructions contained within the ZIP file will need to be followed. This may or may not require a reboot of the system. For the ".EXE", the files are typically installed to a directory like "C:\Program Files\Java\jre1.5.x".

Java Docs

Go to http://java.sun.com/ and download the latest J2SE and J2EE doc API ZIP files. Put these files in the root directory that the JDK was installed to.

Tomcat

Go to http://tomcat.apache.org/ and download the latest Tomcat for Windows (get the .EXE). Run the downloaded EXE which will install the files and optionally install Tomcat as a service (select this option if you want Tomcat to auto start when your computer is booted). The default directory that Tomcat will be installed under is the "C:\Program Files\...". It is suggested that the software be installed in a directory closer to the root, something like "C:\tomcat". The reason is that the level of directories becomes fairly deep and harder to navigate to. If Tomcat is not installed as a Windows Service, then create a shortcut to the "tomcat/bin/startup.bat" file so that it is easily launched. To test Tomcat, start Tomcat and try the default link of http://localhost:8080/. This should display the Tomcat welcome page. See the Tomcat Setup page for more information and options.

IBIS-PH View System Application

Go to http://ibis.health.utah.gov/ibisph-view.zip and download the latest ibisph-view.zip file (or if not available could be a ".war" file). If it is a ".zip" file, create a directory typically "ibisph-view" under the "tomcat/webapps" directory and extract to this tomcat/webapps/ibisph-view directory. If it is a ".war" file then simply copy this file to the "tomcat/webapps" directory and restart Tomcat (which if auto deploy is enabled will cause Tomcat to extract the contents and build a application content of "ibisph-view"). Again see the Tomcat Setup page/Deployment for more detailed information. If the system has been properly deployed then the http://localhost:8080/home/welcome.html link should display the IBIS-PH Welcome Page.

XML Editor

XML Editors are more than text editors. They all provide the ability to validate the XML file, tag highlighting and coloring, auto formatting, with most providing a tree or grid view/editor, auto tag generation and completion. Some have support for XSLT, SVG, XPath, XSD, DTD, and can even interface with databases or do convert to different XML structures. The three main IBIS-PH View System file types that are created and need to be maintained are the PAGE documents, the Query Module Selection documents, and the Query Module documents. The IBIS-PH View System also uses XSLT and SVG but these files do not need to be modified for the most page. Listed below are some of the many XML editor choices along with a brief overview of each. They are listed in order of perceived value with the bottom line being that there is NOT a perfect free XML editor that does it all (as of 4/2006) with the definition of "all" being real time validation with good meaningful messages, ability to jump to problem area, visual icon/clue for problems, DOM tree view, auto formatting, auto tag completion, support for XSD, DTD, SVG, XSLT, XPath evaluator, and last but not least a text edit view with line numbers, customizable fonts, and indenting control.
Name Cost Platform Features/Description
XMLSpy Free - $1,000 Win32 Leading XML package. Provides all the editing, validation, XSLT debugging, tree walking, XSD and DTD generation, XPath evaluation, and lot more. Startup time is not as fast as more lean and mean native Win32 applications but it is not bad.
Stylus Studio XML Editor $450-$800 Win32 XMLSpy and Stylus Studio are rivals and likewise both have very good products that are very similar feature wise. XML Editor is probably a little better suited to straight text editing than the XMLSpy offering.
The Exchanger XML Editor Free - lite home version, $130 commercial Java based Feature rich editor that has some of the same in depth features as XMLSpy/Stylus Studio but is much less polished and less comprehensive. Editor loads fast for a Java based application but the free version requires the pressing of an "OK" button on startup. Also, the free version is for non commercial use. This is a great editor for the IBIS-PH XML developer other than it is NOT free and does not have a spell checker - all other critical features are there in a nice fast cross platform tool.
XMLBuddy for Eclipse Free Java based One of the most widely used XML editors for the Eclipse IDE. If doing Java development then this plugin handles most everything that is needed. It does real time validation, complete control over formatting, auto indent, auto complete, if Eclipse spell checker plugin installed then has spell checking. The features that it does NOT have include a tree DOM view, XSD generation, XSLT support, XPath support, and one last niggle is that it is limited to the Eclipse IDE project environment (which means that this can not simply be used as an editor to open any XML file - it has to be part of the project).
Notepad++ Free Win32 Great editor that supports a wide variety of languages, and customization. Supports plugins and does a decent job with XML (other than validation), HTML, Java, and Javascript. Offers fast startup time and relatively small memory foot print. XML validation of available as a plugin but it is not very good as it only works when saving the XML file. Only the first error is shown when saving (and the file saves no matter what), multiple errors are not handled, error messages are terse, and there is no option to jump to the problem area. There is also not an option for a graphical tree DOM view either nor is there support for DTD, XSD, SVG, XSLT, or XPath. However, one of the free XML validation tools can be combined with this tool for the best of both worlds if seeking a free solution.
XML Pad Free Win32 An almost great XML editor which provides DOM tree view, text editing, and real time validation, backups, collapsing of code/outlines, line numbers. It also loads fast, offers good error messages, the ability to jump to problem areas, and offers some limited preference control. It does not handle SVG, XSLT, and some of the advanced features. The main two missing features/problems are tab indenturing control (none it uses spaces) and spell checking. If using this as the editor turn off "Auto Format" and turn on the show hidden characters "a.b" on the toolbar. Also this editor is limited to non Unicode character sets and file sizes must be less than 16k (which is not a problem for IBIS-PH XML files).
XML Edit Pro Free Win32 Provides validation (although not realtime), graphical DOM view, some options but does NOT provide text control, auto tag completion, color highlighting, support for editing, XSLT, SVG, DTD, XSD, or XPath. However, it does give decent validation messages as well as an indicator as to the problem area and it supports the tab character for indenturing.
Butterfly XML Free Java based A good open source XML editor which provides DOM tree view, text editing, and validation. It does not load as fast since it is Java based, and is not very customizable. The biggest feature is its real-time incremental XML validator. The main complaint about this version is that there is NOT ANY control over the text editor's formatting - indent size, font size (no user preferences), nor auto indent/format, or code element tag completion.
FirstObject XML Editor Free Win32 Fast small XML editor that provides a DOM tree view, has very limited customization options but does the job. Does not provide auto formatting/ indenting or tag completion. Validation errors are shown on the bottom in the status bar, are not clickable, and not very descriptive.
XML Objective Free Java based Provides decent validation and some basic options for editing. However, it does NOT provide many of the desired features including any text control etc.
XMLmind XML Editor Free Java based Provides validation, spell checker, graphical DOM view, lots of options but it does NOT provide direct text editing, XSLT, SVG, DTD, XSD, or XPath. This could be a decent option to use when combined with a good text editor like Notepad++.

Other XML editors include IBM's XEENA (poor), Oxygen (which has allot of features but costs $180), Open XML Editor (Win32, Only saves UTF-8 and provides basic validation not much else, plus it is slow for Win32), XML Fox (free for those who have .Net), Cooktop is no long being developed/supported and has some short comings, Peter's XML Editor is limited, JEdit has decent reviews with XML but the current XML validation plugins do not work. There are many others as well as offerings from Microsoft and Oracle. Bottom line is that if an all in one solution is desired then you get what you pay for. If free is desired then some combination of the free tools will have to be used (as of 4/2006).

HTML Editor

In addition to the XML editors listed above (of which some support HTML, JS, CSS etc.) there are lots of tools both free and commercial that offer code completion, drag and drop page design, CSS, Javascripting, coloring, project management etc. Two popular choices are Dreamweaver 8 from Adobe/Macromedia and HTML Kit. Dreamweaver is a high end commercial package that offers tons of features ($400). HTML Kit has some of the same features as Dreamweaver but is free for the semi stripped home version and only $35 for the full blown pro version (if using this tool the XML Plugin works quite well). These tools can be handy for to develop HTML pages but since most of the page layout and HTML definitions are already complete, there is not much justification to purchase and learn these tools solely for the IBIS-PH View System pages. However, if a person is comfortable with these tools or any other then they should stay with that tool. Example: Homesite is a tool that the STG developer used because he was familiar with it and liked the advanced file search and replace feature.

Java IDE (Eclipse)

Go to http://www.eclipse.org/downloads/ and download the latest version of Eclipse. Eclipse is a very nice, free environment but is project oriented. That is, it can not be used as an editor. A project with all the directories etc. have to be setup before it can be used. There are hundreds of Eclipse plugins that provide everything from spell checking to database modeling (see http://eclipse-plugins.2y.net/eclipse/plugins.jsp).

Eclipse XML Editor Plugin:
Go to http://xmlbuddy.com/ and download the latest free (or commercial if you want to pay) version of XMLBuddy. Follow the instructions on how to install. XMLBuddy is a nice basic XML editor/ validator. It provides all of the core needs - element highlighting and coloring, validation, auto formatting etc.

Java Class Modeler

ESS-MODEL is an open source project that creates and views class diagrams from Java code. This is not a mandatory tool but can be helpful for seeing relationships and documenting the Java code.

ANT

Another Neat Tool (ANT) is widely used for cross platform Java application development control. This includes compiling Java class files, copying files, building deployments, and a host of odd scripting tasks that are commonly needed.
IBIS-PH Community of Practice, Utah Department of Health, Salt Lake City, UT 84114-2101, Telephone: 801-538-9191, Fax: 801-538-9346
The information provided above is from the Utah Department of Health's Center for Health Data IBIS-PH web site (http://ibis.health.utah.gov). The information published on this website may be reproduced without permission. Please use the following citation: "Retrieved Mon, 24 November 2014 10:33:58 from Utah Department of Health, Center for Health Data, Indicator-Based Information System for Public Health Web site: http://ibis.health.utah.gov".

Content updated: Tue, 19 Nov 2013 23:08:58 MST