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 70963 - Module layer without xml declaration eventually gets contents deleted.
Summary: Module layer without xml declaration eventually gets contents deleted.
Status: VERIFIED DUPLICATE of bug 68982
Alias: None
Product: apisupport
Classification: Unclassified
Component: Project (show other bugs)
Version: 5.x
Hardware: All All
: P3 blocker (vote)
Assignee: Jesse Glick
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2006-01-03 23:32 UTC by ischneid
Modified: 2007-05-03 14:27 UTC (History)
0 users

See Also:
Issue Type: DEFECT
Exception Reporter:


Attachments
Java.lang.NullPointerException (255.20 KB, application/pdf)
2007-05-03 14:27 UTC, monaalyas
Details

Note You need to log in before you can comment on or make changes to this bug.
Description ischneid 2006-01-03 23:32:25 UTC
Steps to reproduce:
Create a module with a layer which is missing the xml declaration (perhaps more
specifically, the document encoding, and it will eventually get deleted.
One way to trigger this is using the Important Files/XML Layer/<this layer in
context> method of modifying the layer file - thought I also triggered it using
the Update Center??

Desired outcome:
Tell the user he/she is a knucklehead and/or assume UTF-8, but do not delete my
layer...

Workaround:
use correct xml ;)

Heres a relevant stack trace:
org.netbeans.tax.TreeException: org.xml.sax.SAXParseException: Premature end of
file.
  at org.netbeans.tax.io.XNIBuilder.buildDocument(XNIBuilder.java:180)
  at
org.netbeans.modules.xml.tax.parser.XMLParsingSupport.parse(XMLParsingSupport.java:40)
  at
org.netbeans.modules.apisupport.project.layers.LayerUtils$CookieImpl.openDocumentRoot(LayerUtils.java:287)
[catch] at
org.netbeans.modules.apisupport.project.layers.WritableXMLFileSystem.propertyChange(WritableXMLFileSystem.java:1415)
  at
org.openide.util.WeakListenerImpl$PropertyChange.propertyChange(WeakListenerImpl.java:145)
  at
java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:338)
  at
java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:275)
  at
org.netbeans.modules.apisupport.project.layers.LayerUtils$CookieImpl.changed(LayerUtils.java:383)
  at
org.netbeans.modules.apisupport.project.layers.LayerUtils$CookieImpl.fileChanged(LayerUtils.java:358)
  at sun.reflect.GeneratedMethodAccessor34.invoke(Unknown Source)
  at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  at java.lang.reflect.Method.invoke(Method.java:589)
  at
org.openide.util.WeakListenerImpl$ProxyListener.invoke(WeakListenerImpl.java:410)
  at $Proxy1.fileChanged(Unknown Source)
  at org.openide.filesystems.FCLSupport.dispatchEvent(FCLSupport.java:82)
  at org.openide.filesystems.FileObject$ED.dispatch(FileObject.java:811)
  at org.openide.filesystems.FileSystem$EventDispatcher.run(FileSystem.java:855)
  at org.openide.filesystems.EventControl.dispatchEvent(EventControl.java:53)
  at org.openide.filesystems.FileSystem.dispatchEvent(FileSystem.java:485)
  at org.openide.filesystems.FileObject.dispatchEvent(FileObject.java:441)
  at org.openide.filesystems.FileObject.fireFileChangedEvent(FileObject.java:409)
  at
org.netbeans.modules.masterfs.MasterFileObject.access$800(MasterFileObject.java:38)
  at
org.netbeans.modules.masterfs.MasterFileObject$FileChangeListenerImpl.fileChanged(MasterFileObject.java:913)
  at sun.reflect.GeneratedMethodAccessor34.invoke(Unknown Source)
  at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  at java.lang.reflect.Method.invoke(Method.java:589)
  at
org.openide.util.WeakListenerImpl$ProxyListener.invoke(WeakListenerImpl.java:410)
                                                               at
$Proxy1.fileChanged(Unknown Source)
  at org.openide.filesystems.FCLSupport.dispatchEvent(FCLSupport.java:82)      
                                                                      at
org.openide.filesystems.FileObject$ED.dispatch(FileObject.java:811)
  at
org.openide.filesystems.EventControl.invokeDispatchers(EventControl.java:179)  
                                                                 at
org.openide.filesystems.EventControl.exitAtomicAction(EventControl.java:153)
  at org.openide.filesystems.EventControl.runAtomicAction(EventControl.java:98)
                                                                      at
org.openide.filesystems.FileSystem.runAtomicAction(FileSystem.java:450)
  at
org.netbeans.modules.settings.convertors.SerialDataConvertor$SaveSupport.writeDown(SerialDataConvertor.java:779)
                                at
org.netbeans.modules.settings.convertors.SerialDataConvertor$SaveSupport.access$200(SerialDataConvertor.java:454)
  at
org.netbeans.modules.settings.convertors.SerialDataConvertor.run(SerialDataConvertor.java:284)
                                                  at
org.netbeans.modules.settings.ScheduledRequest.performRequest(ScheduledRequest.java:168)
  at
org.netbeans.modules.settings.ScheduledRequest.run(ScheduledRequest.java:142)  
                                                                 at
org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:471)
  at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:904)
                                                                    Caused by:
org.xml.sax.SAXParseException: Premature end of file.
  at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)         
                                                                      at
org.netbeans.tax.io.XNIBuilder$XMLBuilder.parse(XNIBuilder.java:328)
  at org.netbeans.tax.io.XNIBuilder.buildDocument(XNIBuilder.java:154)         
                                                                      ... 40 more
*********** Exception occurred ************ at 4:11 PM on Jan 3, 2006          
                                                                   
java.lang.NullPointerException: charsetName
  at java.io.OutputStreamWriter.<init>(OutputStreamWriter.java:81)             
                                                                      at
org.netbeans.tax.io.TreeStreamResult$TreeStreamWriter.writeDocument(TreeStreamResult.java:260)
  at
org.netbeans.modules.apisupport.project.layers.LayerUtils$CookieImpl.save(LayerUtils.java:341)
                                                  at
org.netbeans.modules.apisupport.project.layers.LayerUtils$LayerHandle.save(LayerUtils.java:466)
  at
org.netbeans.modules.apisupport.project.layers.LayerUtils$2.propertyChange(LayerUtils.java:447)
                                                 at
java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:338)
  at
java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:275)
                                                             at
java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:317)
  at
org.netbeans.modules.apisupport.project.layers.LayerUtils$CookieImpl.modified(LayerUtils.java:322)
  at
org.netbeans.modules.apisupport.project.layers.LayerUtils$CookieImpl.access$000(LayerUtils.java:257)
  at
org.netbeans.modules.apisupport.project.layers.LayerUtils$1.propertyChange(LayerUtils.java:303)
                                                 at
java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:338)
  at
org.netbeans.tax.event.TreeEventChangeSupport.firePropertyChangeNow(TreeEventChangeSupport.java:168)
  at
org.netbeans.tax.event.TreeEventManager.firePropertyChange(TreeEventManager.java:114)
  at
org.netbeans.tax.event.TreeEventChangeSupport.firePropertyChange(TreeEventChangeSupport.java:162)
  at org.netbeans.tax.TreeObject.bubblePropertyChange(TreeObject.java:364)
  at org.netbeans.tax.TreeObject.firePropertyChange(TreeObject.java:298)
  at org.netbeans.tax.TreeObject.firePropertyChange(TreeObject.java:339)
  at org.netbeans.tax.TreeChild.setParentNode(TreeChild.java:113)
  at
org.netbeans.tax.TreeParentNode$ChildListContentManager.objectInserted(TreeParentNode.java:331)
  at
org.netbeans.tax.TreeObjectList.contentManagerObjectInserted(TreeObjectList.java:769)
  at org.netbeans.tax.TreeObjectList.add(TreeObjectList.java:637)
  at org.netbeans.tax.TreeParentNode.appendChild(TreeParentNode.java:204)
  at
org.netbeans.modules.apisupport.project.layers.WritableXMLFileSystem.appendWithIndent(WritableXMLFileSystem.java:1084)
  at
org.netbeans.modules.apisupport.project.layers.WritableXMLFileSystem.createFileOrFolder(WritableXMLFileSystem.java:412)
  at
org.netbeans.modules.apisupport.project.layers.WritableXMLFileSystem.createData(WritableXMLFileSystem.java:425)
  at
org.openide.filesystems.AbstractFileObject.createData(AbstractFileObject.java:425)
  at org.openide.filesystems.FileUtil.copyFileImpl(FileUtil.java:128)
  at org.openide.filesystems.FileObject.copy(FileObject.java:91)
  at org.openide.filesystems.AbstractFileObject.copy(AbstractFileObject.java:595)
  at org.openide.filesystems.MultiFileObject.writable(MultiFileObject.java:281)
  at
org.openide.filesystems.MultiFileObject.getOutputStream(MultiFileObject.java:536)
  at
org.openide.filesystems.MultiFileObject.getOutputStream(MultiFileObject.java:540)
  at
org.netbeans.modules.settings.convertors.SerialDataConvertor$SaveSupport.try2run(SerialDataConvertor.java:737)
  at
org.netbeans.modules.settings.convertors.SerialDataConvertor$SaveSupport.run(SerialDataConvertor.java:715)
  at org.openide.filesystems.EventControl.runAtomicAction(EventControl.java:96)
  at org.openide.filesystems.FileSystem.runAtomicAction(FileSystem.java:450)
  at
org.netbeans.modules.settings.convertors.SerialDataConvertor$SaveSupport.writeDown(SerialDataConvertor.java:779)
  at
org.netbeans.modules.settings.convertors.SerialDataConvertor$SaveSupport.access$200(SerialDataConvertor.java:454)
  at
org.netbeans.modules.settings.convertors.SerialDataConvertor.run(SerialDataConvertor.java:284)
  at
org.netbeans.modules.settings.ScheduledRequest.performRequest(ScheduledRequest.java:168)
  at org.netbeans.modules.settings.ScheduledRequest.run(ScheduledRequest.java:142)
  at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:471)
[catch] at
org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:904)
Comment 1 Jesse Glick 2006-01-04 18:35:51 UTC

*** This issue has been marked as a duplicate of 68982 ***
Comment 2 Tomas Danek 2006-01-06 14:15:16 UTC
you are using probably old build, this should be fixed now in 5.0. Verified
duplicate.
Comment 3 monaalyas 2007-05-03 14:27:20 UTC
Created attachment 42103 [details]
Java.lang.NullPointerException