aspose file tools
The moose likes Beginning Java and the fly likes !Help! Error: Exception in thread Big Moose Saloon
  Search | Java FAQ | Recent Topics
Register / Login
JavaRanch » Java Forums » Java » Beginning Java
Reply Bookmark "!Help! Error: Exception in thread "main" java.lang.ClassCastException" Watch "!Help! Error: Exception in thread "main" java.lang.ClassCastException" New topic
Author

!Help! Error: Exception in thread "main" java.lang.ClassCastException

Alex Hays
Greenhorn

Joined: Sep 20, 2005
Posts: 5
All of the classes in my program but when I try and run it the console spits out:



The first thing works (Travelers, Boris Badenov 972-555-3003) and then it dies, and I cant for the life of me figure out why. Ive been altering stuff for hours .

Any help would be greatly appreciated <3333

Here is a link to code: http://alexhays.com/java
Julien Grenier
Ranch Hand

Joined: Sep 01, 2005
Posts: 41
Look at the line 41 of the Traveler.java file (hint from the line : Traveler.compareTo(Traveler.java:41))

The look what it does. Probably a cast since it's a ClassCastException.
You are casting the wrong thing. (something like (Traveler)obj maybe?). So to know what you are supposed to cast try the obj.getClass().getName() and print this.
so :
compareTo takes a Object obj in parameter
so just before casting it into a Traveler
print obj.getClass().getName()

hope it's clear

Julien
Layne Lund
Ranch Hand

Joined: Dec 06, 2001
Posts: 3061
As Julien points out, the error message tells you exactly WHERE the error occurs: line 41 in a file named Traveler.java in the method named compareTo(). If you post the code for this method, we will be glad to help you figure out WHY the error occurs. Be sure you indicate where line 41 is when you post your code.

Layne


Java API Documentation
The Java Tutorial
Alex Hays
Greenhorn

Joined: Sep 20, 2005
Posts: 5
Originally posted by Layne Lund:
As Julien points out, the error message tells you exactly WHERE the error occurs: line 41 in a file named Traveler.java in the method named compareTo(). If you post the code for this method, we will be glad to help you figure out WHY the error occurs. Be sure you indicate where line 41 is when you post your code.

Layne


here is the code for the Traveler.java method:

htttp://www.alexhays.com/java - all the files are here

I have to run right now, but I will be back at 8 and try some stuff out!!

Thanks a lot guys, I would never have thought to try the above stuff mentioned.
Alex Hays
Greenhorn

Joined: Sep 20, 2005
Posts: 5
Originally posted by Julien Grenier:
Look at the line 41 of the Traveler.java file (hint from the line : Traveler.compareTo(Traveler.java:41))

The look what it does. Probably a cast since it's a ClassCastException.
You are casting the wrong thing. (something like (Traveler)obj maybe?). So to know what you are supposed to cast try the obj.getClass().getName() and print this.
so :
compareTo takes a Object obj in parameter
so just before casting it into a Traveler
print obj.getClass().getName()

hope it's clear

Julien


This was what the console put out after adding that in the loop, just before everything:


://
Layne Lund
Ranch Hand

Joined: Dec 06, 2001
Posts: 3061
As you noted, line 41 is

From your error message, it looks like you are trying to cast a String object to a Traveler object. In other words, on this line, o is really a String and you are trying to force it to be a Traveler, which is obviously incorrect. So where is this String coming from? To figure that out, you need to work backwards through the stack trace. That means the next place to look is given by

What is on line 69 of Reservation.java? Does this line give any clue to where the String comes from? If not, look at the next line in the stack trace.

You may also find it helpful to add System.out.println() calls to print out values of the variables that might cause this problem.

Let us know what you find out. If I have some time later tonight, I'll check out the URL that you gave for all of your code.

Layne
Alex Hays
Greenhorn

Joined: Sep 20, 2005
Posts: 5
Whoaaa, on line 69 of travelers I was (for some reason) comparing traveler to .getReservationType, instead of .getTraveler ~

Thanks alot for the help and the advice to go down the stack to previous stuff as the answer lay there ~ thanks <333333333333333


Now my only problem is, the stuff isnt showing up at all, and the cost is messed up. Here is the output:



http://alexhays.com/java - updated

[ September 20, 2005: Message edited by: Alex Hays ]
[ September 20, 2005: Message edited by: Alex Hays ]
Layne Lund
Ranch Hand

Joined: Dec 06, 2001
Posts: 3061
Now my only problem is, the stuff isnt showing up at all, and the cost is messed up.


What "stuff" isn't showing? You need to be more specific for us to be able to help you.

As for the cost, how is this value obtained? Is it calculated somewhere? Can you post the code that does this? We can try to help you from there.

Layne
Alex Hays
Greenhorn

Joined: Sep 20, 2005
Posts: 5
Originally posted by Layne Lund:


What "stuff" isn't showing? You need to be more specific for us to be able to help you.

As for the cost, how is this value obtained? Is it calculated somewhere? Can you post the code that does this? We can try to help you from there.

Layne


Ahh, I pretty much figured it all out. I forgot to do the calculations, so I put them in and now it shows the actual cost, and the 'stuff' was the things like Arrival city, because I had super.toString and there wasnt a toString, I had to print out each method, like thus: + "Traveler:" + getTraveler() + "\n"
+ "Departure City" + getDepartureCity() + "\n"
+ "Arrival City" + getArrivalCity() + "\n"
+ "Travel Date" + getTravelDate() + "\n"
+ "Number of Days" + getNumDays() + "\n\n\n";


I have pretty much got this thing solved!!

Thanks for all your help guy +++++++
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: !Help! Error: Exception in thread "main" java.lang.ClassCastException
 
Similar Threads
Wny I cannot start the server ?
Lingerie Bowl - for real?
cannot start j2ee server
Exception:
Best villain character