You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tuscany.apache.org by "Ron Gavlin (JIRA)" <tu...@ws.apache.org> on 2007/07/16 15:05:07 UTC

[jira] Commented: (TUSCANY-1353) Exception attempting to insert rows using DAS w/DataDirect JDBC driver

    [ https://issues.apache.org/jira/browse/TUSCANY-1353?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12512937 ] 

Ron Gavlin commented on TUSCANY-1353:
-------------------------------------

Folks,

If a clean fix for this problem cannot be found, a minimal solution would be to externalize the setting of ConnectionImpl.useGetGeneratedKeys via setting a JVM property. This property might contain a comma-separated list of database product names whose useGetGeneratedKeys value should be false. The ConnectionImpl class itself could have a default list  "Oracle, PostgreSQL" that mimics the existing functionality.

If you agree that this is a worthwhile interim solution, I will pursue providing a patch. Let me know.

- Ron

> Exception attempting to insert rows using DAS w/DataDirect JDBC driver
> ----------------------------------------------------------------------
>
>                 Key: TUSCANY-1353
>                 URL: https://issues.apache.org/jira/browse/TUSCANY-1353
>             Project: Tuscany
>          Issue Type: Bug
>    Affects Versions: Java-DAS-M2
>         Environment: Windows XP, WebLogic 8.1SP6, Sybase 12.5, DataDirect Sybase JDBC driver (embedded within BEA WebLogic)
>            Reporter: Ron Gavlin
>            Priority: Critical
>
> Greetings,
> I am having problems inserting rows with Tuscany DAS M2 using the BEA WebLogic Sybase JDBC driver (DataDirect Connect for JDBC 3.6 June 2007)) which is an embedded version of the popular DataDirect JDBC driver. Although I have not tested it, I suspect this problem appears in non-Sybase versions of the driver as well. The code below generates the listed stacktrace. Note: BEA apparently renames the DataDirect Connect for JDBC classes as part of its embedding process.
> ...
> Command insert = das.createCommand("insert into Test (testCol1, testCol2) values (?, ?)");
> insert.setParameter(1, "str1");
> insert.setParameter(2, "str2");
> insert.execute();
> Stacktrace:
> Caused by: java.sql.SQLException: [BEA][Sybase JDBC Driver]No rows affected.
>     at weblogic.jdbc.base.BaseExceptions.createException(Unknown Source)
>     at weblogic.jdbc.base.BaseException.getException(Unknown Source)
>     at weblogic.jdbc.base.BaseStatement.executeUpdateInternal(Unknown Source)
>     at weblogic.jdbc.base.BasePreparedStatement.executeUpdate(Unknown Source)
>     at weblogic.jdbc.wrapper.PreparedStatement.executeUpdate(PreparedStatement.java:159)
>     at org.apache.tusany.das.rdb.impl.Statement.executeUpdate(Statement.java:173)
>     at org.apache.tusany.das.rdb.impl.Statement.executeUpdate(Statement.java:133)
>     at org.apache.tusany.das.rdb.impl.InsertCommandImpl.execute(InsertCommandImpl.java:44)
> While interactively debugging org.apache.tuscany.das.rdb.impl.ConnectionImpl.prepareStatement(String queryString, String[] returnKeys), I noticed if I manually change the boolean member variable useGetGeneratedKeys to false, no exception is generated and the insert works as designed. 
> The DataDirect Connect for JDBC drivers are either supported or embedded into numerous commercial application servers, including IBM WebSphere 6.1, jBoss 4.x, and BEA WebSphere. Folks using these platforms are likely to quickly hit this problem if they attempt to use the DAS. 
> - Ron

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org