This week's book giveaway is in the Jython/Python forum.
We're giving away four copies of Murach's Python Programming and have Michael Urban and Joel Murach on-line!
See this thread for details.
Win a copy of Murach's Python Programming this week in the Jython/Python forum!
  • Post Reply Bookmark Topic Watch Topic
  • New Topic

Null Pointer Exception  RSS feed

subodh varshney
Posts: 11
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Dear All,
Please help me I m facing NullPointerException.

In following code i m retreiving some values from a table and storing them in a vector.
In case of response when it get null then loop goes to NullPointerException
so remaining variables(responseflag,url,urlflag,) does't get value so again it next code gives nullpointerexception.

for (int loop = 0; loop < result.size(); loop++) {
String keyword = null; String suffix = null; String username = null;
String password = null; String response =""; String responseflag = null;
String url =""; String urlflag = null;

try {
keyword = result.elementAt(loop).toString();
suffix = result.elementAt(loop + 1).toString();
username = result.elementAt(loop + 2).toString();
password = result.elementAt(loop + 3).toString();
response = result.elementAt(loop + 4).toString();
responseflag = result.elementAt(loop + 5).toString();
url = result.elementAt(loop + 6).toString();
urlflag = result.elementAt(loop + 7).toString();

catch (NullPointerException ex) {
Joanne Neal
Posts: 3742
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
You need to split each line so that you can check if has returned null before calling toString()

Sathya Srinivasan
Ranch Hand
Posts: 379
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
To expand on that, here's the Sherlock Holmes' rule to finding null pointers.

1. Print the stack trace (in your code you don't print anything. NEVER swallow a stack trace).
2. Look at the line where the exception happens.
3. Look at each segment in the code. A segment is essentially an object between dots. For example, in a code like a.someMethod().someOtherMethod(), there are 3 segments.
4. Take all but the last segment into consideration.
5. Eliminate segments that CANNOT be null (see if you have declared them already or if such methods will definitely return a value). Add log statements if needed.

Whatever remains, however confident you are, must be null and hence causing the NPE.
It is sorta covered in the JavaRanch Style Guide.
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!