This Bugzilla instance is deprecated, and most Eclipse projects now use GitHub or Eclipse GitLab. Please see the deprecation plan for details.
Bug 174706 - ejb facet install delegate for version 3.0 tries to access ear descriptor generating emf EList$BasicIndexOutOfBoundsException
Summary: ejb facet install delegate for version 3.0 tries to access ear descriptor gen...
Status: CLOSED FIXED
Alias: None
Product: WTP Java EE Tools
Classification: WebTools
Component: jst.j2ee (show other bugs)
Version: 2.0   Edit
Hardware: PC Windows XP
: P3 normal (vote)
Target Milestone: 2.0   Edit
Assignee: Raj Mandayam CLA
QA Contact: Chuck Bridgham CLA
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-02-19 17:20 EST by Raj Mandayam CLA
Modified: 2008-04-23 04:22 EDT (History)
1 user (show)

See Also:


Attachments
fixes the exception by not calling ear edit model for the project version (31.28 KB, patch)
2007-02-19 18:08 EST, Raj Mandayam CLA
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Raj Mandayam CLA 2007-02-19 17:20:12 EST
Build ID: WTP I20070206

Steps To Reproduce:
1. Create an ejb project with an ear project, specifying
facet version 3.0
2. get errors in console
*** ERROR ***: Mon Feb 19 17:15:18 EST 2007    org.eclipse.emf.common.util.Basic
EList$BasicIndexOutOfBoundsException: index=0, size=0
        at org.eclipse.emf.common.util.BasicEList.get(BasicEList.java:535)
        at org.eclipse.jst.j2ee.componentcore.EnterpriseArtifactEdit.getDeployme
ntDescriptorRoot(EnterpriseArtifactEdit.java:154)
        at org.eclipse.jst.j2ee.componentcore.util.EARArtifactEdit.getApplicatio
n(EARArtifactEdit.java:291)
        at org.eclipse.jst.j2ee.application.internal.operations.AddComponentToEn
terpriseApplicationOp.updateEARDD(AddComponentToEnterpriseApplicationOp.java:107
)
        at org.eclipse.jst.j2ee.application.internal.operations.AddComponentToEn
terpriseApplicationOp.execute(AddComponentToEnterpriseApplicationOp.java:68)
        at org.eclipse.wst.common.frameworks.internal.datamodel.DataModelPausibl
eOperationImpl$1.run(DataModelPausibleOperationImpl.java:376)
        at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:1743
)
        at org.eclipse.wst.common.frameworks.internal.datamodel.DataModelPausibl
eOperationImpl.runOperation(DataModelPausibleOperationImpl.java:401)
        at org.eclipse.wst.common.frameworks.internal.datamodel.DataModelPausibl
eOperationImpl.runOperation(DataModelPausibleOperationImpl.java:352)
        at org.eclipse.wst.common.frameworks.internal.datamodel.DataModelPausibl
eOperationImpl.doExecute(DataModelPausibleOperationImpl.java:242)
        at org.eclipse.wst.common.frameworks.internal.datamodel.DataModelPausibl
eOperationImpl.executeImpl(DataModelPausibleOperationImpl.java:214)
        at org.eclipse.wst.common.frameworks.internal.datamodel.DataModelPausibl
eOperationImpl.cacheThreadAndContinue(DataModelPausibleOperationImpl.java:89)
        at org.eclipse.wst.common.frameworks.internal.datamodel.DataModelPausibl
eOperationImpl.execute(DataModelPausibleOperationImpl.java:202)
        at org.eclipse.jst.j2ee.project.facet.J2EEFacetInstallDelegate.addToEar(
J2EEFacetInstallDelegate.java:121)
        at org.eclipse.jst.j2ee.project.facet.J2EEFacetInstallDelegate.installAn
dAddModuletoEAR(J2EEFacetInstallDelegate.java:142)
        at org.eclipse.jst.jee.ejb.project.facet.EjbFacetPostInstallDelegate.exe
cute(EjbFacetPostInstallDelegate.java:81)
        at org.eclipse.wst.common.project.facet.core.internal.FacetedProject.cal
lDelegate(FacetedProject.java:1416)
        at org.eclipse.wst.common.project.facet.core.internal.FacetedProject.cal
lEventHandlers(FacetedProject.java:1364)
        at org.eclipse.wst.common.project.facet.core.internal.FacetedProject.mod
ifyInternal(FacetedProject.java:413)
        at org.eclipse.wst.common.project.facet.core.internal.FacetedProject.acc
ess$2(FacetedProject.java:269)
        at org.eclipse.wst.common.project.facet.core.internal.FacetedProject$1.r
un(FacetedProject.java:254)
        at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:1743
)
        at org.eclipse.wst.common.project.facet.core.internal.FacetedProject.mod
ify(FacetedProject.java:264)
        at org.eclipse.wst.common.project.facet.ui.ModifyFacetedProjectWizard.pe
rformFinish(ModifyFacetedProjectWizard.java:336)
        at org.eclipse.wst.web.ui.internal.wizards.NewProjectDataModelFacetWizar
d.performFinish(NewProjectDataModelFacetWizard.java:288)
        at org.eclipse.wst.common.project.facet.ui.ModifyFacetedProjectWizard$2.
run(ModifyFacetedProjectWizard.java:260)
        at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:1743
)
        at org.eclipse.wst.common.project.facet.ui.ModifyFacetedProjectWizard$3.
run(ModifyFacetedProjectWizard.java:274)
        at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(Modal
Context.java:113)


More information:
Comment 1 Raj Mandayam CLA 2007-02-19 18:08:15 EST
Created attachment 59329 [details]
fixes the exception by not calling ear edit model for the project version

Fixed by making the install delegate class (for the new version projects) extend a new delegate class called JEEFacetInstallDelegate, which does not access the deployment descriptor.

Fix affected install delegates for ejb 3.0, web 2.5, appclient 5.0 versions.

see patch for more details.
Comment 2 Raj Mandayam CLA 2007-04-10 14:42:18 EDT
Fixed 02/20
Comment 3 Raj Mandayam CLA 2007-04-10 14:42:28 EDT
closed