Jade Sitetree - Sitetree

Jade Sitetree - Sitetree
Project Documentation
Module Documentation
Jade Projects

FAQ

  1. How does Sitetree compare to STRUTS?
  2. What do I need to run Sitetree?
  3. How much will is slow down my site?
  4. How do I get started?

How does Sitetree compare to STRUTS?

Like Sitetree, STRUTS handles a HTTP request and dispatches it to resources. However STRUTS also places a structure on the resources. STRUTS uses a Model-View-Controller pattern to separate the model (struts "actions" and other processing code), from the view (JSP pages etc.). STRUTS logic itself plays the part of the controller.

Sitetree is only a controller. It makes no assumptions about the structure of the resources referenced. It is more appropriately considered to be an implementation of the strategy pattern. Sitetree is the strategy for dispatching requests to resources.

Sitetree is a simpler technology and requires much less time to learn and use. It is also less of a framework and is easier to patch into an existing implementation. Sitetree is also appropriate for projects that need a navigation component that can be used in various architectures.

Back to list

What do I need to run Sitetree?

The Sitetree component requires JDK 1.2 or higher. If you want to use the RootServlet supplied with the package you will require a Java Servlet 2.2 compliant container.

Back to list

How much will is slow down my site?

The short answer is "not at all". Sitetree is designed for speed. If you are using JSP pages you are already using much more string manipulation than Sitetree will use to dispatch the request and generate the navigation bar.

In practical terms what really matters is the implementation you build for the SitetreeFactory interface. Building the Sitetree itself is only done once every time the user's (session) view of the site changes - say on login or logout. So your performance is dependant on how you retrieve the configuration information and cache it. SimpleSitetreeFactory uses a simple caching mechanism that can improve performance. For more realistic usage you can cache individual TreeComponent elements and construct the tree on the fly by cloning them.

One thing you may want to look at memory use. An instance of a Sitetree object will be attached to each session. If the number of nodes (locations on the navigation bar) or users is very large this can add up. Figure for average length display and resource path names:

		.5KB / node / user
	
Hence if you have 100 nodes on the average site and 100 simultaneous users you will need 5 MB of RAM for the Sitetrees for all sessions.

Back to list

How do I get started?

Install the example application and run it. This will give you a page that shows all the properties that you can get at as a JSP programmer. Then read the usage section.

From there you should be able to figure about how Sitetree could be used in your application.

Back to list

Supported by SourceForge.net Logo