You can add custom xml file what will be contains all necessary icons for important items. First, you need add logger for all itemId's how addition to the droplist - NpcDataTable.java. Then you must create parser for xml file with names as icons.xml:
<?xml version="1.0" encoding="UTF-8"?>
<list>
<item id="57" icon="icon.adena"/>
</list>
For all missed icons you need add default return value like "icon.noimage".
And as result, you can uses is as
IconTable.getIcon(item.getItemId());
Profit.
BUT, you can use it as part of Item data. In this case you need add to item properties new variable - _icon with default parser statement "icon.noimage" and add called method getIcon(). So, by default, getIcon() method will be return "icon.noimage". And you need add to XML file with items new property:
<name="icon" val="icon.adena" />
Like L2J style.