Here is the bean... sorry I should have thought to include it:

package com.sag.ids.web.data.dto;

import com.sag.ids.api.datamodel.java.*;

import java.io.*;

public class SymbolDto implements Serializable
{
   public String
   getIdsDocoId()
   {
       return theIdsDocoId;
   }

   public void
   setIdsDocoId(String aIdsDocoId)
   {
       theIdsDocoId = aIdsDocoId;
   }

   public long
   getIdsSymbolId()
   {
       return theIdsSymbolId;
   }

   public void
   setIdsSymbolId(long aIdsSymbolId)
   {
       theIdsSymbolId = aIdsSymbolId;
   }

   public String
   getName()
   {
       return theName;
   }

   public void
   setName(String aName)
   {
       theName = aName;
   }

   public String
   getCategoryName()
   {
       return theCategoryName;
   }

   public void
   setCategoryName(String aCategoryName)
   {
       theCategoryName = aCategoryName;
   }

   public String
   getCategoryId()
   {
       return theCategoryId;
   }

   public void
   setCategoryId(String aCategoryId)
   {
       theCategoryId = aCategoryId;
   }

   public String
   getProductTypeName()
   {
       return theProductTypeName;
   }

   public void
   setProductTypeName(String aProductTypeName)
   {
       theProductTypeName = aProductTypeName;
   }

   public String
   getProductTypeId()
   {
       return theProductTypeId;
   }

   public void
   setProductTypeId(String aProductTypeId)
   {
       theProductTypeId = aProductTypeId;
   }

   public String
   getUnderlyingTypeName()
   {
       return theUnderlyingTypeName;
   }

   public void
   setUnderlyingTypeName(String aUnderlyingTypeName)
   {
       theUnderlyingTypeName = aUnderlyingTypeName;
   }

   public String
   getUnderlyingTypeId()
   {
       return theUnderlyingTypeId;
   }

   public void
   setUnderlyingTypeId(String aUnderlyingTypeId)
   {
       theUnderlyingTypeId = aUnderlyingTypeId;
   }

   public String
   getCurrencyName()
   {
       return theCurrencyName;
   }

   public void
   setCurrencyName(String aCurrencyName)
   {
       theCurrencyName = aCurrencyName;
   }

   public String
   getCurrencyId()
   {
       return theCurrencyId;
   }

   public void
   setCurrencyId(String aCurrencyId)
   {
       theCurrencyId = aCurrencyId;
   }

   public String
   getExchangeName()
   {
       return theExchangeName;
   }

   public void
   setExchangeName(String aExchangeName)
   {
       theExchangeName = aExchangeName;
   }

   public String
   getExchangeId()
   {
       return theExchangeId;
   }

   public void
   setExchangeId(String aExchangeId)
   {
       theExchangeId = aExchangeId;
   }

   public String
   getDescription()
   {
       return theDescription;
   }

   public void
   setDescription(String aDescription)
   {
       theDescription = aDescription;
   }

   public String
   getTradingHours()
   {
       return theTradingHours;
   }

   public void
   setTradingHours(String aTradingHours)
   {
       theTradingHours = aTradingHours;
   }

   public String
   getUrl()
   {
       return theUrl;
   }

   public void setUrl(String aUrl)
   {
       theUrl = aUrl;
   }

   public double
   getMultiplier()
   {
       return theMultiplier;
   }

   public void
   setMultiplier(double aMultiplier)
   {
       theMultiplier = aMultiplier;
   }

   public void setDaoActionError(String aResult) {
       theDaoActionErrorState = true;
       theDaoActionError = aResult;
   }

   public boolean isDaoActionErrorState()
   {
       return theDaoActionErrorState;
   }

   public String getDaoActionError()
   {
       return theDaoActionError;
   }

   private long theIdsSymbolId = -1;
   private String theIdsDocoId;
   private String theName = "NEW SYMBOL";
   private String theCategoryName = "";
   private String theCategoryId = "";
   private String theProductTypeName = "";
   private String theProductTypeId = "";
   private String theUnderlyingTypeName = "";
   private String theUnderlyingTypeId = "";
   private String theCurrencyName = "";
   private String theCurrencyId = "";
   private String theExchangeName = "";
   private String theExchangeId = "";
   private String theDescription = "";
   private String theTradingHours = "";
   private String theUrl = "";
   private double theMultiplier = -1;

   private String theDaoActionError ="";
   private boolean theDaoActionErrorState;
}


Igor Vaynberg wrote:
no, it doesnt really help since we cant see the bean that is inside mySymbol.

as far as the example below:
see the use of loadabledetachablemodel below.
also you are specifying the same model for selection and list of choices, that makes no sense. if whatever bean inside mySymbol model has a "categories" property, then see my correction below.

-igor


On 5/18/07, *Florian Hehlen* <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>> 
wrote:


    public class SymbolAddUpdate extends WebPage
    {
        public SymbolAddUpdate(PageParameters aParams)
        {
            addFeedback();
            addPageTitle("Add/Update Symbol");

            CompoundPropertyModel mySymbol = checkNewOrUpdate(aParams,
    aParams.getString("theSymbolId"));

            final Form myForm = new AddUpdateForm("form.symbol",
    mySymbol);
            add(myForm);

            TextField myName = new TextField("name");

            final ChoiceOptions myOptions = new
    LoadableDetachableModel() (
                    load(){ return theDao.findAllCategoriesAsDto()); }}

            final ChoiceRenderer myRenderer = new
    ChoiceRenderer("name", "id");

            final CategoryChoices myCategories = new CategoryChoices();
            DropDownChoice myCat
                = new DropDownChoice("categories",
    myCategories,myRenderer);
                    [...]
}

    I hope this helps.

    thanks,
    florian

    Igor Vaynberg wrote:
    if you show me the exact code snippet that doesnt work that will
    give me the necessary context.

    -igor


    On 5/17/07, *Florian Hehlen* < [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>>
    wrote:

        Hi,

        Thanks for the help... It's starting to make more sense to me
        although still not working. The issue is definitely with the
        form model. because all my sandbox experiments show me that
        it all goes to hell when i introduce the model in the form.
        My form is a a bean wrapped in a CompoundPropertyModel.

        Maybe you can clarify below your explanation in that context.

        florian

        Igor Vaynberg wrote:
        if you type it it looks like this

        DDC<T>(String,IModel<T>,IModel<List<T>>,IChoiceRenderer<T>)

        the first model is the one that holds the selection, the
        second is the one that holds a list of available choices.

        the constructor with a single model:

        DDC<T>(String,IModel<List<T>>,IChoiceRenderer<T>)

        is used when you use DDC in combination with a compound
        property model on the form, in which case the ddc's id is
        used as a property expression into form's model to determine
        the selection. there is a great wiki page on models.

        so try this

         myForm.add(new DropDownChoice("select",new Model(),new
        MyChoices(),myRenderer));

        this will create a ddc with a null selection. its not
        practical, because to get the selection you have to call
        ddc.getmodelobject(), but it will at least get you going
        before you decide on what model to use.


        -igor


        On 5/16/07, *Florian Hehlen* < [EMAIL PROTECTED]
        <mailto:[EMAIL PROTECTED]>> wrote:

            hi,

            I am new to wicket so I am not sure how simple this
            issue is.

            I am creating DropDownChoice components. I want to
            a)  build the the
            Options from a list of Objects (not primitives) and b)
            want to render
            the option id and value as an attribute of the object in
            the list. this
            definitly works in the following sample code:

            public class WicketSandbox extends WebPage
            {
                public WicketSandbox()
                {
                    addPageTitle("Development Sandbox");
                    final Form myForm = new Form("form");
                    add(myForm);

                    final ChoiceRenderer myRenderer = new
            ChoiceRenderer("name", "id");
                    myForm.add(new DropDownChoice("select",new
            MyChoices(),myRenderer));

                }
            }

            But as soon as I add an IModel to the form it seems that the
            DropDownChoice looks up the choices in the form's
            IModel.  I have tried
            to use the other constructors for the DropDownChoice
            which require an
            (String id, IModel model, IModel choices,
            IChoicerenderer renderer) but
            I can't figure out what is the difference between the 2
            IModel objects
            that have to be provided. If I provide twice a ref to
            the same object I
            get a different error:

            The expression 'id' is neither an index nor is it a
            method for the list class java.util.ArrayList

            this is an improvement because it is accessing the right
            object and
            retrieving the list of choices but not extracting the
            the objects from
            the list as it does when I use (String id, IModel choices,
            IChoicerenderer renderer).

            In all cases if I remove the ChoiceRenderer my web page
            builds and
            displays but I see object.toString() values in my
            drop-downs.

            Any tips or pointers would be greatly appreciated.

            Florian Hehlen

            
-------------------------------------------------------------------------
            This SF.net email is sponsored by DB2 Express
            Download DB2 Express C - the FREE version of DB2 express
            and take
            control of your XML. No limits. Just data. Click to get
            it now.
            http://sourceforge.net/powerbar/db2/
            _______________________________________________
            Wicket-user mailing list
            Wicket-user@lists.sourceforge.net
            <mailto:Wicket-user@lists.sourceforge.net>
            https://lists.sourceforge.net/lists/listinfo/wicket-user


        ------------------------------------------------------------------------

        
-------------------------------------------------------------------------
        This SF.net email is sponsored by DB2 Express
        Download DB2 Express C - the FREE version of DB2 express and take
        control of your XML. No limits. Just data. Click to get it now.


        http://sourceforge.net/powerbar/db2/
        ------------------------------------------------------------------------

        _______________________________________________
        Wicket-user mailing list
        Wicket-user@lists.sourceforge.net

         <mailto:Wicket-user@lists.sourceforge.net>
        https://lists.sourceforge.net/lists/listinfo/wicket-user

        
-------------------------------------------------------------------------
        This SF.net email is sponsored by DB2 Express
        Download DB2 Express C - the FREE version of DB2 express and take
        control of your XML. No limits. Just data. Click to get it now.
        http://sourceforge.net/powerbar/db2/
        _______________________________________________
        Wicket-user mailing list
        Wicket-user@lists.sourceforge.net
        <mailto:Wicket-user@lists.sourceforge.net>
        https://lists.sourceforge.net/lists/listinfo/wicket-user


    ------------------------------------------------------------------------

    -------------------------------------------------------------------------
    This SF.net email is sponsored by DB2 Express
    Download DB2 Express C - the FREE version of DB2 express and take
    control of your XML. No limits. Just data. Click to get it now.

    http://sourceforge.net/powerbar/db2/
    ------------------------------------------------------------------------

    _______________________________________________
    Wicket-user mailing list
    Wicket-user@lists.sourceforge.net
     <mailto:Wicket-user@lists.sourceforge.net>
    https://lists.sourceforge.net/lists/listinfo/wicket-user

    -------------------------------------------------------------------------
    This SF.net email is sponsored by DB2 Express
    Download DB2 Express C - the FREE version of DB2 express and take
    control of your XML. No limits. Just data. Click to get it now.
    http://sourceforge.net/powerbar/db2/
    _______________________________________________
    Wicket-user mailing list
    Wicket-user@lists.sourceforge.net
    <mailto:Wicket-user@lists.sourceforge.net>
    https://lists.sourceforge.net/lists/listinfo/wicket-user


------------------------------------------------------------------------

-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
------------------------------------------------------------------------

_______________________________________________
Wicket-user mailing list
Wicket-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wicket-user
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
Wicket-user mailing list
Wicket-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wicket-user

Reply via email to