<AWT Dev>  Review request for 8189201: [macosx] NotSerializableException during JFrame with MenuBar serialization
semyon.sadetsky at oracle.com
Tue Oct 31 16:05:38 UTC 2017
The updated webrev: http://cr.openjdk.java.net/~ssadetsky/8189201/webrev.02/
On 10/23/2017 01:54 PM, Semyon Sadetsky wrote:
> Actually ScreenMenu is fully removed in uninstallUI() (line 54 of
> AquaMenuBarUI), so there is no need to make its property listener
> Serializable, please, ignore the change in ScreenMenuPropertyListener.
> On 10/23/2017 01:25 PM, Semyon Sadetsky wrote:
>> On 10/23/2017 12:58 PM, Sergey Bylokhov wrote:
>>> On 23/10/2017 12:41, Semyon Sadetsky wrote:
>>>>> The AquaMenuBarBorder class is L&F specific, and it should not be
>>>>> serialized/deserialized. Such information(plus l&f client
>>>>> properties/listeners/etc) should be removed from the component
>>>>> before serialization. And during deserialization the L&F of the
>>>>> target system should be applied.
>>>> That is valid concern. The webrev is updated
>>> The same is applicable to ScreenMenuPropertyListener as well because
>>> it is also L&F specific.
>>> I assume that the changes in AccessibleAWTComponentHandler/etc are
>>> necessary because somecode installs the listeners on the components,
>>> since the bug is not reproduced in Metal I assume that this
>>> listeners are installed by Aqua, in this case these listeners also
>>> should be removed from the component before serialization.
>> ScreenMenu is not a Swing component.
More information about the awt-dev