Menu

#686 NullPointerException after Unit Testing

3: Ugly
open
nobody
5
2008-07-15
2008-07-15
No

I received a NullPointerException after unit testing by going through the following steps:

1) I opened the files Day.java and DayTest.java
2) I hit the "Compile" button
3) I hit the "Test" button
4) I closed both files
5) I opened the gin.pjt project file
6) I hit the "Compile Project" button
7) I hit the "Test Project" button

Result: The unit tests are executed successfully, but the NullPointerException below is displayed.

java.lang.NullPointerException
at javax.swing.plaf.basic.BasicTextUI$RootView.paint(BasicTextUI.java:1339)
at javax.swing.plaf.basic.BasicTextUI.paintSafely(BasicTextUI.java:644)
at apple.laf.AquaTextPaneUI.paintSafely(AquaTextPaneUI.java:76)
at javax.swing.plaf.basic.BasicTextUI.paint(BasicTextUI.java:782)
at javax.swing.plaf.basic.BasicTextUI.update(BasicTextUI.java:761)
at javax.swing.JComponent.paintComponent(JComponent.java:743)
at edu.rice.cs.drjava.ui.DefinitionsPane.paintComponent(DefinitionsPane.java:678)
at javax.swing.JComponent.paint(JComponent.java:1006)
at javax.swing.JComponent.paintChildren(JComponent.java:843)
at javax.swing.JComponent.paint(JComponent.java:1015)
at javax.swing.JViewport.paint(JViewport.java:726)
at javax.swing.JComponent.paintChildren(JComponent.java:843)
at javax.swing.JComponent.paint(JComponent.java:1015)
at javax.swing.JComponent.paintChildren(JComponent.java:843)
at javax.swing.JSplitPane.paintChildren(JSplitPane.java:1021)
at javax.swing.JComponent.paint(JComponent.java:1015)
at javax.swing.JComponent._paintImmediately(JComponent.java:4890)
at javax.swing.JComponent.paintImmediately(JComponent.java:4676)
at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:477)
at javax.swing.SystemEventQueueUtilities$ComponentWorkRequest.run(SystemEventQueueUtilities.java:114)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:461)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:190)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:176)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)

System Properties:
DrJava Version drjava-20080715-r4585
DrJava Build Time 20080715-2027

drjava.debug.port = 63192
java.runtime.name = Java(TM) 2 Runtime Environment, Standard Edition
sun.boot.library.path = /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Libraries
java.vm.version = 1.5.0_13-121
awt.nativeDoubleBuffering = true
gopherProxySet = false
java.vm.vendor = "Apple Computer, Inc."
java.vendor.url = http://apple.com/
path.separator = :
java.vm.name = Java HotSpot(TM) Client VM
file.encoding.pkg = sun.io
sun.java.launcher = SUN_STANDARD
user.country = US
sun.os.patch.level = unknown
java.vm.specification.name = Java Virtual Machine Specification
user.dir = <anonymized user.home>/Desktop
java.runtime.version = 1.5.0_13-b05-241
java.awt.graphicsenv = apple.awt.CGraphicsEnvironment
java.endorsed.dirs = /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Home/lib/endorsed
os.arch = i386
java.io.tmpdir = /tmp
line.separator = "\u000a"
java.vm.specification.vendor = Sun Microsystems Inc.
os.name = Mac OS X
apple.laf.useScreenMenuBar = true
sun.jnu.encoding = MacRoman
java.library.path = .:/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java
java.specification.name = Java Platform API Specification
java.class.version = 49.0
sun.management.compiler = HotSpot Client Compiler
os.version = 10.4.11
user.home = <anonymized user.home>
user.timezone = America/Chicago
java.awt.printerjob = apple.awt.CPrinterJob
file.encoding = MacRoman
java.specification.version = 1.5
java.class.path = <anonymized user.home>/Desktop/drjava-071508.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Classes/.compatibility/14compatibility.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Classes/.compatibility/14compatibility.jar
user.name = <anonymized user.name>
apple.awt.graphics.UseQuartz = true
java.vm.specification.version = 1.0
java.home = /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Home
sun.arch.data.model = 32
user.language = en
java.specification.vendor = Sun Microsystems Inc.
awt.toolkit = apple.awt.CToolkit
java.vm.info = mixed mode
java.version = 1.5.0_13
java.ext.dirs = /Library/Java/Extensions:/System/Library/Java/Extensions:/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Home/lib/ext
sun.boot.class.path = /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Classes/classes.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Classes/ui.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Classes/laf.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Classes/sunrsasign.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Classes/jsse.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Classes/jce.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Classes/charsets.jar
java.vendor = Apple Computer, Inc.
file.separator = /
java.vendor.url.bug = http://developer.apple.com/java/
sun.io.unicode.encoding = UnicodeLittle
sun.cpu.endian = little
java.rmi.server.hostname = 127.0.0.1
mrj.version = 1040.1.5.0_13-241
sun.awt.exception.handler = edu.rice.cs.drjava.ui.DrJavaErrorHandler
sun.cpu.isalist =

#DrJava configuration file
#Tue Jul 15 15:35:48 CDT 2008
font.line.numbers = Monaco-10
lineenum.enabled = true
key.delete.next = shift DELETE
key.delete.previous = shift BACK_SPACE
find.replace.match.case = false
debug.sourcepath = <anonymized user.home>/Applications:<anonymized user.home>/backup
debug.step.exclude = a,b,c
javadoc.1.4.link = file://<anonymized user.home>/Sites/docs/Java/j2sdk-1_4_2-doc/api/
javadoc.1.5.link = file://<anonymized user.home>/Sites/docs/Java/jdk-1_5_0-doc/api
interactions.exit.prompt = false
open.folder.recursive = true
recent.projects = [/Users/Shared/drjava/drjava/../drjava.xml,<anonymized user.home>/Documents/Semester 8 Spring 2008/COMP 312/hw1/solution/hw1sol.xml,/Users/Shared/drjava/drjava/../drjava-revert-to-old-interpreter/drjava-revert.xml,<anonymized user.home>/Documents/Research/OOPBook/TempCalculator/full/full.xml]
window.height = 776
window.width = 1276
window.x = 0
window.y = 22
doc.list.width = 277
last.dir = <anonymized user.home>/Desktop/gin
last.interactions.dir = <anonymized user.home>/Desktop/gin
master.jvm.xmx = 1024
dialog.gotofile.state = 393 300 441 260 0
dialog.completeword.state = 516 300 380 260 0
dialog.completeword.javaapi = true
tabbedpanes.state = 640 400 700 400
find.replace.focus.in.defpane = true
new.version.notification.last = 1215986805559
drjava.survey.notification.last = 1216154049167
drjava.survey.result.last = http://www.drjava.org/submit-usage.php?rev=4585&os.name=Mac%20OS%20X&os.version=10.4.11&java.version=1.5.0_13&java.vendor=Apple%20Computer,%20Inc.

Used memory: about 17.32 megabytes
Free memory: about 1.31 megabytes
Total memory: about 18.65 megabytes
Total memory can expand to: about 1016.12 megabytes

Discussion

  • Mathias Ricken

    Mathias Ricken - 2008-07-15

    Sample Files and Project

     
  • Mathias Ricken

    Mathias Ricken - 2008-07-15

    Logged In: YES
    user_id=1075744
    Originator: YES

    This is a strange one... The only line in OUR code that appears in the stack trace is

    edu.rice.cs.drjava.ui.DefinitionsPane.paintComponent(DefinitionsPane.java:678)

    and all that does is enable anti-aliasing and then

    super.paintComponent(g);

    Could this be a left-over definitions pane that should have been discarded?

     
  • Mathias Ricken

    Mathias Ricken - 2008-07-16

    Logged In: YES
    user_id=1075744
    Originator: YES

    I could not reproduce this on Windows, so it may be a Mac-only issue.

     

Log in to post a comment.