(Sending again since the formatting was really bad and I have more to 
add/clarify)



Hi, after quite a while using Tapestry I've got a situation where I need an 
event handler that accepts an unknown amount multiple parameters.



mark(boolean checked, String[] itemIds)

mark(boolean checked, String... itemIds)

mark(boolean checked, List<String> itemIds)



I've tried these and the Last one works after a fashion. Basically the first 
element of the itemIds list is the checked Boolean value in string form. This 
seems like a bug to me, but I've been struggling to get this working so I might 
be being stupid here. What do you all think?



It also seems strange that you can only get back what is essentially an Array 
of Strings as a List (Arrays.ArrayList) which then has to have its array 
extracted and copied into a real ArrayList just so the Boolean can be removed 
using remove().



Also, another couple of weird things. Tapestry doesn't appear to be able to 
distinguish between that method signature and this



mark(boolean checked, String itemId)



which does tie up with the documentation I suppose, but this is  why I was 
trying the String... itemIds way. Anyway I can use two different events to get 
round this.



Creating an action link for the event using createActionLink(EVENT, false, 
checked, itemIds.toArray()); where checked is a Boolean means that the id's are 
not written into the link correctly. No matter what I put before the itemId's, 
String, Object etc the array of Id's is not output correctly.



Thanks,



Andy.



(Hope this makes more sense than the last message)

Reply via email to