<Swing Dev> RFR JDK-8245785: javax.swing.JTabbedPane cannot be deserialized

Prasanta Sadhukhan prasanta.sadhukhan at oracle.com
Thu Jul 9 13:26:06 UTC 2020


Hi Sergey,

It seems "pages" object is not instantiated as readObject() did not read 
the object. I have modified the code to read the "pages" object after 
deserialization and now

if JTabbedPane has few tabs/pages, all are deserialized. This is also 
tested in the testcase.

http://cr.openjdk.java.net/~psadhukhan/8245785/webrev.1/

Regards
Prasanta
On 09-Jul-20 3:28 PM, Sergey Bylokhov wrote:
> Hi, Prasanta.
>
> Why the "pages" object is not instantiated when deserialized? What 
> will happen if the JTabbedPane
> will have a few(more than zero) pages before deserialization, will all 
> pages be serialized/deserialized in this case?
>
> On 09.07.2020 01:14, Prasanta Sadhukhan wrote:
>> Hi All,
>>
>> Please review a fix for an issue where deserializing a serialized 
>> JTabbedPane-object results in NullPointerException.
>>
>> The NPE is result of tabbed "pages" object not being instantiated 
>> when deserialized.
>>
>> Proposed fix is to add a null check for "pages" object.
>>
>> Bug: https://bugs.openjdk.java.net/browse/JDK-8245785
>>
>> webrev: http://cr.openjdk.java.net/~psadhukhan/8245785/webrev.0/
>>
>> Regards
>> Prasanta
>
>


More information about the swing-dev mailing list