Latest Version: Service Release 2, Build 1389
Release Date: January 25th, 2007
Applies To: Existing installations of AbleCommerce 5.5 CFMX (build 1357 - 1379)
Downloads:
AbleCommerce 5.5 CFMX Windows (build 1389)
AbleCommerce 5.5 CFMX Linux (build 1389)
IMPORTANT: If you have previously upgraded to SR1 (build 1382), you should follow the SR2 upgrade instructions instead.
UPGRADE INFORMATION:
The SR1 release corrects a number of issues between builds 1357 and 1382. It is highly recommended that you upgrade if you are still running a build earlier than 1382. The SR2 release corrects a few issues between builds 1382 and 1389. If you are experiencing any of the issues listed, you should upgrade to SR2. Before upgrading, make sure you review the upgrade options below.
If you are running a version earlier than AbleCommerce 5.5 CFMX (build 1357), then you should download AbleCommerce 5.5 CFMX and complete all steps of the upgrade instructions below. Then, continue with the final upgrade to Service Release 1 or 2.
If you are running AbleCommerce 5.5 CFMX (build 1357 through build 1379), you should acquire the latest release, using the download links above, and choose the best upgrade path for your installation -
To upgrade a customized installation or live store: review and complete the alternate upgrade instructions instead.
To upgrade a development store, or live store with minimal traffic: review and complete the upgrade instructions on the page below.
If you are running AbleCommerce 5.5 CFMX SR1, (builds 1380 - 1385), you may upgrade to AbleCommerce 5.5 CFMX SR2 using the instructions here.
If you do not know which version or build you are running, then please see this FAQ on our website.
(Use the alternate Simplified Instructions for a development store upgrade)
Before beginning, let us have a brief look at what has changed since build 1357, so the upgrade process will be better understood.
Password Management
User passwords are stored using 128 bit AES encryption. This change has affected various sections of AbleCommerce.
Database changes; addition of new table
Session Management has changed significantly
Login process is affected in master, admin and store
User management sections in master and admin
Checkout and Order processing
Corresponding Import/Export changes
Account, Password and Audit Log Policies
These new features allow you to enforce User Account policies, Password Policies and Audit Log policies. These are installation wide policies which will be effective for all stores in the installation. This change has affected some sections of AbleCommerce.
Database changes; addition of new table
Session Management and Login process
Updates to Product Batching
Product batching has been significantly updated. The changes are mostly in the merchant admin side .cfm scripts.
Significant Backend Changes
AcbToken class has changed. The changes are related to the updated session handling and password management
Session Management classes significantly changed.
Implementation of CyberSource payment gateway has radically changed
Credit Card validation classes have been modified. Some new validators added.
User, group, rights and related classes changed to handle new password mechanism.
Cryptography implementation updated
Exception Handling significantly improved. Independent backward compatible change. Nothing should be affected.
AcbDatabase has been updated to support PreparedStatement. Independent backward compatible change. Nothing should be affected.
Potential Upgrade Issues:
As we can see from the summary of changes above, the session
management has significantly changed. This change alone has a potential
to significantly complicate the upgrade process. The good news is that
the changes have been made in a way such that AbleCommerce falls back
to legacy password/session mechanism in case of an error due to a missing
database table or missing functionality. Moreover, the old methods and
code still remain intact so that the old templates are mostly operational
with new jar files. There may, however, be some issues that we will try
to document as much as possible.
In defining the upgrade process, the main goal is to achieve it in a step-by-step
manner, while keeping the existing functionality intact at each step and
minimizing the down time. Please
read through the entire upgrade process before beginning.
DEFINITIONS
[INSTALL_DIR] - This is where you installed AbleCommerce. This directory contains the AbleCommerce program files. The default location is C:\Program Files\Able Solutions\acb\...
[CFMX_DIR] - This is the webroot (wwwroot folder) where your ColdFusion program is installed. The default location may be similar to C:\CFusionMX7\wwwroot\
[ACTEMP] - This is a temporary
location of your choosing, where the new AbleCommerce program has been
extracted to for the purpose of the upgrade.
Step 1) - Backup the Existing Installation
Before upgrading, the following items must be backed up:
Important: A complete backup is critical in case anything goes wrong during the upgrade, you can always return to the original state.
Step 2) - Download latest build
Download the applicable file to the server. (see top of page)
Extract the
contents of the archive into a temporary
folder which will be used to copy new files from. For
the purpose of this document, these files are referred to as the Service
Release 1 files in the [ACTEMP] location.
Step 3) - Simple Non-Intrusive Steps
The first thing in the upgrade process is to complete any steps that have no, or minimal, effect on your existing installation. These steps are listed below:
(OPTIONAL) Copy all new files that are added in Service Release 1 which were not present in build 1357. The files you can safely copy to your existing installation are listed below, in Appendix A. It is not necessary to stop or restart CFMX server for this copy operation.
DO NOT ADD any JAR files to WEB-INF/lib yet. This will be done later.
Whether you copy all new files at this stage, or not, you MUST however, copy the following 3 files from [ACTEMP] to [INSTALL_DIR]:
AuditLogPolicy.properties
UserAccountPolicy.properties
UserPasswordPolicy.properties
WARNING: DO NOT
REPLACE the following (3) files at any time during the upgrade process.
[INSTALL_DIR]\acb.cfm
[INSTALL_DIR]\WEB-INF\ablecommerce.key
[CFMX_DIR]\WEB-INF\web.xml
Step 4) - Synchronization of Files (Optional)
In Service Release 1, some JAR files in WEB-INF/lib have been renamed. You do not need to add the renamed files to your existing WEB-INF/lib.
These files are:
Acme.zip changed to acme.jar
CertiTaxJavaAPI.jar renamed to gw_certitax_java_api.jar
JLinkPointTxn.jar renamed to gw_linkpoint_txn.jar
trans_client_jsse.zip renamed to gw_paradata_client_jsse.jar
verisign.jar renamed to gw_versisgn_pfpro.jar
This step requires no action, except if you feel it necessary to keep file names synchronized with Service Release 1.
Step 5) - Add new JAR files
The following new JAR files have been added to WEB-INF/lib in Service Release 1.
You can simply copy them from [ACTEMP]/WEB-INF/lib to [CFMX_DIR]/WEB-INF/lib folder and [INSTALL_DIR]/WEB-INF/lib. You do not have to stop or restart your CFMX server for this operation.
dom4j-1.6.1.jar
xalan.jar (if you add this make sure you also update xmlparserAPIs.jar in the next step)
Step 6) - Update existing JAR files
The following JAR files have been updated in Service Release 1. Although the JAR files are updated to newer versions, the previous versions of JAR files should also work. However, it is advised to remove the old JAR files and replace with these updated JAR files.
bsh2.0b1.jar replaced with bsh2.0b4.jar
icssecurity.jar replaced with gw_cybssecurity.jar
icswsclients.jar replaced with gw_cybsclients.jar
jaxen-core.jar and jaxen-dom.jar replaced with jaxen-1.1-beta-8.jar
xmlParserAPIs.jar replaced with xml-apis.jar
crimson.jar needs to be REMOVED
To Perform the JAR file upgrade -
Copy the new JAR files from [ACTEMP]/WEB-INF/lib to [CFMX_DIR]/WEB-INF/lib. The files already have different names so you won't be overwriting any existing files.
To synchronize the new JAR files with your existing installation, you should copy the new JAR files from [ACTEMP]/WEB-INF/lib to [INSTALL_DIR]/WEB-INF/lib as well.
Stop the CFMX server
Remove the old files from [CFMX_DIR]/WEB-INF/lib, including crimson.jar
Restart CFMX server
Verify that your installation
and store(s) are still working fine. If there are any problems, clear
your ColdFusion cache (see FAQ) and retest. If
the issue persists, then you may want to roll this step back and post
it to Ablecommerce
Forums
for discussion.
If you think it’s a bug, post it to Bugs.ablecommerce.com
.
Step 7) - Perform a safe file upgrade
Update the files which do not interfere with the normal operation of AbleCommerce. Copy them from [ACTEMP] to [INSTALL_DIR] making sure to place them in the applicable folder.
The files you can safely update without any issue are listed below:
ablecommerce.properties
acb.vm
install.cfm
WEB-INF\database\access_blank.sql
WEB-INF\database\access_master.sql
WEB-INF\database\mssql_blank.sql
WEB-INF\database\mssql_master.sql
WEB-INF\database\mysql_blank.sql
WEB-INF\database\mysql_master.sql
WEB-INF\database\pgsql_blank.sql
WEB-INF\database\pgsql_master.sql
admin\admin.css
admin\admin_2.css
Everything in master\help\javadoc\
Step 8) - Update the database upgrade scripts
Update the following two files in your existing AbleCommerce installation:
master\storegroup\upgrade2.bsh
master\storegroup\upgrade2.cfm
Copy them from [ACTEMP]\master\storegroup\ to [INSTALL_DIR]\master\storegroup\
Step 9) - Update the AbleCommerce JAR files
Up to this stage, you have already upgraded the JAR files except for the new Ablecommerce_xxx JARs. Your installation should be working fine without any problems. Now, we will proceed to the most important upgrade step. It involves two operations -
Replacing the old ablecommerce_xxx.jar files with the new ones.
Running the database upgrade scripts.
NOTE: Every effort has been made to keep the new JAR files in Service Release 1 backward compatible. However, because of a large number of changes, there might be unknown regression issues which we may not have detected yet. Therefore, once you upgrade the JAR file, immediately verify that all your deployed stores are functioning properly. If something in your Master or Merchant Administration section is not working, it is not a big concern, it can be fixed with patience. If anything goes wrong on the retail side it can be problematic, so you may have to rollback in this case.
Stop ColdFusionMX services.
Remove all .jar files whose name start with "ablecommerce5"
from -
[CFMX_DIR]/WEB-INF/lib/
Copy the two .jar files whose name start with "ablecommerce5"
-
from [ACTEMP]/WEB-INF/lib/
to [CFMX_DIR]/WEB-INF/lib/
and also to [INSTALL_DIR]/WEB-INF/lib
(to maintain synchronization)
Restart ColdFusionMX services to register the new library files. Be sure to give CFMX time to start completely before going to the next step.
Verify that your installation
and store(s) are still working fine. If there are any problems, clear
your ColdFusion cache (see FAQ) and retest. If
the issue persists, then you may want to roll this step back and post
it to Ablecommerce
Forums
for discussion.
If you think it’s a bug, post it to Bugs.ablecommerce.com
.
NOTE: When using CFMX in the 'multi-server' JRun configuration, you will need to add the WEB-INF/classes to the classpath in JRun by using the JMC or editing {Jrun4_home}/bin/jvm.config
Step 11) - Upgrade Database
After updating the AbleCommerce JAR files in the prior step, login to the Master Administration Menu and click on the Manage Store Groups menu item.
NOTE: The Service Release 1 upgrade may force you to change your password when logging in. If this occurs, update your password following the new password rules.
Find and click either the “Upgrade All” link, or the "Upgrade" link under Actions to upgrade one database at a time. You will be presented with a page like the one shown below.

Read the information on this page, check the box if you have made your backups, and click the Next button.
The selected AbleCommerce database(s) will be upgraded as necessary. You will be able to watch the upgrade progress as it is reported on the screen during this process.
You should save a copy of the database upgrade report when it is completed. This can be used by AbleCommerce technicians to troubleshoot any potential issues after upgrading.
Check all
your deployed stores on the upgraded AbleCommerce installation. Hopefully,
nothing is broken. If anything is broken in your stores, you may have
to rollback and restore your backups. Report any issues to Ablecommerce Forums
for discussion. If
you think it’s a bug, post it to Bugs.ablecommerce.com
.
Congratulations! If you have reached this point, you have already done the most important part of the upgrade. The rest of the upgrade process can be carried out slowly and steadily over a longer period of time.
Step 12) - Upgrading the remaining program files
Most likely you haven’t done any customizations in the master or admin sections of your current installation. If this is the case, simply copy the remaining files from Service Release 1.
Copy all files from [ACTEMP]\admin\ to [INSTALL_DIR]\admin\
Copy all files from [ACTEMP]\templates\ to [INSTALL_DIR]\templates\
If you have done any customization in your master or admin section, follow the same upgrade procedure as described below for upgrading your store templates.
Step 13) - Upgrading the AbleCommerce store templates
The store templates have been updated to correct bugs and include necessary updates. We strongly suggest upgrading the store templates as backwards compatibility cannot be guaranteed.
If you have been using the built-in Themes and Wizards, and have not customized your .cfm files directly, the store upgrade should be relatively easy. The following step will over-write all your store templates, includes, css files, etc.
Warning: MAKE
A BACKUP BEFORE PROCEEDING.
You need to backup all files in the store folder (*.cfm, *.wzc, *.wzct)
and all sub-folders (/includes, /css, /images, etc.)
DO NOT REPLACE the following (2) files at any time during the upgrade process.
[INSTALL_DIR]\stores\1\acb.cfm
[INSTALL_DIR]\stores\1\includes\storeid.cfm
(Actual location of store templates may vary)
By default, the templates for the first store are located here -
[INSTALL_DIR]/stores/1/*all files and sub-folders*
If you are not sure where your store files are located, click on the STORES icon from the Master Admin menu. Then, click on the linked store name and you will view the Edit Store configuration page. The physical path setting indicates the location of the store files. Each store of the installation must be upgraded individually. Repeat as needed.
Suggestions for upgrading a store with customized templates -
Most of the store template customizations can be done via wizards and style sheets. So, if you haven’t done any customization other than using wizards and css files, you can simply replace all your existing .cfm files (except acb.cfm and includes/storeid.cfm) with the new files from Service Release 1. However, you must take the following things into account when replacing files.
If you have made style sheet changes - you should not replace /stores/1/css/*.css
If you have made Theme changes - you should not replace /stores/1/themes/*.*
If you have custom images, do not replace /stores/1/images/*.*
Make sure you don't replace any other files that have been customized (JavaScripts, LeftNav, RightNav, Panels, wizard source files, etc.)
If you have done major customizations that you do not want to lose, then follow this procedure:
Identify the original build you started working with. We assume it is build 1357, but it could be a later build.
Compare the un-modified template files of build 1357 to the template files of Service Release 1 using a file comparison utility. A good discussion on file comparison utilities can be found at http://forums.ablecommerce.com/viewtopic.php?p=5936
Incorporate the new changes, identified by the comparison
utility, into your current store files. Most of the time, if the change
is related to some display issue, you may not even want to make that change.
In that case you can just ignore the change.
The files you can safely copy from Service Release 1 to your existing AbleCommerce installation are:
AuditLogPolicy.properties
UserAccountPolicy.properties
UserPasswordPolicy.properties
WEB-INF\classes\cs_pay_editpage.html
WEB-INF\classes\cs_pay_request.xml
WEB-INF\classes\cs_tax_request.xml
WEB-INF\classes\log4j.ac.properties
WEB-INF\classes\tax_gw_response.xml
WEB-INF\lib\acme.jar
WEB-INF\lib\bsh-2.0b4.jar
WEB-INF\lib\dom4j-1.6.1.jar
WEB-INF\lib\gw_certitax_java_api.jar
WEB-INF\lib\gw_cybsclients.jar
WEB-INF\lib\gw_cybssecurity.jar
WEB-INF\lib\gw_linkpoint_txn.jar
WEB-INF\lib\gw_paradata_client_jsse.jar
WEB-INF\lib\gw_verisign_pfpro.jar
WEB-INF\lib\jaxen-1.1-beta-8.jar
WEB-INF\lib\xalan.jar
WEB-INF\lib\xml-apis.jar
admin\common.cfm
admin\sessionconfig.cfm
admin\categories\copycategory.cfm
admin\gateways\gatewayassn.cfm
admin\images\menu\froogle.gif
admin\images\menu\rewrite.gif
admin\images\menu\shippingdhl.gif
admin\orders\markshipped.cfm
admin\orders\status\delstatus.bsh
admin\orders\status\delstatus.cfm
admin\users\changepw.cfm
master\common.cfm
master\sessionconfig.cfm
master\help\javadoc\com\ablecommerce\ac5\misc\CAProvincePCTable.html
master\help\javadoc\com\ablecommerce\ac5\misc\IProvinceFromPostalCode.html
master\help\javadoc\com\ablecommerce\ac5\misc\ZipRange.html
master\help\javadoc\com\ablecommerce\ac5\misc\ZipStateTable.html
master\help\javadoc\com\ablecommerce\ac5\order\DefaultPackager.html
master\help\javadoc\com\ablecommerce\ac5\payment\PaymentStatus.html
master\help\javadoc\com\ablecommerce\ac5\payment\validator\AbstractCardValidator.html
master\help\javadoc\com\ablecommerce\ac5\payment\validator\GenericRequiredValidator.html
master\help\javadoc\com\ablecommerce\ac5\payment\validator\Mod10ExpValidator.html
master\help\javadoc\com\ablecommerce\ac5\payment\validator\Mod10Validator.html
master\help\javadoc\com\ablecommerce\ac5\payment\validator\USPhoneNumberValidator.html
master\help\javadoc\com\ablecommerce\ac5\product\BatchUpdateResultType.html
master\help\javadoc\com\ablecommerce\ac5\session\AuthenticationResult.html
master\help\javadoc\com\ablecommerce\ac5\session\LoginResult.html
master\help\javadoc\com\ablecommerce\ac5\user\AuditLogEntryType.html
master\help\javadoc\com\ablecommerce\ac5\user\AuditLogPolicy.html
master\help\javadoc\com\ablecommerce\ac5\user\AuditLogger.html
master\help\javadoc\com\ablecommerce\ac5\user\SetPasswordResult.html
master\help\javadoc\com\ablecommerce\ac5\user\UserAccountPolicy.html
master\help\javadoc\com\ablecommerce\ac5\user\UserPasswordHelper.html
master\help\javadoc\com\ablecommerce\ac5\user\UserPasswordPolicy.html
master\help\javadoc\com\ablecommerce\ac5\user\ValidatePasswordResult.html
master\help\javadoc\com\ablecommerce\ac5\util\NumberUtils.html
master\images\button_cancel_s.gif
master\store\updatetemplate.cfm
master\users\changepw.cfm
templates\1\addressbook.cfm
templates\1\addressbook_ac_addressbook_01.wzc
templates\1\seladdr.cfm
templates\1\seladdr_ac_seladdr_01.wzc
templates\1\conf\cs_pay.properties
templates\1\conf\cs_tax.properties
templates\1\conf\zip-state-table.txt
templates\1\css\BlueGray_Base.css
templates\1\images\button_finish.gif
templates\1\includes\common.cfm
templates\1\includes\sessionconfig.cfm
templates\1\includes\sessionutils.cfm
templates\1\includes\spidersession.cfm
templates\1\wizards\ac_addressbook_01.wzf
templates\1\wizards\ac_addressbook_01.wzi
templates\1\wizards\ac_seladdr_01.wzf
templates\1\wizards\ac_seladdr_01.wzi