This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 93931 - IllegalArgumentException and NPE if delete an newElement
Summary: IllegalArgumentException and NPE if delete an newElement
Status: VERIFIED FIXED
Alias: None
Product: xml
Classification: Unclassified
Component: Schema Tools (show other bugs)
Version: 5.x
Hardware: All All
: P1 blocker (vote)
Assignee: Samaresh Panda
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-02-02 01:19 UTC by _ hong_lin
Modified: 2007-02-20 13:53 UTC (History)
0 users

See Also:
Issue Type: DEFECT
Exception Reporter:


Attachments
add two newElements (11.62 KB, image/png)
2007-02-02 01:19 UTC, _ hong_lin
Details
delete the 2nd newElement (13.42 KB, image/png)
2007-02-02 01:20 UTC, _ hong_lin
Details
2nd newElement is still displayed in design view. (12.02 KB, image/png)
2007-02-02 01:21 UTC, _ hong_lin
Details

Note You need to log in before you can comment on or make changes to this bug.
Description _ hong_lin 2007-02-02 01:19:09 UTC
Build: Gavotte daily build 070131_27

Steps to reproduce it:

1. Create a new BPEL Module.
2. Add a new XML schema under the BPEL Module.
3. Open the schema file in Editor window. Select Design view.
4. Drag an "Element" in the XML Components section of the Palette to the schema
design area immediately below the "Elements" node. The IDE adds an element node
labeled "newElement".
5. Drag an "Element" in the XML Components section of the Palette to the schema
design area immediately below the "newElement" node. The IDE adds an element
node labeled "newElement" under last "newElement". (See attached newElements.png)
6. Delete the second "newElement", which is under the first "newElement" node.
(See attached delete2ndnewElement.png)
7. The second "newElement" node is still displayed. (See attached deleteResult1.png)
8. Delete the second "newElement" node again. Will get the following exceptions:
java.lang.IllegalArgumentException: Exception during flush: 
	at org.netbeans.modules.xml.axi.impl.ModelAccessImpl.flush(ModelAccessImpl.java:92)
	at
org.netbeans.modules.xml.xam.AbstractModel.endTransaction(AbstractModel.java:296)
	at
org.netbeans.modules.xml.xam.AbstractModel.endTransaction(AbstractModel.java:284)
	at
org.netbeans.modules.xml.schema.abe.nodes.ABEAbstractNode.remove(ABEAbstractNode.java:317)
	at
org.netbeans.modules.xml.schema.abe.nodes.ABEAbstractNode.destroy(ABEAbstractNode.java:342)
	at
org.openide.explorer.ExplorerActionsImpl$DeleteActionPerformer.doDestroy(ExplorerActionsImpl.java:620)
	at
org.openide.explorer.ExplorerActionsImpl$DeleteActionPerformer.performAction(ExplorerActionsImpl.java:570)
	at
org.openide.explorer.ExplorerActionsImpl$DeleteActionPerformer.actionPerformed(ExplorerActionsImpl.java:631)
	at
org.openide.util.actions.CallbackSystemAction.actionPerformed(CallbackSystemAction.java:191)
	at
org.openide.util.actions.CallbackSystemAction$DelegateAction.actionPerformed(CallbackSystemAction.java:582)
	at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1849)
	at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2169)
	at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:420)
	at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:258)
	at javax.swing.AbstractButton.doClick(AbstractButton.java:302)
	at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:1000)
	at
javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:1041)
	at java.awt.Component.processMouseEvent(Component.java:5488)
	at javax.swing.JComponent.processMouseEvent(JComponent.java:3126)
	at java.awt.Component.processEvent(Component.java:5253)
	at java.awt.Container.processEvent(Container.java:1966)
	at java.awt.Component.dispatchEventImpl(Component.java:3955)
	at java.awt.Container.dispatchEventImpl(Container.java:2024)
	at java.awt.Component.dispatchEvent(Component.java:3803)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4212)
	at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3892)
	at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3822)
	at java.awt.Container.dispatchEventImpl(Container.java:2010)
	at java.awt.Window.dispatchEventImpl(Window.java:1778)
	at java.awt.Component.dispatchEvent(Component.java:3803)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
[catch] at
java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
	at
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
Caused by: java.lang.IllegalArgumentException: component is not
	at
org.netbeans.modules.xml.xam.AbstractComponent.removeChild(AbstractComponent.java:337)
	at
org.netbeans.modules.xml.schema.model.impl.SequenceImpl.removeContent(SequenceImpl.java:41)
	at
org.netbeans.modules.xml.axi.impl.SchemaGeneratorUtil.removeLocalElement(SchemaGeneratorUtil.java:905)
	at
org.netbeans.modules.xml.axi.impl.SchemaGeneratorUtil.removeSchemaComponent(SchemaGeneratorUtil.java:867)
	at
org.netbeans.modules.xml.axi.impl.DefaultSchemaGenerator$UpdateHelper.execute(DefaultSchemaGenerator.java:701)
	at
org.netbeans.modules.xml.axi.impl.DefaultSchemaGenerator.updateSchema(DefaultSchemaGenerator.java:108)
	at
org.netbeans.modules.xml.axi.impl.SchemaGeneratorFactoryImpl.updateSchema(SchemaGeneratorFactoryImpl.java:70)
	at org.netbeans.modules.xml.axi.impl.ModelAccessImpl.flush(ModelAccessImpl.java:90)
	... 35 more


or 

java.lang.IllegalArgumentException: Exception during flush: 
	at org.netbeans.modules.xml.axi.impl.ModelAccessImpl.flush(ModelAccessImpl.java:92)
	at
org.netbeans.modules.xml.xam.AbstractModel.endTransaction(AbstractModel.java:296)
	at
org.netbeans.modules.xml.xam.AbstractModel.endTransaction(AbstractModel.java:284)
	at
org.netbeans.modules.xml.schema.abe.StartTagPanel.addElement(StartTagPanel.java:705)
	at
org.netbeans.modules.xml.schema.abe.action.ElementOnElementNewType.create(ElementOnElementNewType.java:60)
	at org.openide.actions.NewAction.performAction(NewAction.java:79)
	at org.openide.actions.NewAction.access$100(NewAction.java:43)
	at
org.openide.actions.NewAction$ActSubMenuModel.performActionAt(NewAction.java:233)
	at org.openide.awt.Actions$ISubActionListener.actionPerformed(Actions.java:1000)
	at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1849)
	at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2169)
	at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:420)
	at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:258)
	at javax.swing.AbstractButton.doClick(AbstractButton.java:302)
	at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:1000)
	at
javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:1041)
	at java.awt.Component.processMouseEvent(Component.java:5488)
	at javax.swing.JComponent.processMouseEvent(JComponent.java:3126)
	at java.awt.Component.processEvent(Component.java:5253)
	at java.awt.Container.processEvent(Container.java:1966)
	at java.awt.Component.dispatchEventImpl(Component.java:3955)
	at java.awt.Container.dispatchEventImpl(Container.java:2024)
	at java.awt.Component.dispatchEvent(Component.java:3803)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4212)
	at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3892)
	at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3822)
	at java.awt.Container.dispatchEventImpl(Container.java:2010)
	at java.awt.Window.dispatchEventImpl(Window.java:1778)
	at java.awt.Component.dispatchEvent(Component.java:3803)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
[catch] at
java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
	at
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
Caused by: java.lang.NullPointerException
	at
org.netbeans.modules.xml.xam.dom.AbstractDocumentComponent.fixupPrefix(AbstractDocumentComponent.java:537)
	at
org.netbeans.modules.xml.xam.dom.AbstractDocumentComponent.appendChildQuietly(AbstractDocumentComponent.java:259)
	at
org.netbeans.modules.xml.xam.dom.AbstractDocumentComponent.appendChildQuietly(AbstractDocumentComponent.java:52)
	at
org.netbeans.modules.xml.xam.AbstractComponent._appendChildQuietly(AbstractComponent.java:89)
	at
org.netbeans.modules.xml.xam.AbstractComponent.addChild(AbstractComponent.java:252)
	at
org.netbeans.modules.xml.xam.AbstractComponent.setChild(AbstractComponent.java:385)
	at
org.netbeans.modules.xml.xam.AbstractComponent.setChildAfter(AbstractComponent.java:363)
	at
org.netbeans.modules.xml.xam.AbstractComponent.setChild(AbstractComponent.java:358)
	at
org.netbeans.modules.xml.schema.model.impl.ElementImpl.setInlineType(ElementImpl.java:96)
	at
org.netbeans.modules.xml.axi.impl.SchemaGeneratorUtil.createLocalComplexType(SchemaGeneratorUtil.java:569)
	at
org.netbeans.modules.xml.axi.impl.DefaultSchemaGenerator$UpdateHelper.getParent(DefaultSchemaGenerator.java:742)
	at
org.netbeans.modules.xml.axi.impl.DefaultSchemaGenerator.getParent(DefaultSchemaGenerator.java:549)
	at
org.netbeans.modules.xml.axi.impl.DefaultSchemaGenerator$UpdateHelper.addSchemaComponent(DefaultSchemaGenerator.java:716)
	at
org.netbeans.modules.xml.axi.impl.DefaultSchemaGenerator$UpdateHelper.execute(DefaultSchemaGenerator.java:699)
	at
org.netbeans.modules.xml.axi.impl.DefaultSchemaGenerator.updateSchema(DefaultSchemaGenerator.java:108)
	at
org.netbeans.modules.xml.axi.impl.SchemaGeneratorFactoryImpl.updateSchema(SchemaGeneratorFactoryImpl.java:70)
	at org.netbeans.modules.xml.axi.impl.ModelAccessImpl.flush(ModelAccessImpl.java:90)
	... 34 more
Comment 1 _ hong_lin 2007-02-02 01:19:46 UTC
Created attachment 37947 [details]
add two newElements
Comment 2 _ hong_lin 2007-02-02 01:20:30 UTC
Created attachment 37948 [details]
delete the 2nd newElement
Comment 3 _ hong_lin 2007-02-02 01:21:20 UTC
Created attachment 37949 [details]
2nd newElement is still displayed in design view.
Comment 4 Samaresh Panda 2007-02-03 00:13:36 UTC
Fix integrated, try next build.
Checking in ABEAbstractNode.java;
/cvs/xml/schema/abe/src/org/netbeans/modules/xml/schema/abe/nodes/ABEAbstractNode.java,v
 <--  ABEAbstractNode.java
new revision: 1.1.2.54.6.2; previous revision: 1.1.2.54.6.1
Comment 5 _ hong_lin 2007-02-07 02:04:13 UTC
Verified the fix is in Gavotte daily build 070205_32
Comment 6 Mikhail Matveev 2007-02-20 13:53:43 UTC
Verified