Velocity Reviews

Velocity Reviews (http://www.velocityreviews.com/forums/index.php)
-   Python (http://www.velocityreviews.com/forums/f43-python.html)
-   -   null pointer exceptions (http://www.velocityreviews.com/forums/t319841-null-pointer-exceptions.html)

Tennessee James Leeuwenburg 07-18-2003 04:32 AM

null pointer exceptions
 
It seems to be the case that there are some null pointer exceptions which
Java can handle, but Jython can't. Which doesn't make sense to me, as with
Jython, it is Java which is doing the work.

Are there any good guides to this?

I have a class which includes adding an ImageIcon. If the required graphic
resource isn't present, there is a NullPointerException. Java doesn't care
- the straight Java program handles it internally and gets on with life.
But when I include it from Python, it explodes.

It may be because the resource is specified using a relative pathname.
When Jython executes, it may be not using the current directory as its'
base for relative paths, but could be using JYTHON_HOME, which could lead
to this behaviour.

Can anyone tell me what Jython uses for its' relative path base?
Can anyone describe how Jython handles exceptions that is different from
Java?

Thanks,
-Tennessee

Erik Max Francis 07-18-2003 05:06 AM

Re: null pointer exceptions
 
Tennessee James Leeuwenburg wrote:

> I have a class which includes adding an ImageIcon. If the required
> graphic
> resource isn't present, there is a NullPointerException. Java doesn't
> care
> - the straight Java program handles it internally and gets on with
> life.
> But when I include it from Python, it explodes.


A java.lang.NullPointerException is just an exception like anything
else. Can't you just catch it?

max@oxygen:~/tmp% cat NullCaster.java
import java.lang.*;

public class NullCaster
{
public static void main(String[] args)
{
Object nullObject = null;
String nullString = (String) nullObject;
nullString.length();
}
}
max@oxygen:~/tmp% javac NullCaster.java
max@oxygen:~/tmp% jython
Jython 2.1 on java1.4.1 (JIT: null)
Type "copyright", "credits" or "license" for more information.
>>> import java.lang
>>> import NullCaster
>>> try:

.... NullCaster.main([])
.... except java.lang.NullPointerException, e:
.... print 'oops:', e
....
oops: java.lang.NullPointerException

--
Erik Max Francis && max@alcyone.com && http://www.alcyone.com/max/
__ San Jose, CA, USA && 37 20 N 121 53 W && &tSftDotIotE
/ \ Wretches hang that jurymen may dine.
\__/ Alexander Pope


All times are GMT. The time now is 08:56 AM.

Powered by vBulletin®. Copyright ©2000 - 2014, vBulletin Solutions, Inc.
SEO by vBSEO ©2010, Crawlability, Inc.