The GPO Tags support system initialisation and access to GPO objects.

System Initialization

The gpo:init tag defines the client and store to be used by this system. For example, this code was generated by The Alchemist to initialize the "Northwind" web application:

<gpo:init
  clientClass="alchemy.northwind.client.NorthwindClient" 
  om="cutthecrap.oms.worm.ObjectManager" store="northwind.wo"
/>

Root Object

Once an application has been initialized the gpo:root tag will return the root object.

<gpo:root id="myroot" type="MyRoot">
  The root object is known as <%=myroot.getName()%>
</gpo:gpo>

GPO Object

The gpo:gpo tag returns the object reference by either the idref attribute or in the request parameter indicated by the parameter attribute.

<gpo:gpo id="agpo" parameter="id" type="MyGPOClass">
  <%=agpo.getLabel()%>
</gpo:gpo>

This is the key tag to support incremental navigation of the model.

Most web application interactions will result in requests to the server with some object reference. This tag allows the reference passed to be tied back into the object model.