What is Mocha?
Mocha is the original project name of the very
popular scripting language generally known as
Javascript
and
standardized as
Ecmascript
ECMA-262/ISO-16262.
We use the term Mocha to refer to the usage of Ecmascript
outside of the scope generally
attributed to Javascript
, integrating both client-side and server-side
programming with other technologies such as XML and Java. It
is an
extremely rich, powerful
and flexible programming language
and has a large, highly developed
syntax, a huge library of standard methods (functions) and built-in
capabilities to create complex, object-oriented data structures and
methods.
Mocha
also is a port in Yemen, historically famous as
the major source for "arabica" coffee beans. Due to its aromatic
undertones of chocolate, the term Mocha also often describes a blend of
coffee and chocolate when referring to a beverage or a flavor of ice
cream :-)
What is OpenMocha?
OpenMocha
is an Internet and Website application development framework for Mocha
developers. OpenMocha is an open source project that integrates various
Mocha related open source components around a core based on the Helma
application server.
In the OpenMocha framework, solutions are defined by collections of
Mocha Objects
,
which handle the various types of standard client-server requests.
These collections are dynamically inherited from the hierarchical tree
of parents for the requested page. The Mocha Objects are application
segments containing scripts and/or skins, separating logic and design.
Requests are processed by running through the appropriate collection of
Mocha Objects for the requested URL hierarchy and executing them
relative to the requested page.
The OpenMocha framework is made up of several related projects.
Mochascript
is an abstraction library extending both client-side and server-side Javascript environments. The
Mocha Object Engine
is the layer that implements the Mocha Objects and collections and
defines the layer of the framework that is itself implemented in
Javascript. The
Helma Object Publisher
serves as the application server for the Mocha Object Engine, providing
an embedded XML database and automatic mapping of objects to relational
databases such as MySQL,
PostgreSQL
or Oracle, integrating the
Rhino Javascript Engine
with the other
Java
components and providing the Mocha environment with access to
Java packages
. The
Jetty Java HTTP Server
provides Web,
XML-RPC
and
AJP13
services, while the
James Java Enterprise Mail Server
provides SMTP, POP3 and NNTP services. The OpenMocha framework also intregrates the
Lucene Search Engine
for powerful Java-based text indexing.
24.05.2005, 19:50