<Swing Dev> Request for review: NPE when using Nimbus with a TableCellRenderer returning null.
Miguel Muñoz
SwingGuy1024 at yahoo.com
Thu Apr 18 05:37:01 UTC 2013
JTable.prepareRenderer() should never return null. There's nothing in the API to suggest that null is a valid return value. I have found (and reported) at least one bug in Nimbus where it returns a null renderer when the column class is Icon. I think that's fixed, but I wouldn't be surprised if there are others.
— Miguel Muñoz
On Apr 16, 2013, at 7:55 AM, Alexander Scherbatiy wrote:
> On 4/13/2013 2:19 PM, Clemens Eisserer wrote:
>> Hi,
>>
>> When testing a legacy application which was using Metal LnF previously
>> with Nimbus I ran into the following problem:
>>
>> Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
>> at javax.swing.plaf.synth.SynthTableUI.paintCell(SynthTableUI.java:685)
>> at javax.swing.plaf.synth.SynthTableUI.paintCells(SynthTableUI.java:581)
>> ......
>>
>> the code in question is:
>>
>> TableCellRenderer renderer = table.getCellRenderer(row, column);
>> Component component = table.prepareRenderer(renderer, row, column);
>> Color b = component.getBackground();
>
> Could you check that returning the null component is the correct behavior in this case?
> So there is no the real bug that does not allow to return the right component.
>
>>
>> I've written a patch to simply check for "component" to be non-null:
>> http://cr.openjdk.java.net/~ceisserer/nimbusnpe/
>> Unfortunately I don't have a bug number, as the old bug-submission
> There are 2 issues with the NPE in paintCell chain call in JTable:
> 6582564 JTable with rowHeader and sorting given NPE when inserting a new row
> http://bugs.sun.com/view_bug.do?bug_id=6582564
> 6429812 NPE after calling JTable.updateUI() when using a header renderer + XP L&F
> http://bugs.sun.com/view_bug.do?bug_id=6429812
>
> This issue is different so I can create the new one.
>
> Thanks,
> Alexandr.
>
>> system seems to be dead.
>>
>> Please let me know what you think.
>>
>> Regards, Clemens
>
-------------------------------------------
Miguel Muñoz
SwingGuy1024 at yahoo.com
323/225-7285
-------------------------------------------
The Sun, with all those planets revolving around it and dependent on it, can still ripen a vine of grapes like it had nothing else to do in the world.
-- Galileo
-------------------------------------------
There are seven sins in the world.
Wealth without work.
Pleasure without conscience.
Knowledge without character.
Commerce without morality.
Science without humanity.
Worship without sacrifice.
Politics without principle.
-- Mohandas Gandhi
-------------------------------------------
If tyranny and oppression come to this land, it will come in the guise of fighting a foreign enemy.
-- James Madison
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openjdk.java.net/pipermail/swing-dev/attachments/20130417/4a87d6d3/attachment.html>
More information about the swing-dev
mailing list