code for object 'file_import_obj'
CREATE OR REPLACE TYPE file_import_obj AS OBJECT
{
column_1 datatype,
column_2 datatype,
........ ........,
column_n datatype
}
and for nested table 'file_import_nestedTable'
CREATE OR REPLACE TYPE file_import_nestedTable as TABLE OF file_import_obj
I have a package in place and it is valid.
The problem started when I tried to use the weblogic pool connection to call the
procedure. But this was overcome by using the Oracle connection i.e another pool
and not the weblogic's own connection pool.
But now I'm facing this exception when I try to use the ArrayDescriptor.
java.sql.SQLException: invalid name pattern: PFEP.file_import_nestedTable
Here is my code...
Class.forName("oracle.jdbc.driver.OracleDriver");
connection = DriverManager.getConnection("jdbc:oracle:thin:@myserver:1521:ANSD","user","password");
// its throwing exception here.
ArrayDescriptor desc = ArrayDescriptor.createDescriptor("file_import_nestedTable",connection);
ARRAY arr1 = new ARRAY(desc,connection,strArrHeaderBodyData);
OracleCallableStatement call = (OracleCallableStatement)connection.prepareCall("{call
pkg_file_import.proc_file_import(?,?)}");
call.setARRAY(1, arr1);
call.registerOutParameter(2, java.sql.Types.VARCHAR);
call.execute();
connection.commit();
and the stacktrace is ...
java.sql.SQLException: invalid name pattern: PFEP.file_import_nestedTable
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:168)
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:210)
at oracle.jdbc.oracore.OracleTypeADT.initMetadata(OracleTypeADT.java:424)
at oracle.jdbc.oracore.OracleTypeADT.init(OracleTypeADT.java:343)
at oracle.sql.ArrayDescriptor.initPickler(ArrayDescriptor.java:1002)
at oracle.sql.ArrayDescriptor.<init>(ArrayDescriptor.java:132)
at oracle.sql.ArrayDescriptor.createDescriptor(ArrayDescriptor.java:97)
at ImportEntity.processRecords(ImportEntity.java:88)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:265)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:200)
at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:2456)
at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2039)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
invalid name pattern: PFEP.file_import_nestedTable
any help would be highly appreciated...
Thanx.