This section explains the design of the JdbcXmlService (JXS) engine looking at
what it does;
the problems it solves
how its configured.
JXS is a business rules framework which models itself on a state transition methodology. From a MVC (Model - View - Controller) perspective, JXS can be seen as the 'M' (Model) framework. It defines server-based states and actions within a XML configuration file. The Client (VC - View and Controller) is defined by Servlets, JavaScript and HTML. The JavaScript would reference either the
JSONP/JSON Servlet,
Comet-D Servlet or
Web socket Servlet.
The config file can references
JMS,
XQuery,
XSLT,
MVEL and
SQL.
If you are comfortable with XML you will be comfortable in directly modifying and building JXS code.
JXS allows for the development of the server-side business logic and flows without the recompilation of code and logic. In most cases the business logic of an application can be hot-deployed.
It allows for the expression of a problem domain in "state-transition" type style.
Event driven architecture, so highly scalable
If you have seen the above video the constructs of Actions, connections and conditions govern how JXS applications operate.
Actions represent nodes (which contain XQuery, XSLT or SQL instructions) while connections, connect actions together in order to perform the desired sequence of actions.
Conditions determine whether an action should be executed or not.
A 'hello world' example will provide a basic illustration of its operation.
The configuration file is the heart of the framework. It is composed of multiple aspects expressed as XML tags. These are the JMS configuration, XQuery / XSLT conditions and actions, MVEL conditions and XPATH conditions, SQL / JDBC actions and conditions and finally Cache scope.