PageBox: application deployment with publish and subscribe on J2EE, JES2, PHP and ASP.NET PageBox
PageBox site Cuckoo Java PageBox Pagebox for PHP PageBox for .NET PageBox for Java Resume

A presentation deployment solution

PageBox is a mean enabling the hot deployment and update of presentations in Application Servers.
A PageBoxed Application Server (PAS) behaves as a browser, it downloads a presentation from a repository just like a browser downloads an applet and like a browser a PAS runs the presentation in a Java 2 sandbox with rights based on the presentation signature.

PageBoxes can run in standalone mode with an HTTP administration or in constellations of unlimited size that can spread world-wide. In the latter case, Pageboxes are combined with repositories. A PageBox can subscribe to one or many repositories. When an author publishes a Web Archive to a repository, the repository automatically deploy the Web Archive on subscribing PageBoxes.

The size of a constellation is illimited because it is only a logical and security entity. Provided it is authorized, everyone can add PageBoxes or repositories to a constellation.

We developed a PageBox implementation under Gnu Public Licence named JSPservlet.
You can download on this site. It is available in different versions:

  1. For J2EE application servers. You can download compiled version for Tomcat and Resin.
  2. For OSGi embedded servers. This version exists in two flavors normal and diskless. You can download a version compiled for Sun JES2.

We also developed:

  • A comprehensive repository tool, Publisher.
  • A requestor location dependent routing. A mapper component finds the location of a requestor based on its IP address.
  • A support for Publishing frameworks. JSPservlet has been tested with Cocoon and SOAP. It means you can write PageBox presentations without Java programming to access UDDI services.

PageBoxes are designed to be replicated and distributed as close as possible to the users of the presentations that they host. They provide the following benefits:

  1. The central system no longer host presentation. It needs less resources.
  2. You can host PageBoxes on user sites and/or cheap ASPs. As PageBoxes are highly redundant, you don't need anymore expensive fault-tolerant mechanisms.
  3. Traffic between PageBoxes and central system uses client/server protocol and requires less bandwidth than HTML.
  4. The presentation being closer to the user,
    1. The response time is enhanced.
    2. You no longer need to deploy browser hosted scripts that replicate presentation checks and can compromize the client security.

The project is structured on SourceForge like this:

Project organization

On the left side you have links to JavaDoc of all components.
Click on Documentation to see user guides and download documentation and components.

You can find information on its implementation in a 3 part article named a Practical solution for the deployment of JavaServer Pages on Java Developer Journal.

We definitely recommend first reading the article,

Also read component documentation on, especially:

We complemented the Java PageBox with new products:


Cuckoo is an XML authoring tool implemented in Word.
  • Because it is a Word plug-in, it has been simple to write. We provides the source and explain how it works. If you know Word VBA, you should be able to adapt it to your needs. It is free and Open Source (GNU LGPL as usual on this site).
  • If your content is mostly textual, Cuckoo can be the best choice. With Word you can check your spelling. We also wrote a macro to show statistics on Word use.
  • Cuckoo is flexible. It supports tables, mouse overs and forms. The deliveries also include many XSL style sheets to generate the content in HTML and for ASP, JSP, PHP, Cocoon and Resin.
You can read the documentation of Cuckoo here.

PageBox for PHP

PageBox for PHP is a complete rewriting of PageBox for PHP 4.
Because PHP is not Java, PageBox for PHP cannot implement sandboxes and is less secure.
On the other hand, it is simpler to install and customize. It allows deploying presentations and also to run batchs on PageBox sites.

The first versions already allow creating constellations and include:

  • The PageBox itself
  • The Subscriber and the Publisher

You can read the documentation of PageBox for PHP here.

PageBox for .NET

PageBox for .NET reuses the design of PageBox for PHP 4.
It is written in C# and use XML for configuration and serialization. It uses SOAP Web services for deployment and retry and includes a Windows service

The first versions already allow creating constellations and include:

  • The PageBox itself
  • The Subscriber and the Publisher

You can read the documentation of PageBox for .NET here.

PageBox for Java

PageBox for Java design reuses the PageBox for .NET design plus:
  1. A more scalable deployment model described in the Grid API V2. You can find details about this model in the Deployment with relays section.
  2. A delta deployment using the jardiff format described in the JNLP specification. Only the difference between the current version and the installed version is sent to the target PageBox.
  3. An installation API allowing fully automated deployments and updates.
  4. A better security model.

The reference version of PageBox for Java runs on Java Web Services Developer pack (WSDP) and on Tomcat/Axis. PageBox for Java can be easily ported to other Application servers that support:

  • JavaServer Page (JSP) specification 1.2 to 2
  • Servlet specification 2.3 or 2.4
  • JAXP
  • JSTL
  • COS, the com.oreilly.servlet package written by Jason Hunter for the Web archive upload (MultipartRequest class)

AS doc JES2 doc Diskless doc Publisher doc Publisher client doc Configurator doc
Doc & downloads CVS repository

©2001-2004 Alexis Grandemange   Last modified .