File:  [mozdev] / xpserver / www / index.html
Revision 1.7: download - view: text, annotated - select for diffs - revision graph
Sat Sep 27 19:30:14 2003 UTC (16 years, 2 months ago) by cdn
Branches: MAIN
CVS tags: HEAD
despam


<!-- ***************** INFO/NEWS *************** -->
<div id="infoTabs">
<div class="infoTab" id="whats-new">
<h5 class="infoHeader">What's New</h5>
<ul>
<li>10/17 - Initial upload of XP Server code</li>
</ul>
</div>

<div class="infoTab" id="doxygen">
<h5 class="infoHeader">Doxygen for components</h5>
<ul>
<li><a href="/source/browse/~checkout~/xpserver/IDL/html/hierarchy.html">IDL</a></li>
<li><a href="/source/browse/~checkout~/xpserver/mod_PX7/html/hierarchy.html">mod_PX7</a></li>
<li><a href="/source/browse/~checkout~/xpserver/Parser/html/hierarchy.html">Parser</a></li>
<li><a href="/source/browse/~checkout~/xpserver/XPDBC/html/hierarchy.html">XPDBC</a></li>
<li><a href="/source/browse/~checkout~/xpserver/XPTee/html/hierarchy.html">XPTee</a></li>
<li><a href="/source/browse/~checkout~/xpserver/XPXSLT/html/hierarchy.html">XPXSLT</a></li>
</ul>
</div>

<!-- alternative image/table base tab works better in NS4 -->
<!--
<div class="infoTab" id="whats-new-image">
<h5 class="infoHeader"><img src="http://www.mozdev.org/sharedimages/whatsnew_top.gif" width="154" alt="What's New"></h5>
<div class="infoItems">
<div>News item goes here</div>
<div>More news item goes here</div>
<div><a href="http://mozdev.org/">mozdev.org</a></div>
</div>
</div>
-->
</div>
<!-- ***************** INFO/NEWS *************** -->

<!-- MAIN CONTENT -->
<p><b>XP Server is an orphan project.  We're looking for a new project owner.</b>  XP Server was
initially developed as a commercial project that never got 
off the ground.  I,
<a href="mailto:jonsmirl@yahoo.com">Jon Smirl</a>, am 
the initial author of a lot of the code.  I am available to answer
questions but I am no longer actively working on the project.</p>

<p>XP Server is an app server designed around <a href="http://www.mozilla.org/projects/xpcom/">XPCOM</a> so that it
is cross platform.  XP Server mainly depends on the XPCOM directory (plus some
subprojects of XPCOM).  To run FOP/Java code the
<a href="http://www.mozilla.org/projects/blackwood/connect/">Blackwood XPCOM-Java</a> bridge needs to work.  Mozilla's <a href="http://www.mozilla.org/js/spidermonkey/">Javascript</a> engine is used directly.  The rest of the
browser code is not used.</p>

<p><a href="http://httpd.apache.org/">Apache</a> is the front-end web server.  You send <a href="http://www.mozdev.org/source/browse/xpserver/TestData/">template</a> names
to the Apache server.  These template names cause an
Apache module (<a href="http://www.mozdev.org/source/browse/xpserver/mod_PX7/">mod_PX7</a>) to be run.  The template
contains a list of XPCOM components and some Javascript
for gluing them together.</p>

<p>mod_PX7 then uses XPCOM to load and run the components.  The
components can be chained using <a href="http://www.saxproject.org/">SAX</a>-like <a href="http://www.mozdev.org/source/browse/xpserver/IDL/">events</a>.  For
example a database component can do a query.  The
output from the db component is expected to be in XML. 
This XML can be sent to the browser or fed into
another component.  For example, an XSLT style sheet. 
The output from the stylesheet can then go to the
browser or be fed into yet another component such as FOP
for PDF generation or <a href="http://www.mozdev.org/source/browse/xpserver/xmlch/">xmlch</a> to generate a 3D chart using <a href="http://www.fred.net/brv/chart/">GDChart</a>.</p>

<p>A similar kind of chain works on form submission.  The
submitted data is converted to XML and it can be
processed with an incoming chain.  This allows it to be
transformed and then end up in a database.</p>

<p>You don't need an entire Mozilla build for this project. You need <a href="http://lxr.mozilla.org/seamonkey/source/xpcom/doc/xpcom-standalone.html">XPCOM standalone</a>. For the Java support you need the mozilla/java/xpcom directory from Mozilla CVS.</p>

<h3>Main Features</h3>
<ul>
<li> Apache 1.x module</li>
<li> Component based using XPCOM</li>
<li> XML templates used to chain components together</li>
<li> XML support using <a href="http://xml.apache.org/xerces-c/index.html">Xerces</a></li>
<li> XSLT support using <a href="http://xml.apache.org/xalan-c/index.html">Xalan</a></li>
<li> <a href="http://www.boutell.com/gd/">GD</a> for generating JPEG/PNG on the fly</li>
<li> GDChart for generating 3D charts on the fly</li>
<li> ODBC database to XML component</li>
<li> Templates in place for direct Oracle/Sybase/Postgressql component</li>
<li> Components can be written in C, Java, or Javascript</li>
<li> Apache FOP is used to produce dynamic PDF output</li>
<li> Build environment for MSVC included, should be no problem to port to Linux</li>
</ul>

<p>XP Server contains several embeded directories for other
open source projects such as <a href="http://www.ijg.org/">libjpeg</a>, <a href="http://www.gzip.org/zlib/">zlib</a>, etc.  These are
just version snapshots used to isolate XP Server from changes
in these projects.  These projects continue to have their
own licenses which are included in the directories.  None of
these projects are MPL most are GPL or a compatible variation.</p>

<?php // require(NOTES2); ?>

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>