[ http://issues.apache.org/jira/browse/DERBY-258?page=all ] Daniel John Debrunner closed DERBY-258: ---------------------------------------
> Incorrect method resolution with explicit method signature > ---------------------------------------------------------- > > Key: DERBY-258 > URL: http://issues.apache.org/jira/browse/DERBY-258 > Project: Derby > Type: Bug > Components: SQL > Versions: 10.1.1.0 > Reporter: Daniel John Debrunner > Assignee: Daniel John Debrunner > Fix For: 10.1.1.0 > Attachments: derby258_20050607.txt > > If an explicit method signature has Java type that does not match the correct > SQL to Java mapping as defined by JDBC, then method resolution seems to try > and pick the incorrect method. > With this example an attempt is made to force an INT procedure parameter to > resolve to a java.lang.String, which is not supported. However the engine > trys to resolve to a method with an Integr parameter. > ij> CREATE PROCEDURE SIGNATURE_BUG_1(IN A INT) > LANGUAGE JAVA PARAMETER STYLE JAVA > EXTERNAL NAME 'java.lang.System.load(java.lang.String)'; > 0 rows inserted/updated/deleted > ij> CALL SIGNATURE_BUG_1(4); > ERROR 38000: The exception 'java.lang.NoSuchMethodError: > java.lang.System.load(Ljava/lang/Integer;)V' was thrown while evaluating an > expression. > ERROR XJ001: Java exception: 'java.lang.System.load(Ljava/lang/Integer;)V: > java.lang.NoSuchMethodError'. > I believe that the resolution should fail with an illegal conversion error if > the supplied Java type is not a match for the SQL type according to JDBC, in > this case int or java.lang.Integer. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira
