KonaKart is written in Java and includes a variety of robust open source frameworks and libraries used in thousands of products around the world.
Java technology’s versatility, efficiency, platform portability, and security make it the ideal technology for network computing.
KonaKart can be deployed on most servlet engines / application servers including JBOSS, GlassFish, Wildfly, BEA WebLogic and IBM WebSphere. It is shipped with Apache Tomcat.
Thanks to its underlying technology, KonaKart can support most popular databases including MySQL, PostgreSQL, Oracle, DB2 and MS SQL Server. Database scripts are provided for all of the above databases in the installation package.
The eCommerce application included in the download, uses a JSP / Struts design. The checkout screens can be configured to use either JSPs or Google GWT code, which provides a more interactive experience through the use of AJAX technology.
The KonaKart server was designed to implement an API (Java, RMI, JSON and SOAP Web Services) and to be accessed only through this API. This means that it is relatively easy to develop a front end store in the technology of your choice by calling the KonaKart Client or Server APIs. The JSON APIs are use by the KonaKart JavaScript tiles which enable you to easily integrate eCommerce functionality into any web site or content management system.
A big advantage of this API approach is that the APIs remain stable between releases and the KonaKart team strives to guarantee backwards compatibility. This means that the store front can be heavily customized without jeopardizing the ability to upgrade when a new release becomes available. This ability to upgrade easily helps to ensure a low Total Cost of Ownership for KonaKart storekeepers.
Architecture
KonaKart has a modular architecture consisting of different software layers as can be seen in the diagram.
The KonaKart Server is a multi-threaded stateless component that contains the core functionality of the eCommerce application. It exposes a SOAP Web Service interface, a Java API (Javadoc), a JSON API and RMI in the Enterprise Version. It interfaces to a persistence layer and plug in modules for calculating shipping costs, promotional discounts and for connecting to payment gateways.
The KonaKart Client manages the state of a user (associated with the user’s session) as he navigates around the application. The process of writing a web based application is greatly simplified by using the API of the KonaKart client (Javadoc) rather than by calling the KonaKart Server directly.
Struts is a popular framework that implements the Model-View-Controller (MVC) architecture. We have used it to build the store front that is available in the download kit. As can be seen in the diagram, it is perfectly possible to build new store front applications using Java or non Java technology writing directly to the client or server APIs. The Struts application that we provide, communicates to the KonaKart server exclusively through the APIs and may be configured to use the SOAP, JSON or RMI APIs just by changing a value in the properties file.