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 113850 - NPE after attempt to undo file moving from one project to another.
Summary: NPE after attempt to undo file moving from one project to another.
Status: VERIFIED FIXED
Alias: None
Product: xml
Classification: Unclassified
Component: Schema Tools (show other bugs)
Version: 6.x
Hardware: All Windows XP
: P1 blocker (vote)
Assignee: Sonali Kochar
URL:
Keywords:
Depends on:
Blocks: 113370
  Show dependency tree
 
Reported: 2007-08-27 14:36 UTC by Michael Nazarov
Modified: 2007-09-03 17:30 UTC (History)
2 users (show)

See Also:
Issue Type: DEFECT
Exception Reporter:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Michael Nazarov 2007-08-27 14:36:58 UTC
Product Version: NetBeans IDE Dev (Build 200708270201)

1. Create BluePrint1 Sample and BPEL module.
2. Add to Module sample Loan Application Schema.
3. Add to Sample reference to Module.
4. Open purchaseOrder and import reference to newLoanApplication.
5. Drag purchaseOrder from BluePrint1 Sample to BPEL Module / Process Files
6. Use Refactor menu to undo operation.

You'll see followed:

java.lang.NullPointerException: Passed null to FileOwnerQuery.getOwner(FileObject)
	at org.netbeans.api.project.FileOwnerQuery.getOwner(FileOwnerQuery.java:72)
	at org.netbeans.modules.xml.refactoring.spi.SharedUtils.inSameProject(SharedUtils.java:830)
	at 
org.netbeans.modules.xml.refactoring.XMLRefactoringTransaction.updateTargetModelReferences(XMLRefactoringTransaction.java:749)
	at 
org.netbeans.modules.xml.refactoring.XMLRefactoringTransaction.undoRenameFile(XMLRefactoringTransaction.java:539)
	at org.netbeans.modules.xml.refactoring.XMLRefactoringTransaction.access$100(XMLRefactoringTransaction.java:72)
	at 
org.netbeans.modules.xml.refactoring.XMLRefactoringTransaction$GeneralChangeExecutor$FileRenameUndoable.undo(XMLRefactoringTransaction.java:834)
	at javax.swing.undo.UndoManager.undoTo(UndoManager.java:320)
	at javax.swing.undo.UndoManager.undo(UndoManager.java:398)
	at org.netbeans.modules.xml.refactoring.XMLRefactoringTransaction.rollback(XMLRefactoringTransaction.java:138)
	at org.netbeans.modules.refactoring.api.RefactoringSession.undoRefactoring(RefactoringSession.java:132)
	at org.netbeans.modules.refactoring.spi.impl.UndoManager$SessionUndoItem.undo(UndoManager.java:556)
	at org.netbeans.modules.refactoring.spi.impl.UndoManager.undo(UndoManager.java:192)
	at org.netbeans.modules.refactoring.spi.impl.UndoAction.performAction(UndoAction.java:74)
	at org.openide.util.actions.CallableSystemAction$1.run(CallableSystemAction.java:96)
	at org.netbeans.modules.openide.util.ActionsBridge$ActionRunnable.actionPerformed(ActionsBridge.java:89)
	at org.netbeans.core.ModuleActions.invokeAction(ModuleActions.java:82)
	at org.netbeans.modules.openide.actions.ActionsBridgeImpl.invokeAction(ActionsBridgeImpl.java:30)
	at org.netbeans.modules.openide.util.ActionsBridge$ActionRunnable.doRun(ActionsBridge.java:80)
	at org.netbeans.modules.openide.util.ActionsBridge$1.run(ActionsBridge.java:49)
	at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:539)
[catch] at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:964)
Comment 1 Sonali Kochar 2007-08-27 18:55:05 UTC
Tony,

I am trying to reproduce this bug and it seems to be working for me. Can you try and reproduce? Since its a p1, I would
like to give it a thorough testing.
Comment 2 tonybeckham 2007-08-27 19:28:42 UTC
I can reproduce this as described with this configuration:

Product Version: NetBeans IDE Dev (Build 200708270201) 
Java: 1.6.0; Java HotSpot(TM) Client VM 1.6.0-b105 
System: Linux version 2.6.20-16-generic running on i386; UTF-8; en_US (nb)

I was actually seeing this while testing move refactoring but have not nailed down the exact steps so I have not filed
the bug yet.

java.lang.NullPointerException: Passed null to FileOwnerQuery.getOwner(FileObject)
	at org.netbeans.api.project.FileOwnerQuery.getOwner(FileOwnerQuery.java:72)
	at org.netbeans.modules.xml.refactoring.spi.SharedUtils.inSameProject(SharedUtils.java:830)
	at
org.netbeans.modules.xml.refactoring.XMLRefactoringTransaction.updateTargetModelReferences(XMLRefactoringTransaction.java:749)
	at org.netbeans.modules.xml.refactoring.XMLRefactoringTransaction.undoRenameFile(XMLRefactoringTransaction.java:539)
	at org.netbeans.modules.xml.refactoring.XMLRefactoringTransaction.access$100(XMLRefactoringTransaction.java:72)
	at
org.netbeans.modules.xml.refactoring.XMLRefactoringTransaction$GeneralChangeExecutor$FileRenameUndoable.undo(XMLRefactoringTransaction.java:834)
	at javax.swing.undo.UndoManager.undoTo(UndoManager.java:320)
	at javax.swing.undo.UndoManager.undo(UndoManager.java:398)
	at org.netbeans.modules.xml.refactoring.XMLRefactoringTransaction.rollback(XMLRefactoringTransaction.java:138)
	at org.netbeans.modules.refactoring.api.RefactoringSession.undoRefactoring(RefactoringSession.java:132)
	at org.netbeans.modules.refactoring.spi.impl.UndoManager$SessionUndoItem.undo(UndoManager.java:556)
	at org.netbeans.modules.refactoring.spi.impl.UndoManager.undo(UndoManager.java:192)
	at org.netbeans.modules.refactoring.spi.impl.UndoAction.performAction(UndoAction.java:74)
	at org.openide.util.actions.CallableSystemAction$1.run(CallableSystemAction.java:96)
	at org.netbeans.modules.openide.util.ActionsBridge$ActionRunnable.actionPerformed(ActionsBridge.java:89)
	at org.netbeans.core.ModuleActions.invokeAction(ModuleActions.java:82)
	at org.netbeans.modules.openide.actions.ActionsBridgeImpl.invokeAction(ActionsBridgeImpl.java:30)
	at org.netbeans.modules.openide.util.ActionsBridge$ActionRunnable.doRun(ActionsBridge.java:80)
	at org.netbeans.modules.openide.util.ActionsBridge$1.run(ActionsBridge.java:49)
	at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:539)
[catch] at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:964)
Comment 3 Sonali Kochar 2007-08-27 20:25:28 UTC
I am using JDK1.5.0.12 on windows XP and dont see the bug..

Michael, whats ur configuration?
Comment 4 tonybeckham 2007-08-27 22:05:24 UTC
I can reproduce this with both 1.5.0_12 ans 1.6.0_02 on Win XP.  
There are a lot of refactoring bugs happening now, maybe they all have a common cause.
Comment 5 Sonali Kochar 2007-08-28 05:45:06 UTC
Michael,

1) Does BluePrint1 have project dependency on BPEL module?
2) In which project is purchaseOrder.xsd? newLoanApplication.xsd is in BPEL module, right?
3) Can you try and reproduce this bug with Refactor -> Move? or Does it happen only with DnD?

thanks,
Sonali
Comment 6 Michael Nazarov 2007-08-28 11:35:47 UTC
I used JDK 1.6.

I'm not sure we can call it "dependencies". It's "referencies". Yes, reference presents.
purhaseOrder is part pf BluePrint1 sample and newLoanApplication added to BPEL Module.
If Move feature used and correct target specified then move successfull but Undo produces exception. Not NPE BTW:

javax.swing.undo.CannotUndoException
	at org.netbeans.editor.BaseDocumentEvent.undo(BaseDocumentEvent.java:265)
	at org.netbeans.editor.GuardedDocumentEvent.undo(GuardedDocumentEvent.java:47)
	at javax.swing.undo.CompoundEdit.undo(CompoundEdit.java:46)
	at javax.swing.undo.CompoundEdit.undo(CompoundEdit.java:46)
	at org.netbeans.modules.xml.xam.AbstractModel$ModelUndoableEdit.undo(AbstractModel.java:555)
	at javax.swing.undo.UndoManager.undoTo(UndoManager.java:320)
	at javax.swing.undo.UndoManager.undo(UndoManager.java:398)
	at org.netbeans.modules.xml.refactoring.XMLRefactoringTransaction.rollback(XMLRefactoringTransaction.java:144)
	at org.netbeans.modules.refactoring.api.RefactoringSession.undoRefactoring(RefactoringSession.java:132)
	at org.netbeans.modules.refactoring.spi.impl.UndoManager$SessionUndoItem.undo(UndoManager.java:556)
	at org.netbeans.modules.refactoring.spi.impl.UndoManager.undo(UndoManager.java:192)
	at org.netbeans.modules.refactoring.spi.impl.UndoAction.performAction(UndoAction.java:74)
	at org.openide.util.actions.CallableSystemAction$1.run(CallableSystemAction.java:96)
	at org.netbeans.modules.openide.util.ActionsBridge$ActionRunnable.actionPerformed(ActionsBridge.java:89)
	at org.netbeans.core.ModuleActions.invokeAction(ModuleActions.java:82)
	at org.netbeans.modules.openide.actions.ActionsBridgeImpl.invokeAction(ActionsBridgeImpl.java:30)
	at org.netbeans.modules.openide.util.ActionsBridge$ActionRunnable.doRun(ActionsBridge.java:80)
	at org.netbeans.modules.openide.util.ActionsBridge$1.run(ActionsBridge.java:49)
	at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:539)
[catch] at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:964)
Comment 7 Sonali Kochar 2007-08-29 04:18:22 UTC
I updated my code and have been able to reproduce it. Working on it.
Comment 8 Sonali Kochar 2007-08-29 17:59:31 UTC
Fixed the NPE.

There is a separate bug filed for CannotUndoException (undo results in the same stack trace)
http://www.netbeans.org/issues/show_bug.cgi?id=113714

Will fix the CannotUndoException as part of bug 113714
Comment 9 Michael Nazarov 2007-09-03 17:30:03 UTC
Product Version: NetBeans IDE Dev (Build 200709030000)

NPE fixed.