はい、静的メソッドを呼び出す必要がありますが、静的メソッド内でクラスのインスタンスを作成し、非静的メソッドを呼び出すことができます。
create or replace java source named "com.test.Example" AS
public class Example {
public String getHelloWorld(
final String hello
) {
return hello + "world"
}
public static String getStaticHelloWorld(
final String hello;
){
final Example e = new Example();
return e.getHelloWorld( hello );
}
}
/
CREATE FUNCTION get_hello_world(i_string VARCHAR2) RETURN VARCHAR2 AS
LANGUAGE java name 'com.test.Example.getStaticHelloWorld(
java.lang.String
) return java.lang.String';