Bug Base has a web based architecture using four
servlets, a set of JSPs as web frontend and two applets
for managing bug reports and administrating Bug Base.
The main servlet is
BugBaseServlet.
This servlet receives a
serialized request object.
Depending upon the query type
is the behaviour of the servlet. It executes the desired
query and returns the result wrapped into a
query result object.
The persistency of Bug Base is realized with relational
databases. Currently, two databases are supported:
Hypersonic SQL
for small sites and MySQL for
sites with more bug traffic. For
Hypersonic
SQL, an own servlet is provided due to a design
weakness. In the current version 1.6.0 of
org.hsqldb.Serlvet , the database filename is
not configurable, but it has to be set fixed in the
constructor. This does not fit to the servlet API. Hence,
we import the sourcecode of
org.hsqldb.Serlvet in the hope, that this
will be fixed in the future.
The communication with the main servlet is handled by
BugBaseServletClient.
This client is used both in the two applets and for the JSPs.
The JSP architecture follows the
MVC
paradigma. As central controller, the
struts
action servlet is used. Attributes that are used through
the whole application are initialized by
BugBaseJspServlet.
|