Name: rmT116609 Date: 07/13/2004
FULL PRODUCT VERSION :
jdbc_rowset_tiger1.0fd-ri
java version "1.5.0-beta2"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0-beta2-b51)
Java HotSpot(TM) Client VM (build 1.5.0-beta2-b51, mixed mode, sharing)
ADDITIONAL OS VERSION INFORMATION :
Microsoft Windows XP [Version 5.1.2600]
A DESCRIPTION OF THE PROBLEM :
When trying to use a CachedRowsetImpl in an eclipse plugin, a null pointer exception is thrown on construction. From reading postings on the developer forums, the root of the exception is the attempt to load a rowset.properties resource from a classloader. It also appears that the implementation has been changed across various releases.
The eclipse platform sometimes runs processes in different threads with different classloaders to increase performance. I suspect the thread running the constructor doesn't have the rowset implementation in it's classpath.
STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
Create a CachedRowsetmpl object as part of a Popup Action in a job run by Eclipse 3.0's internal worker.
EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
I'd expect to recieve an initialized CachedRowsetImpl.
ACTUAL -
A null pointer exception is generated by the zero argument CachedRowsetImpl constructor.
ERROR MESSAGES/STACK TRACES THAT OCCUR :
java.lang.NullPointerException
at java.io.Reader.<init>(Reader.java:61)
at java.io.InputStreamReader.<init>(InputStreamReader.java:80)
at java.util.Properties.load(Properties.java:266)
at javax.sql.rowset.spi.SyncFactory.initMapIfNecessary(SyncFactory.java:397)
at javax.sql.rowset.spi.SyncFactory.getInstance(SyncFactory.java:580)
at com.sun.rowset.CachedRowSetImpl.<init>(CachedRowSetImpl.java:330)
at org.msilva.isms.editors.TableEditorInput.load(TableEditorInput.java:56)
at org.msilva.isms.editors.TableEditorInput.run(TableEditorInput.java:119)
at org.msilva.isms.popup.actions.EditTableAction$OpenTableEditorJob.run(EditTableAction.java:87)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:66)
REPRODUCIBILITY :
This bug can be reproduced always.
---------- BEGIN SOURCE ----------
rowset = new CachedRowSetImpl();
---------- END SOURCE ----------
(Incident Review ID: 285595)
======================================================================
###@###.### 2004-11-16 08:16:23 GMT
FULL PRODUCT VERSION :
jdbc_rowset_tiger1.0fd-ri
java version "1.5.0-beta2"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0-beta2-b51)
Java HotSpot(TM) Client VM (build 1.5.0-beta2-b51, mixed mode, sharing)
ADDITIONAL OS VERSION INFORMATION :
Microsoft Windows XP [Version 5.1.2600]
A DESCRIPTION OF THE PROBLEM :
When trying to use a CachedRowsetImpl in an eclipse plugin, a null pointer exception is thrown on construction. From reading postings on the developer forums, the root of the exception is the attempt to load a rowset.properties resource from a classloader. It also appears that the implementation has been changed across various releases.
The eclipse platform sometimes runs processes in different threads with different classloaders to increase performance. I suspect the thread running the constructor doesn't have the rowset implementation in it's classpath.
STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
Create a CachedRowsetmpl object as part of a Popup Action in a job run by Eclipse 3.0's internal worker.
EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
I'd expect to recieve an initialized CachedRowsetImpl.
ACTUAL -
A null pointer exception is generated by the zero argument CachedRowsetImpl constructor.
ERROR MESSAGES/STACK TRACES THAT OCCUR :
java.lang.NullPointerException
at java.io.Reader.<init>(Reader.java:61)
at java.io.InputStreamReader.<init>(InputStreamReader.java:80)
at java.util.Properties.load(Properties.java:266)
at javax.sql.rowset.spi.SyncFactory.initMapIfNecessary(SyncFactory.java:397)
at javax.sql.rowset.spi.SyncFactory.getInstance(SyncFactory.java:580)
at com.sun.rowset.CachedRowSetImpl.<init>(CachedRowSetImpl.java:330)
at org.msilva.isms.editors.TableEditorInput.load(TableEditorInput.java:56)
at org.msilva.isms.editors.TableEditorInput.run(TableEditorInput.java:119)
at org.msilva.isms.popup.actions.EditTableAction$OpenTableEditorJob.run(EditTableAction.java:87)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:66)
REPRODUCIBILITY :
This bug can be reproduced always.
---------- BEGIN SOURCE ----------
rowset = new CachedRowSetImpl();
---------- END SOURCE ----------
(Incident Review ID: 285595)
======================================================================
###@###.### 2004-11-16 08:16:23 GMT