Subject Re: [firebird-support] Netbeans
Author Helen Borrie
At 04:51 PM 9/09/2009, you wrote:
>Hi, I'm trying to develop a java application with Netbeans. I've installed Jaybird and everything seems to be ok, but when I run my application I got this messages:
>
>[TopLink Info]: 2009.09.09 08:43:25.234--ServerSession(14726901)--TopLink, version: Oracle TopLink Essentials - 2.0.1 (Build b09d-fcs (12/06/2007))
>[TopLink Info]: 2009.09.09 08:43:29.968--Not able to detect platform for vendor name [Firebird 2.1)WI-V2.1.2.18118 Firebird 2.1/tcp (pc)/P10]. Defaulting to [oracle.toplink.essentials.platform.database.DatabasePlatform]. The database dialect used may not match with the database you are using. Please explicitly provide a platform using property toplink.platform.class.name.
>
>This means that Firebird is accessed using Oracle SQL Dialect, causing queries to crash and rise exceptions. I found the toplink.platform.class.name parameter inside persistent.xml file but got no idea about the proper settings (I've searched internet but found no clues).
>
>Can somebody help me ? There some way to make Netbeans and Firebird work or should I change java IDE ? There is a better one ?

Well, the right place to ask about Java client problems is the firebird-java list forum, not this one.

But, f.y.i., Fire has two "SQL Dialects" (and it's not a standard thing at all). It has to do with SQL language implementation changes waaaaay back in time, when Firebird's distant ancestor, InterBase 6, introduced 64-bit numbers and standard date and time types. Old databases from IB 5 and older speak Dialect 1. Firebird can read them and write to them but to avoid corruption, the client (connection) dialect must match the database dialect. Databases created in the Firebird era, i.e., the past decade (almost) by sentient beings should be Dialect 3.

You should check the dialect or *your* databases using gstat -h, especially if you inherited an old database or used an out-of-date tool or a mismatched client library to create your database.

I suspect you are getting the error because Jaybird has detected a discrepancy between the SQL dialect of the Jaybird client and the SQL dialect of the database. Take the whole deal to firebird-java and find out what you need to do in your connection settings.

./heLen