Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 356996 - NPE on closing the workbench
Summary: NPE on closing the workbench
Status: RESOLVED FIXED
Alias: None
Product: Dali JPA Tools
Classification: WebTools
Component: JPA (show other bugs)
Version: 2.3.2   Edit
Hardware: PC Windows XP
: P3 normal (vote)
Target Milestone: 3.2 M6   Edit
Assignee: Brian Vosburgh CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-09-07 15:13 EDT by Raghunathan Srinivasan CLA
Modified: 2012-05-10 17:26 EDT (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Raghunathan Srinivasan CLA 2011-09-07 15:13:04 EDT
Testing in the adopter product, we saw the following NPE in the log file when closing the workbench

java.lang.NullPointerException
at
org.eclipse.jpt.jpa.db.JptJpaDbPlugin.getConnectionProfileFactory(JptJpaDbPlug
in.java:51)
at
org.eclipse.jpt.jpa.core.internal.GenericJpaPlatform.getConnectionProfileFacto
ry(GenericJpaPlatform.java:185)
at
org.eclipse.jpt.jpa.core.internal.jpa1.GenericJpaDataSource.getConnectionProfi
leFactory(GenericJpaDataSource.java:76)
at
org.eclipse.jpt.jpa.core.internal.jpa1.GenericJpaDataSource.buildConnectionPro
file(GenericJpaDataSource.java:136)
at
org.eclipse.jpt.jpa.core.internal.jpa1.GenericJpaDataSource.<init>(GenericJpaD
ataSource.java:64)
at
org.eclipse.jpt.jpa.core.internal.AbstractJpaFactory.buildJpaDataSource(Abstra
ctJpaFactory.java:179)
at
org.eclipse.jpt.jpa.core.internal.AbstractJpaProject.<init>(AbstractJpaProject
.java:242)
at
org.eclipse.jpt.jpa.eclipselink.core.internal.EclipseLinkJpaProjectImpl.<init>
(EclipseLinkJpaProjectImpl.java:26)
at
org.eclipse.jpt.jpa.eclipselink.core.internal.EclipseLinkJpaFactory.buildJpaPr
oject(EclipseLinkJpaFactory.java:60)
at
org.eclipse.jpt.jpa.eclipselink.core.internal.v2_0.EclipseLink2_0JpaFactory.bu
ildJpaProject(EclipseLink2_0JpaFactory.java:83)
at
org.eclipse.jpt.jpa.eclipselink.core.internal.v2_0.EclipseLink2_0JpaFactory.bu
ildJpaProject(EclipseLink2_0JpaFactory.java:1)
at
org.eclipse.jpt.jpa.core.GenericJpaProjectManager.buildJpaProject(GenericJpaPr
ojectManager.java:398)
at
org.eclipse.jpt.jpa.core.GenericJpaProjectManager.buildJpaProject(GenericJpaPr
ojectManager.java:384)
at
org.eclipse.jpt.jpa.core.GenericJpaProjectManager.buildJpaProject(GenericJpaPr
ojectManager.java:373)
at
org.eclipse.jpt.jpa.core.GenericJpaProjectManager.addJpaProject(GenericJpaProj
ectManager.java:356)
at
org.eclipse.jpt.jpa.core.GenericJpaProjectManager$ResourceProxyVisitor.process
Project(GenericJpaProjectManager.java:734)
at
org.eclipse.jpt.jpa.core.GenericJpaProjectManager$ResourceProxyVisitor.visit(G
enericJpaProjectManager.java:719)
at
org.eclipse.core.internal.resources.Resource$1.visitElement(Resource.java:65)
at
org.eclipse.core.internal.watson.ElementTreeIterator.doIteration(ElementTreeIt
erator.java:82)
at
org.eclipse.core.internal.watson.ElementTreeIterator.iterate(ElementTreeIterat
or.java:120)
at org.eclipse.core.internal.resources.Resource.accept(Resource.java:75)
at
org.eclipse.jpt.jpa.core.GenericJpaProjectManager.buildJpaProjects_(GenericJpa
ProjectManager.java:245)
at
org.eclipse.jpt.jpa.core.GenericJpaProjectManager.buildJpaProjects(GenericJpaP
rojectManager.java:236)
at
org.eclipse.jpt.jpa.core.GenericJpaProjectManager.start_(GenericJpaProjectMana
ger.java:220)
at
org.eclipse.jpt.jpa.core.GenericJpaProjectManager.start(GenericJpaProjectManag
er.java:211)
at
org.eclipse.jpt.jpa.core.JptJpaCorePlugin.getJpaProjectManager_(JptJpaCorePlug
in.java:759)
at
org.eclipse.jpt.jpa.core.JptJpaCorePlugin.getJpaProjectManager(JptJpaCorePlugi
n.java:242)
at
org.eclipse.jpt.jpa.core.JptJpaCorePlugin.getJpaProject(JptJpaCorePlugin.java:
251)
at
oracle.eclipse.tools.adf.appgen.utils.SessionBeanChangeListener$1.visit(Sessio
nBeanChangeListener.java:51)
at
org.eclipse.core.internal.events.ResourceDelta.accept(ResourceDelta.java:69)
at
org.eclipse.core.internal.events.ResourceDelta.accept(ResourceDelta.java:80)
at
org.eclipse.core.internal.events.ResourceDelta.accept(ResourceDelta.java:49)
at
oracle.eclipse.tools.adf.appgen.utils.SessionBeanChangeListener.resourceChange
d(SessionBeanChangeListener.java:97)
at
org.eclipse.core.internal.events.NotificationManager$1.run(NotificationManager
.java:291)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
at
org.eclipse.core.internal.events.NotificationManager.notify(NotificationManage
r.java:285)
at
org.eclipse.core.internal.events.NotificationManager.broadcastChanges(Notifica
tionManager.java:149)
at
org.eclipse.core.internal.resources.Workspace.broadcastPostChange(Workspace.ja
va:395)
at
org.eclipse.core.internal.resources.Workspace.endOperation(Workspace.java:1530
)
at
org.eclipse.core.internal.resources.InternalWorkspaceJob.run(InternalWorkspace
Job.java:45)
Comment 1 Brian Vosburgh CLA 2012-05-10 17:06:58 EDT
This exception occurred because JptJpaCorePlugin.getJpaProject(...) did not check whether the plug-in was still active before it tried to lazily start up the JpaProjectManager. The current code now checks whether the plug-in is still active before lazily-initializing anything; so this bug is fixed.