You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@wicket.apache.org by Alexander Landsnes Keül <Al...@visma.no> on 2007/10/26 09:18:25 UTC
Issue with border
Hi,
We're looking into moving our presentation layer over to Wickets, and I'm creating a mockup of our current web interface to see how it works. So far I'm quite pleased, but I have an issue with borders.
I'm trying to create a navigation border similar to the Navomatic example on the wicket page, but I'm having a problem there. The error message is:
WicketMessage: Unable to find component with id 'personaliaPanel' in [MarkupContainer [Component id = _body, page = com.visma.HomePage, path = 0:tabPanel:panel:personaliaBorder:_body.Border$BorderBodyContainer, isVisible = true, isVersioned = true]]. This means that you declared wicket:id=personaliaPanel in your markup, but that you either did not add the component to your page at all, or that the hierarchy does not match.
[markup = file:/C:/javadev/wicket/workspaces/wicket/target/classes/com/visma/PersonData.html
<html xmlns:wicket>
<body>
<wicket:panel>
<center>
<span wicket:id="personaliaBorder">
<span wicket:id="personaliaPanel">personaliaForm goes here</span>
<span wicket:id="skillsPanel">skillsPanel goes here</span>
<span wicket:id="feedback">Feedback panel here</span>
</span>
</center>
</wicket:panel>
</body>
</html>
, index = 5, current = '<span wicket:id="personaliaPanel">' (line 7, column 2)]
This is in my PersonData.html file, but personaliaPanel is declared in PersonData.java. Works fine until I tuck in the PersonaliaBorder. Java and HTML file are as follows:
package com.visma;
import org.apache.wicket.markup.html.border.Border;
import org.apache.wicket.markup.html.border.BoxBorder;
/**
* @author alexanderlk
*/
public class PersonaliaBorder extends Border
{
private static final long serialVersionUID = 1L;
public PersonaliaBorder( String id )
{
super( id );
add( new BoxBorder("myBorder"));
}
}
<html xmlns:wicket>
<body>
<wicket:border>
<span wicket:id="myBorder">
<wicket:body/>
</span>
</wicket:border>
</body>
</html>
This looks quite similar to the Navomatic example, just without the navigation part. I must be doing something wrong, but I can't quite figure out what it is.
The other thing I'm wondering about is if there's an easy way to just tell a component to be surrounded by a BoxBorder. Seems you have to use setComponent(..), but then you have to define a border with an html to go along with it. I just want to add a thin border around a panel or somesuch.
Regards,
Alexander