phillip rhodes <rhodepc <at> yahoo.com> writes:

> However, if my pages were encapsulated within a
> library, this would not work since the  <at> Border would
> not resolve since it is not in that libraries
> namespace.

I don't know if it works, but you may having these in
your lib:

class Border extends AbstractComponent {
  void render(RequestCycle cycle) {
    PeerBorder peer = PeerLoaderHoder.loader.load(cycle);
    peer.setPeerContainer(getContainer());
    peer.render(cycle);
  }
}

interface PeerLoader {
  PeerBorder load(RequestCycle cycle);
}
class PeerLoaderHolder {
  public static PeerLoader loader;
}

interface PeerBorder extends IRender {
  void setPeerContainer(IComponent peerContainer);
}

SomePage.html:
<span jwcid="@Border">
  <span jwcid="[EMAIL PROTECTED]">...</span>
  <span jwcid="[EMAIL PROTECTED]">...</span>
</span>

In an app:

class Global {
  public Global() {
    PeerLoaderHolder.loader = new PeerLoader() {
      PeerBorder load(RequestCycle cycle) {
        return cycle.getPage("MyPeerBorderPage").getComponent("peerBorder");
      }
    };
  }
}

MyPeerBorderPage.html:
<span jwcid="[EMAIL PROTECTED]"/>

MyPeerBorder.jwc:
<component-specification class="MyPeerBorder">
  <property-specification name="peerContainer" type="IComponent"/>
<component-specification/>

MyPeerBorder.html:
<html>
<span jwcid="@RenderBlock" block="ognl: peerContainer.components.mainBody"/>
<span jwcid="@RenderBlock" block="ognl: peerContainer.components.footer"/>
</html>

class MyPeerBorder extends BaseComponent implements PeerBorder {
}



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to