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]