Ver 8.8.0.0 – What’s new?

Introduction

Version 8.8.0.0 is the first release after version 8.7.0.0 that has been made generally available. It contains many exciting new features and a number of bug fixes. Before upgrading, please read the Upgrade Compatibility Alerts for each version.

Version 8.8.0.0

Note that some of the features highlighted below are only available in the Enterprise Extensions. See here for full details of what is included only in the Enterprise Extensions.

New Features

  • The kit now includes a Messenger Bot to help customers find products managed by a KonaKart store, using the Facebook Messenger interface and Wit.ai artificial intelligence. Full source code is provided allowing you to add your own bespoke functionality.
  • A new Messenger Plugin module allows you to enable a Messenger chat window directly from the storefront application.
  • Added additional marketplace functionality when running in multi-vendor mode. Vendor company information can now be managed by KonaKart and customers can write reviews for vendors. The vendor details, average vendor rating and the vendor reviews can be viewed from the storefront application.
  • Added B2B functionality in the storefront application. A user can now be defined as a B2B Customer Administrator and can administer all B2B users for his company. He can create, update, disable, delete users and define their roles such as whether they have an order limit or their orders require approval etc.
  • ERP Integration – Added a new UpdateObject message from KonaKart to the ERP which is sent when customers, orders and products are modified.
  • ERP Integration – OrderExport. Added 5 custom attributes, refund value and refund points to an order line item.
  • Added the ability to reorder product images in the Admin Console.
  • Added new API call insertCatalogPrices(), providing an efficient way of inserting an array of catalog product prices.
  • Edit content panel. Added custom validation to most attributes.
  • The Facebook login module now stores the Facebook Id of the customer in a customer tag.
  • Added store name and store description attributes to a product. They are populated when in shared product multi-vendor mode.
  • Added product images in the checkout page of the storefront app.
  • When incrementing the customer logon count an optimistic verify mechanism has been introduced to improve the accuracy of the logon count when the same customer logs in multiple times simultaneously. Not usually seen in production systems but more often in load-testing scenarios.
  • Improved performance of a number of API functions when executed simultaneously in multiple threads.
  • Upgraded to Apache Tomcat 8.5.20
  • Upgraded to Ehcache 2.10.4
  • Upgraded to new versions of open source jars: commons-lang3-3.6, jersey-bundle-1.19.4
  • Added commons-text-1.1.jar
  • Made the Customer’s Tax Exemption field available for editing in the Admin Console. If not required this field can be hidden using file-based configuration of the Admin Console.
  • Made the store description a text area rather than a text box in the Edit Store panel of the Admin Console.
  • When fetching orders the AdminOrderTotal.id and AdminOrderStatusHistory.orderId attributes are now populated.
  • Added the konakart.emailThreadGracefulShutdownTimeout property to konakartadmin.properties to allow the configuration of a timeout period for graceful shutdown of email threads. The default of 60 secs is usually sufficient.
  • SMTP Server port added as a configuration variable that can be set in the Admin Console. It can also be set as a command line parameter for the installer.
  • Notification by email of storefront, KKEng and KKAdmin exceptions to a Sys Admin user can be enabled or disabled in the Admin Console.
  • Increased the size of the sesskey column in the sessions table to significantly reduce the likelihood of duplicate session Ids being created. (If duplicates were created they weren’t allowed (session Ids were always re-generated until unique) but it’s better for performance to reduce the likelihood of duplicates being created in the first place).
  • By default the tomcat bundled with KonaKart will be configured to disable auto-deploy to provide improved performance.
  • By default KonaKart is configured not to allow direct file I/O operations by an Administrator. For instructions on how to enable these operations note the comments under the “Initial Lockdown” section of the KonaKart User Guide. These measures have been taken for security reasons.
  • All KonaKart jars now provided with debug information in the class files.
  • Usability improvement when inserting a product with a custom attribute template, using the admin app. After clicking the save button, the custom attribute tab is given the focus to remind the user that the custom attributes need to be set. An optional pop-up also appears with a reminder.
  • Added the five address custom attributes to the address format template.
  • Added options for configuring access to a Zookeeper ensemble to use a Solr Cloud set-up for highly-scalability and fault-tolerance.
  • Added two new codes to KKException for when a session id isn’t found and for when a session times out.

Bug fixes

  • Placed CSS images in the correct location under the JQuery example application
  • Edit content panel. Save button wasn’t being enabled after changing the search key.
  • Fixed a database locking problem that could occur when a high number of editProduct or registerCustomer API calls were made simultaneously.
  • Fixed a bug in the storefront application in the method setCatalogKeyForCustomer() of com.konakart.al.CustomerMgr. When using catalogs, a private category tree was being generated even for customers without a catalog key in the B2B_CATALOG_KEY customer tag.
  • Added currencyCode to the order attributes returned when calling the Admin App API call getOrdersLite(). It’s required to show the correct currency symbol in the Admin App panel when displaying a list of orders in currencies other than the default currency.
  • For DB2: Retain the order of the results in sub-selects in outer selects where it wasn’t previously guaranteed.
  • Fixed a bug which occurred when uploading a product image over the top of an existing image of a different type (eg a jpg image overwriting a png).
  • Fixed a bug in promotion modules ProductDiscount and BuyXGetYFree where rounding errors were being accumulated on multiple product discounts.
  • When using AllowMultipleRegistrations to allow a registered customer to checkout without registration, more customers are created with the same email address. In the case of Admin users, this was preventing them from logging in because the Admin Eng was throwing an exception when it detected multiple users with the same email address.

Backwards Compatibility Alert

  • In order to correct some inconsistencies in Date serialisation in some of the Admin objects the treatment of Dates has been standardised to use timestamps. The following objects’ date attributes are affected: AdminApiCall, AdminBooking, AdminCategory, AdminPanel, AdminProductNotification, AdminRole, and AdminSpecial.
  • Note the new Solr Access Mode configurations in the Admin Console. To continue using Solr as before you should use the default “Solr” Solr Access Mode (however the base URL and path for Solr have now been split out into two configuration variables). New for v8.8.0.0 is the option to use “Zookeeper” Solr Access Mode which requires additional configuration. Refer to the User Guide for more details.

Limitations

  • Storefront integration with Liferay found not to be working (action classes of type json don’t work correctly) in the following point releases:

    • Liferay CE 7 GA5
    • Liferay DXP 7 SP6 (7.0.10 GA1)
  • Storefront Liferay SSO does not support B2B Customer Administrator functionality.