The beta3 release contains new features, a number of changes including some that require metadata changes, software upgrades, and additional server configuration options. The following installation tasks are manadatory. Once you have read or completed these steps, follow the normal Tolven upgrade process.
At least JDK 1.6.0_04 is required and preferrably 1.6.0_10. This new version eliminates the need to have JARs added to Java's "endorsed" directory.
If using Eclipse, be sure to update ant to use this new compiler: In Eclipse: Window > Preferences > Ant > Runtime > Classpath > Global Entries > Add External Jar select the lib/tools.jar from the new JDK (and remove the previous tools.jar)
New predefined LDAP users must be added. See. Without adding these users, tolven will no longer work. For example, the tolvenGuest user is needed to identified non-logged in users and the roles that kind of user is granted. Likewise, the admin user must be defined and is now required for the various administrative applications such as application, trim, rule, and report loaders. The other users represent virtual users for each of the JMS queues defined by users. All queues are now protected by roles that control who can submit to the queue and who can read from the queue.
The tolven-config directory is designed to be stable across release of Tolven software. However, we have made some changes to the organization of this directory that suggest that it is easier to simply delete this directory (after saving a backup) and letting the installer create a new one. You may then copy any customizations back to the newly create tolven-config directory. We hope that this is the last change to the tolven-config structure.
If you are using Eclipse: Several changes are made to the libraries and projects in Tolven projects.Also, at least one library (JAXB) must be removed.
Carefully review the Eclipse library setup and the Eclipse project setup. pages.
Uploading 30,000 diagnosis and medication trims is now dramatically faster if you add an index to the app.trim_header table.
For a PostgreSQL database: With the database started, use the configuration manager tool to generate the index. Go to the Database > Indexes tab. If you generate all, it will create all indexes if needed.
In Oracle, create the index using something like the following SQL:
CREATE INDEX th_index1 ON trimheader (name,status);
CREATE INDEX th_index2 ON trimheader (status, id);
As with the iniital installation process, you must copy the contents of <..install-dir>/examples to the c:/tolven-config.directory. The reports directory is new for beta3:
examples/applications to tolven-config/applications
examples/reports to tolven-config/reports
examples/trim to tolven-config/trim
examples/vocab to tolven-config/vocab
These examples have changed significantly since beta2 including support for sharing data between accounts, cancer treatment planning, more trims, reports, menu changes, etc.
With the application server running, you must upload this new metadata. On Windows, Start > Tolven > Upload Configuration
You should be aware that this process has changed in two ways:
delete from app.user_menu_structure where id in (
select ums.id
from app.user_menu_structure ums,app.menu_structure ams
where ams.id=ums.underlyingms_id and ams.node_visible='never');
A summary of noteworth changes to Tolven in this release follows.
PostgreSQL remains the default. Oracle can also be selected as the database platform.
AdminApp queue
This release contains significant changes in how trims are processed and certain changes to the format of a TRIM document.
A report capability has been added.to Tolven. Based on Jasper Reports, the mechanism is aware of tolven "menuData" and can follow parent-child relationships for complex report definitions. Two sample reports have been included in the configuration. One in the patient list (My Patients) and another in the Report menu for a patient.
This release sees changes to the way the running Tolven is configured. First, a new application editor avoids the need to update the xml file directory (although you may still do so). Second, the application upload process has now been broken down into smaller units of work. The application (menus, placeholders, etc), rules, trim, and various vocabulary components components are uploaded separately.
Overriding web resources (images, xhtml pages, etc) is also now possible without changing the running system and/or ear file. Further, these changes can reside in the tolven-config directory which remains stable when a new tolven kit or ear file is installed.
Additional files have been added to the /examples directory that should be copied to tolven-config. Copy /trim and /vocab directories from install_dir/examples to tolven-config.
You can delete the /trim directory from underneath /applications these trims, which have been modified, are now in a separate peer directory.
By default, individual accounts will now automatically be updated to the latest metadata (if it has changed). This can be overridden with the new Manual Metadata Update Account setting. The automatic update to individual accounts is not applied immediately but rather when the first user to login to an account after the account type has been updated. Thus, it is possible that two or more successive AccountType updates from the system administrator would show up in the account as a single net change.
Previously, ant properties were overridden from a downloaded template. This is no longer needed. Instead, the ant-build.properties files is now only used to contain overrides of standard settings. The createPropertiesFile ant target now builds this much smaller file. As before, Tolven will not step on this file when downloading from CVS.
All jars for client applications are now in the <install_dir>/lib directory. The
The tolvenRemoteClient jar now includes tolvenCCR and tolvenTRIM, no separate jars are built. tolven-security-ui.jar is also removed. A new jar called tolven-client.jar is added to the bin directory. This executable jar contains all of the client modules including a single new main that acts as a dispatcher for a number of command-line and Swing-GUI administrative functions.
The application and system configuration utilities can now be launched from Ant as well as from Windows shortcuts.
Swing-based Configuration Manager
Swing-based Application Editor (New)
Application Loader
Rules Loader
Trim Loader
Vocabulary Loaders
A fix was made to allow newly-uploaded rules to take effect without having to restart the application server.
The application configuration files have now moved to the tolven project under examples. (formerly in tolvenClient)
The /trim directory is now a peer of /applications rather than a child. The /vocab directory is new and contains files used by loaders.
Tabs are now left justified and are added from left to right.
New wrap behavior in tabs and bars. A new item called more contains overflow.
BUG_1789498 - A new, non-java project has been added to CVS to hold documentation. This project will be tagged along with the other projects for releases and branches.
A new sub-directory is added to the installed directory location
/doc
A new menu item has been added to the Tolven shortcut list in the Windows Start menu.
The tolvenClient project now needs some features in Apache commons-io. Add this user library to the tolvenClient project.See
Documentation
A Tolven Configuration directory is created during installation if it doesn't already exist. If the configuration directory does exists, the installation does not touch it. The configuration directory is not "under" the installation directory. This allows you to install new versions of Tolven without having to recreate the configuration information.
Installing a new release of Tolven should not require any change to the Database server or the LDAP server configurations. In fact, you should be able to leave these servers running during a Tolven upgrade installation.
The tolven.properties file contains settings used by Tolven at runtime.
The edited properties are then immediately available to the application.
*Warning: Changing the tolven.properties files in the jboss directory does not change the tolven.properties file in the top-level tolven/resources directory. Ideally, you should maintain the top-level tolven.properties and then copy it to the jboss deployment directory using deploy-from-stage..
Security and privacy have been designed in "from day one" and we continue to evaluate and improve Tolven security features.
We want to reimind the reader that Tolven and Tolven installations use many layers of protection. One particular security issue is usually not a direct route into the system but rather a vulnerability at "some level." We usually try to make this clear by using terms like "If an attacker were able to get to X point, then...."
We also ask you to understand if we briefly delay release of certain security issues to public forums until a fix is available and trusted sites have had a chance to install them.
The following is in reverse chronological order, the most recent first. These are high-level notes here. For (a lot) more detail, consider adding yourself to the Tolven CVS mailing list. Being on this particular list will cause you to get an email for each checkin (I recommend setting up your mail client to move these to a separate folder upon arrival. Then you can puruse them at your leisure). You can of course unsubscribe if it turns out not to be for you. Also consider adding yourself to the list for email notification when the Tolven forums and trackers are updated.
The diagnosis TRIM represents a
When the Tolven application server runs, it will prompt for the password used to protect the keystore used by application server components. This new feature means that un-encrypted passwords are no longer stored in files.
Configuration is now separate from installation.
If you get the following error after an upgrade,
javax.ejb.EJBException: javax.persistence.PersistenceException: org.hibernate.PropertyAccessException: could not set a field value by reflection setter of org.tolven.core.entity.AccountType.version
you will need to populate the new version number column in the database table:
core.account_type
This table should only have 2-3 rows in it. Using PgAdminIII, navigate to that table in the display, right mouse > View Data and then enter a 1 into the version column of each row.
If you prefer in SQL:
UPDATE core.account_type SET version=1;