Skip to Main Content

DevOps, CI/CD and Automation

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Interested in getting your voice heard by members of the Developer Marketing team at Oracle? Check out this post for AppDev or this post for AI focus group information.

PL/SQL function executing java class problem.

963306May 20 2013 — edited May 20 2013
Hello, i`m having a problems with executing java class in pl/sql function. I`m trying to call a simple function like this:
create or replace function callme(alfa in NUMBER)
return NUMBER
AS LANGUAGE JAVA
NAME 'start.fun(java.lang.Integer) return java.lang.Integer';
/

a java class is looking like:
import java.io.*;
import java.util.*;
public class start {
public static int fun(int alfa)
{
return alfa + 10;
}
}

everything is compiled without error. When i`m trying to call:
select callme(10) from dual; im getting error ORA-29531 missing method fun.
Can some1 help me? It is problem with mapping ??

Comments

dvohra21

It is documented.

"The Oracle.connect() method defaults to a false setting of the auto-commit flag. However, it also has signatures to set it explicitly. In the Oracle JDBC implementation, the auto-commit flag defaults to true."

Key Programming Considerations

kdario

Well, this is documentation for sqlj and first sentence just confirms what I said(that auto-commit by default should be false) 

Just to clarify my original post:

When you retrieve jdbc connection in adf application(for example, in app module impl class), that connection already has autocommit=false (because framework will set this property)

Difference between adf 11.x and 12.x is in setting db proxy user (by using conn.openProxySession() ) :

In 11.x (which uses ojdbc6 driver) invocation of openProxySession() method will preserve autocommit=false

In 12.x (which uses ojdbc7 driver) invocation of openProxySession() method will reset autocommit to true (and adf app will not work correctly with this setting)

Dario

dvohra21

ojdbc7.jar is based on JDBC 4.1 and JDBC 4.1 still sets auto-commit to true by default.

"The default is for auto-commit mode to be enabled when the Connection object is

created."

http://download.oracle.com/otn-pub/jcp/jdbc-4_1-mrel-spec/jdbc4.1-fr-spec.pdf?AuthParam=1404073866_5e28356fa3b11ea367d6b…

Could auto commit be false for the PROXYTYPE_USER_NAME specified?

OracleConnection (Oracle Database JDBC Java API Reference)

1 - 4
Locked Post
New comments cannot be posted to this locked post.

Post Details

Locked on Jun 17 2013
Added on May 20 2013
1 comment
1,387 views