Hi ranchers! I've just download the jdk 1.4.1_01, and it do not provide any implmentation of the RowSet class (in the javax.sql package). Some time ago I read at the sun's early access page an article about some disconnected implementations of RowSet like CachedRowSet. In it they talk about those classes as a extension to jdbc 2.0, as if it would be natural to include them in the JDBC 3.0... Even in the JDBC 2.0 API Tutorial and Reference you can read: (quote)"the Java Software division of Sun Microsystems, Inc., plans to provide reference implementations for three different styles of rowsets in the future" AFAIK they have been never included in any jdk release -I mean in the 'official' javax.sql package, not in a vendor specific product(I know Orion has a CachedRowSet and the sun.jdbs.rowset classes come with Forte CE). Do you know why?? Any disadvantage about them? Do you have negative experiences using that classes?? Does anybody know if the CachedRowSet class will be included in a jdk soon? Thanx [ January 07, 2003: Message edited by: Juanjo Bazan ]
You shouldn't use those classes since they are for JVM internal use only, and may be changed or removed from one Java version to another. That means that code that's working right now may not work anymore when you update your Java installation. This is true for all classes in packages that start with sun, sunw or com.sun.
Rob Spoor wrote:You shouldn't use those classes since they are for JVM internal use only,
You are incorrect; those classes are not for JVM internal use only. Quite the opposite.
These sun.* classes are the official reference implementations of RowSet interfaces. They are meant to be used by developers, as explained in the RowSet documentation:
The reference implementation of the CachedRowSet interface provided by Oracle Corporation is a standard implementation. Developers may use this implementation just as it is, they may extend it, or they may choose to write their own…
Rob Spoor wrote:… those classes … may be changed or removed from one Java version to another. That means that code that's working right now may not work anymore when you update your Java installation. This is true for all classes in packages that start with sun, sunw or com.sun.
You are correct about this. Every developer should understand that the sun.* classes are not part of the official Java platform. They are not included in every Java implementation. However, they have been bundled in Sun/Oracle's implementations released by themselves as well as their licensees such as Apple, Inc. for Mac OS X. This bundling continues in Java 5, 6, and 7. Read Oracle's official statement.
While we developers should be aware that Oracle retains the legal right to withdraw the sun.* classes, to say that we should never use them is an overstatement. Especially so when discussing the official reference implementations.