No that not the reason. The reason I need to keep the items each user has
entered. I can be a List or Map but for this case linkedlistmultimap works
best for me. Do you have a better alternative? I would like to how know to
improve this.


Michael Sparer wrote:
> 
> So you're putting an object into your session just because on of its
> public methods returns a not-serializable object?
> 
> 
> TH Lim wrote:
>> 
>> No, linkedlistmultimap  is serializable. only $1 is not. If you look at
>> the snippet the $1 class is created on the fly when
>> linkedlistmultimap.get(...) is invoked.
>> 
>> 
>> Michael Sparer wrote:
>>> 
>>> but if you save the linkedlistmultimap (which isn't serializable,
>>> right?) in the session you'll run into problems as well ... at the
>>> latest in a clustered environment ....
>>> 
>>> 
>>> 
>>> TH Lim wrote:
>>>> 
>>>> No, I didn't save the provider in the session. Just the
>>>> LinkedListMultimap instance. As Martijn has pointed it out with the
>>>> code snippet why $1 is not serializable, the only way is to keep the
>>>> LinkedListMultimap  and not the List.
>>>> 
>>>> Wicket is pretty good. It points to the exact field where the problem
>>>> was.
>>>> 
>>>> Thanks guys. 
>>>> 
>>>> 
>>>> Michael Sparer wrote:
>>>>> 
>>>>> you save the provider to the session? that's kind of an anti-pattern
>>>>> as it gets serialized there anyway (at least in a clustered
>>>>> environment). you should rather boil down to the field that causes the
>>>>> not-serializable exception, wicket tells you exactly which field it is
>>>>> anyway. or provide us some code to help you. but if you inherit from
>>>>> sortabledataprovider or you implement IDataProvider it shouldn't be
>>>>> too difficult to find out which field it is ;-)
>>>>> 
>>>>> regards,
>>>>> Michael
>>>>> 
>>>>> TH Lim wrote:
>>>>>> 
>>>>>> I tried another method. Instead of passing the reference to my
>>>>>> IDataProvider implementation, MyDataProvider, I recode MyDataProvider
>>>>>> to get it from the MySession which extends Wicket Session. I don't
>>>>>> any difference here but it works. I still not sure what caused
>>>>>> MyDataProvider to fail to persist because of the List instance it
>>>>>> contained.  
>>>>>> 
>>>>>> Btw, 
>>>>>> http://google-collections.googlecode.com/svn-history/r5/trunk/src/com/google/common/collect/LinkedListMultimap.java
>>>>>> LinkedListMultimap  uses the inner class Node which is also
>>>>>> Serializable.
>>>>>> 
>>>>>> 
>>>>>> Michael Sparer wrote:
>>>>>>> 
>>>>>>> The Serlializable-check isn't sufficient. you can mark any class
>>>>>>> serializable if you want. what really counts is that all fields of
>>>>>>> the class are serializable, you should have a look at them ...
>>>>>>> 
>>>>>> 
>>>>>> 
>>>>> 
>>>>> 
>>>> 
>>>> 
>>> 
>>> 
>> 
>> 
> 
> 

-- 
View this message in context: 
http://www.nabble.com/Unable-to-serialize-class-com.google.common.collect.LinkedListMultimap%241-tp19027449p19034402.html
Sent from the Wicket - User mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to