Hi,
I tried to connect with MS SQL Server by JDBC-ODBC Bridge,
and getting a SQLException.
StackTrace
----------
[org.apache.ojb.broker.accesslayer.sql.SqlGeneratorDefaultImpl] DEBUG: SQL:SELECT
A0.name,A0.id FROM product A0
<snip />
[org.apache.ojb.broker.accesslayer.JdbcAccessImpl] DEBUG: executeQuery: [EMAIL
PROTECTED]
[org.apache.ojb.broker.accesslayer.RsIterator] DEBUG:
RsIterator[org.apache.ojb.broker.accesslayer.RsQueryObject[query: QueryByCriteria from
class Product , class descriptor: Product]] initialized
[org.apache.ojb.broker.accesslayer.RsIterator] DEBUG: hasNext() -> true
[org.apache.ojb.broker.core.PersistenceBrokerImpl] DEBUG: PB.close was called: [EMAIL
PROTECTED]
org.apache.ojb.broker.PersistenceBrokerException: Error reading class type: Product
from result set, current read field was name
at
org.apache.ojb.broker.accesslayer.RowReaderDefaultImpl.readValuesFrom(RowReaderDefaultImpl.java:208)
at
org.apache.ojb.broker.accesslayer.RowReaderDefaultImpl.readObjectArrayFrom(RowReaderDefaultImpl.java:176)
at
org.apache.ojb.broker.accesslayer.RsIterator.getObjectFromResultSet(RsIterator.java:440)
at org.apache.ojb.broker.accesslayer.RsIterator.next(RsIterator.java:265)
at Main.main(Main.java:28)
Caused by: java.sql.SQLException: [Microsoft][ODBC SQL Server Driver]Invalid
Descriptor Index
at sun.jdbc.odbc.JdbcOdbc.createSQLException(JdbcOdbc.java:6958)
at sun.jdbc.odbc.JdbcOdbc.standardError(JdbcOdbc.java:7115)
at sun.jdbc.odbc.JdbcOdbc.SQLGetDataString(JdbcOdbc.java:3908)
at sun.jdbc.odbc.JdbcOdbcResultSet.getDataString(JdbcOdbcResultSet.java:5702)
at sun.jdbc.odbc.JdbcOdbcResultSet.getString(JdbcOdbcResultSet.java:356)
at sun.jdbc.odbc.JdbcOdbcResultSet.getString(JdbcOdbcResultSet.java:413)
at
org.apache.ojb.broker.util.JdbcTypesHelper$T_Varchar.readValueFromResultSet(JdbcTypesHelper.java:378)
at
org.apache.ojb.broker.util.JdbcTypesHelper$BaseType.getObjectFromColumn(JdbcTypesHelper.java:302)
at
org.apache.ojb.broker.util.JdbcTypesHelper$BaseType.getObjectFromColumn(JdbcTypesHelper.java:281)
at
org.apache.ojb.broker.accesslayer.RowReaderDefaultImpl.readValuesFrom(RowReaderDefaultImpl.java:201)
... 4 more
Product.java
----------
public class Product {
private int id;
private String name;
}
DDL
----------
create table product(id integer primary key,
name varchar(100));
class-descriptor
----------
<class-descriptor class="Product" table="product" >
<field-descriptor name="id" column="id" primarykey="true" />
<field-descriptor name="name" column="name" />
</class-descriptor>
- This cause thinks that the following sites are related;
http://www.websina.com/bugzero/faq/exception-odbc.html
- In the case of a JDBC driver, this exception doesn't occurred.
- This exception occurred, also in OJB 1.1.0(CVS HEAD).
Is there any patches or other solutions?
/Sakanoue Atsuhiko [FAMILY Given]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]