This week's book giveaway is in the OO, Patterns, UML and Refactoring forum. We're giving away four copies of Refactoring for Software Design Smells: Managing Technical Debt and have Girish Suryanarayana, Ganesh Samarthyam & Tushar Sharma on-line! See this thread for details.
I have created a servlet which enters html form input into a db2 database, and it is all working nicely with integer values. However, I want to perform some date and time calculations calculations on the form input, for which I need the Date class. To perform the sql needed for the database entry, I "import java.sql.*;". In order to perform the date calculations, I "import java.util.*;". The date calulations work fine in a servlet which does not have java.sql imported. However, when I try to put this calculation into the database entry servlet, I get "Ambiguous class: java.util.Date and java.sql.Date" removing "import.java.util.*;" means that it cannot compile the Date class (i.e. java.sql.Date does something else). How can I make it ignore java.sql.Date? Thanks, James [This message has been edited by James Hewitt (edited July 10, 2001).]
Yup, it's a nuisance. You're going to have to explicitly qualify all Date declarations and casts. There are, unfortunately, some critical differences in the two different Date classes, so the compiler has to know which one you're using at any given time. Among other things, the SQL date has no time component. Once you declare implicit class pedigrees using the import statement, Java has no prioritizing mechanism to prefer one implicit pedigree to another. It's just as well, since some extremely nasty bugs could creep in that way.
Customer surveys are for companies who didn't pay proper attention to begin with.
Joined: Jul 09, 2001
Right, that's fixed it. Thanks very much, James
I’ve looked at a lot of different solutions, and in my humble opinion Aspose is the way to go. Here’s the link: http://aspose.com