//simple label at the webpage
label = new Label("luname",user.getUsername());
add(label);

you forgot to call setOutputMarkupId(true) above, wicket ajax debug console
shouldve hinted at that.

-igor


On 8/15/07, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote:
>
> Well ok.
> I tried it this way:
>
> public class MyTree extends LinkTree{
>
>         public MyTree(String arg0, TreeModel arg1) {
>                 super(arg0, arg1);
>         }
>
>
>         protected void onNodeLinkClicked(javax.swing.tree.TreeNode node,
> BaseTree tree, AjaxRequestTarget target)
>         {
>
>                 Label label = new Label("luname",node.toString());
>                 label.setOutputMarkupId(true);
>                 page.addOrReplace(label);
>
>                 ConfirmPage page = (ConfirmPage)tree.getWebPage();
>                 AjaxTabbedPanel tpanel = page.getTpanel();
>
>                 MyPanel panel = (MyPanel)tpanel.get("panel");
>                 Label label2 = new Label("test","TestText");
>                 label2.setOutputMarkupId(true);
>                 panel.addOrReplace(label2);
>
>                 target.addComponent(label);
>                 target.addComponent(label2);
>         }
> }
>
> It works so far, but is this really the right way?
>
> How do I access the MyPanel which is included in the AjaxTabbedPanel?
> I don't think that MyPanel panel = (MyPanel)tpanel.get("panel");  is the
> best way.
>
> Any suggestions?
>
> Fabian
>
>
>
>
>
>
> "[EMAIL PROTECTED]" <[EMAIL PROTECTED]>
> 15.08.2007 09:53
> Bitte antworten an
> [email protected]
>
>
> An
> [email protected]
> Kopie
>
> Thema
> Re: updateing a component on AjaxTabbedPanel
>
>
>
>
>
>
> The ajax tabbed panel should be an instance variable. Then you can use
> target.addComponent(tabbedPanel).
>
> 2007/8/15, [EMAIL PROTECTED] <[EMAIL PROTECTED]>:
> > Hi there,
> >
> > i am very new to wicket an got some problems while using a tree and a
> > AjaxTabbedPanel.
> >
> > I want to update a simple label component at an AjaxTabbedPanel after
> the
> > user click something at the tree.
> >
> > Here is my code:
> > public class ConfirmPage extends WebPage{
> > public ConfirmPage()
> >         {
> >                 super();
> >                 //user is a simple POJO
> >                 User user = new User("test","test");
> >
> >                 //Elements for the Tree
> >                 List<ConsUnit> consUnits = new ArrayList<ConsUnit>();
> >                 consUnits.add(new ConsUnit("Single"));
> >                 consUnits.add(new ConsUnit("General"));
> >                 consUnits.add(new ConsUnit());
> >
> >                 //simple label at the webpage
> >                 label = new Label("luname",user.getUsername());
> >                 add(label);
> >
> >                 //create the tree
> >                 TreeModel tm = MyBaseTree.createTreeModel(consUnits);
> >                 tree = new MyTree("tree",tm);
> >                         add(tree);
> >                         tree.getTreeState().collapseAll();
> >
> >
> >        //create the tabs like the sample app
> >         tabs.add(new AbstractTab(new Model("first tab"))
> >         {
> >             public Panel getPanel(String panelId)
> >             {
> >                 return new MyPanel(panelId);
> >             }
> >         });
> >
> >         tabs.add(new AbstractTab(new Model("second tab"))
> >         {
> >             public Panel getPanel(String panelId)
> >             {
> >                 return new MyPanel2(panelId);
> >             }
> >         });
> >
> >         tabs.add(new AbstractTab(new Model("third tab"))
> >         {
> >             public Panel getPanel(String panelId)
> >             {
> >                 return new MyPanel3(panelId);
> >             }
> >         });
> >         tpanel = new AjaxTabbedPanel("tabs", tabs);
> >         add(tpanel);
> >         add(new StyleSheetReference("pageCSS", getClass(),
> > "css/style.css"));
> > }
> >
> > Here is now the code from the tree:
> >
> > public class MyTree extends LinkTree{
> >
> >         public MyTree(String arg0, TreeModel arg1) {
> >                 super(arg0, arg1);
> >         }
> >
> >
> >         protected void onNodeLinkClicked(javax.swing.tree.TreeNode node,
> > BaseTree tree, AjaxRequestTarget target)
> >         {
> >
> >                 //update the label on ConfimPage
> >                 Label label = new Label("luname",node.toString());
> >                 label.setOutputMarkupId(true);
> >                 page.addOrReplace(label);
> >                 target.addComponent(label);
> >
> >                 //how to update AjaxTabbedPanel???
> >         }
> > }
> >
> > Here the code from MyPanel:
> >
> > public class MyPanel extends Panel{
> >
> >         private Label label;
> >
> >         public MyPanel(String id) {
> >                 super(id);
> >
> >                 label = new Label("test", "Text");
> >                 label.setOutputMarkupId(true);
> >                 this.add(label);
> >
> >         }
> > }
> >
> > The label at ConfirmPage is updated via Ajax if the user selects
> something
> > from the tree, but not the label at the AjaxTabbedPanel.
> > If the user selects something from the tree the label at MyPanel should
> be
> > updated with the value of the tree node.
> > How do i do this?
> >
> > With kind regards
> > Fabian Hagen
> >
> > S&N AG
> > Klingenderstr. 5
> > D 33100 Paderborn
> >
> > voice     +49 5251/1581- 862
> > fax       +49 5251/1581-71
> > eMail     [EMAIL PROTECTED]
> > web       http://www.s-und-n.de
> >
> > Vorstand
> > Klaus Beverungen
> > Josef Tillmann
> >
> > Vorsitzender des Aufsichtsrates
> > Heinz-Dieter Wendorff
> >
> > Handelsregister
> > Amtsgericht Paderborn HRB 3270
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>
>

Reply via email to