Excellent, everyone helping! :)

Here are my two cents[1].

Gilberto

[1] 
http://code.google.com/p/construtor/source/browse/trunk/park-samples/park-jpa/src/main/java/park/web/page/ViewCustomer.java

On Fri, Nov 4, 2011 at 9:46 AM, Ivan Furdi <[email protected]> wrote:
> Hi Andrew,
>
> I'm answering this although I am not a developer , but I'm using click for
> some time now and i find it quite nice.
>
>
> Anyway, LinkDecorator handles all kind of keys (not just integers) - for
> example if you check the ActionLink methods there is getValue() method that
> returns string.
>
> Second, if you want to use link decorator you must use table column names as
> they are.
>
> For example  :
> alpha_key      Column-B     Column-C     ActionLink
> ABC              Info1            Info2             View Detail Link
> DEF              Info11           Info22           View Detail Link
> GHI               Info122         Info222          View Detail Link
>
>
>     AbstractLink[] links = new AbstractLink[] { actionLink };
>     column.setDecorator(new LinkDecorator(table, links, "alpha_key"));
>
> Also you can write your own LinkDecorator (for example, I wrote a
> MyLinkDecorator (Table table, AbstractLink[] links, String[] idProperties)
> which accepts any value of arguments).
>
> Hope that was helpful.
>
> Regards,
> Ivan
>
>
>
> On 4.11.2011 13:25, Andrew Schoener wrote:
>
> All,
>
> I finally sorted out my problem and will post what I found in case it helps
> someone else.  In my click table, which is based on a mysql database table,
> my primary key is alphanumberc, not an "ID".  Therefore, when I was using
> the basic link decorator like this:
>
> actionColumn.setDecorator(new LinkDecorator(table, actionLinks,
> "alpha_key"));
>
> I was not getting the "alpha key" value in my onLinkClick method.
> Therefore, I thought I was doing something wrong and went down a more
> complicated road (looking at the postal code example that I mentioned
> before).
>
> Instead, I added an auto increment ID to my table to prove if that was the
> missing link, and of course it was that simple.  The link decorator simply
> does not appear to handle alpha keys.  Just integers.  (correct me if I am
> wrong)
>
> This is unfortunate for me, though I can overcome it.  It would have been
> better to be able to have the option of an ActionLink.getValueString
>
> Andy
>
>
> On Fri, Nov 4, 2011 at 7:59 AM, Andrew Schoener <[email protected]>
> wrote:
>>
>> Wait... I think I may have found what I am looking for under the
>> LinkDecorator documentation, postal code example:
>>
>>
>> http://click.apache.org/docs/extras-api/org/apache/click/extras/control/LinkDecorator.html
>>
>> Let me give this a try.  Once I get this to work, I will be really happy
>> about click.
>>
>> Andy
>>
>>
>> On Fri, Nov 4, 2011 at 7:52 AM, Andrew Schoener
>> <[email protected]> wrote:
>>>
>>> Bob,
>>>
>>> I am not sure if this is what I need.  And I think I mis-typed my initial
>>> query.  What I need to know is any of the other column's values.
>>>
>>> For example, my table is:
>>>
>>> Column-A      Column-B     Column-C     ActionLink
>>> ABC              Info1            Info2             View Detail Link
>>> DEF              Info11           Info22           View Detail Link
>>> GHI               Info122         Info222          View Detail Link
>>>
>>>
>>> When I click the ActionLink, and my onLinkClick method is trying to build
>>> a child table, I need to know the value in the table under Column-A for the
>>> row that was clicked.  In my example above, I click the bottom table row's
>>> "View Data Link", and in my onLinkClick method I need the value of "GHI".
>>> It''ll be dynamic per the row clicked, not set statically.  If that makes
>>> any sense.
>>>
>>> Andy
>>>
>>> On Fri, Nov 4, 2011 at 12:16 AM, Bob Schellink <[email protected]> wrote:
>>>>
>>>> Hi Andrew,
>>>>
>>>> You can use a decorator on the column and add the column name as a
>>>> parameter to the link. For example:
>>>>
>>>> final ActionLink link = new ActionLink("link");
>>>> Column column = new Column("action");
>>>> column.setDecorator(new Decorator() {
>>>>    public String render(Object object, Context context) {
>>>>        link.setParameter("COLUMN", "XYZ");
>>>>       return link.toString();
>>>>   }
>>>> });
>>>> table.addColumn(column);
>>>>
>>>> Then when the link is clicked, you can retrieve the "COLUMN" parameter
>>>> which contains the name of the link that was clicked.
>>>>
>>>> Hope this helps.
>>>>
>>>> Kind regards
>>>>
>>>> Bob
>>>>
>>>> On 2011/11/04 04:02 AM, Andrew Schoener wrote:
>>>>>
>>>>> Newbie here, taking click for a spin.
>>>>>
>>>>> I have:
>>>>>
>>>>>  * a page extending BorderPage
>>>>>  * I have on the page a Table object
>>>>>  * I am populating the table object with a JDBC helper class that
>>>>> returns a List of the required data
>>>>>  * I am therefore using table.setRowList(list);
>>>>>  * In my table, I also have an ActionLink added as a column.  The
>>>>> ActionLink is called "View
>>>>>    Detail" on the page
>>>>>
>>>>> What I want to do is to click the View Detail link in the page and call
>>>>> a SQL statement to populate
>>>>> a child Table object
>>>>> However, to do so, I need to know one of the column names from the
>>>>> parent table / row to build the
>>>>> dynamic SQL.
>>>>> And while I am at it, none of my parent table columns are called ID.
>>>>>
>>>>> For the life of me, I cannot figure out how to connect the dots so that
>>>>> my ActionLink method (eg
>>>>> "onLinkClick") can look into the columns on the row for which the View
>>>>> Detail link was clicked.
>>>>>
>>>>> Thanks
>>>>> Andy
>>>>>
>>>>
>>>
>>
>
>
>

Reply via email to