OC4J and Oracle9i and user defined datatypes over SOAP.

Does OC4J and Oracle9i, that comes with JDeveloper9i-rc, support user defined datatypes over SOAP?
If I invoke the EJB over RMI it is working fine.
But if I try to invoke it over SOAP I get this fault:
500 Internal Server Error: Servlet error: Error building response envelope: java.lang.IllegalArgumentException: No Serializer found to serialize a 'mypackage.myObj' using encoding style 'http://schemas.xmlsoap.org/soap/encoding/'.
I have written the Deployment descripter like this:
<?xml version = '1.0'?>
<isd:service
id="urn:mypackage.EJB2"
type="rpc"
xmlns:isd=" " target="_new">http://xmlns.oracle.com/soap/2001/04/deploy/service"> <isd:provider
id="stateless-ejb-provider"
methods="getData"
scope="Request">
<isd:option key="JNDILocation" value="EJB2"/>
<isd:option key="DeploymentName" value="EJB2"/>
</isd:provider>
<isd:faultListener class="org.apache.soap.server.DOMFaultListener"/>
<isd:mappings>
<isd:map
encodingStyle="http://schemas.xmlsoap.org/soap/encoding" xmlns:x="http://glo2158" qname="x:mypackage.myObj"
javaType="mypackage.myObj"
java2XMLClassName="org.apache.soap.encoding.soapenc.BeanSerializer"
xml2JavaClassName="org.apache.soap.encoding.soapenc.BeanSerializer"/>
</isd:mappings>
</isd:service>

AFAIK this is not possible with the Oracle 8i implementation. This is my main gripe about Oracle's so called objects - you can't define your own constructors, you can't put check constraints on them and you can't use them in triggers.
In other words you can put any old scheisse in an object and you can't populate them with derived or default values.
I'm on a 9i New Features course as I type and I'm hoping to hear that Oracle have added some features to objects that will make them worth using.
regards, APC

Similar Messages

  • Some DB objects like User-defined datatypes being missed out?

    Dear all.
    I create an Oracle model for a captured SQL Server model and then right click -> click on 'Generate' to create the DB creation script.
    (1) But few objects like user-defined datatypes are missed out in the script.
    (2) Also, a simple stored proc as defined below missed out:
    CREATE PROCEDURE [SalesLT].[SayHi]
    AS
    SELECT 'Hi I am a job scheduler'
    GO
    Rgds, Abhi

    Hello,
    An OracleDI Dataserver connection to an RDBMS is, most of the time, defined with a single set of parameters: a user account name, a password and a URL.
    OracleDI may need to access numerous tables on the RDBMS which may not all be stored in the same database schema, catalog, library, ...and for which access privileges may not be identical.
    For this reason, it is necessary to ensure that the RDBMS user account has sufficient access privileges for these schema, catalog, librairies ...
    The user account should have at least read/right access permission for any OracleDI Physical Schema referenced for the concerned Dataserver (depending on the project within which it is used, a Physical Schema may store both source and/or target tables).
    Moreover, for project requirements, it may be necessary to use/create/drop certain RDBMS
    components such as stored procedures, views, temporary tables, system tables ...
    For this reason, make sure the user account referenced in the dataserver connection parameters is attributed sufficient privileges to any object it may manipulate with OracleDI.
    2nd point: you can use any logical name for the data server Name.

  • User Defined datatypes

    Hello,
    Is there any way we can make user defined datatypes in oracle as we do in Microsoft SQL / Sybase ASE.
    I tried using Abstract TYPE but using it changes the Select query. I need to migrate some Sybase code to Oracle and also need to implement the user defined datatypes for tables.
    Any clue on as to how I can create this in oracle.
    Regards
    Suchetan

    Thanks for your replies.
    Here is how we use UDD in sybase and also how the queries change when TYPE is used in Oracle.
    Eg:-
    ***************** Sybase **************************
    sp_addtype 'name10','varchar(10)'
    go
    Type added.
    (return status = 0)
    create table TEST
    usrname name10)
    go
    sp_help TEST
    go
    Name Owner
    Object_type
    TEST dbo
    user table
    (1 row affected)
    Data_located_on_segment When_created
    default Jan 17 2007 9:43AM
    Column_name Type Length Prec Scale Nulls Default_name
    Rule_name Access_Rule_name Identity
    usrname name10 10 NULL NULL 0 NULL
    NULL NULL 0
    (return status = 0)
    INSERT INTO TEST VALUES('SUC') /* Insert is like any table created without
    UDD */
    GO
    (1 row affected)
    SELECT usrname FROM TEST
    GO
    usrname
    SUC
    (1 row affected)
    ******************************** Sybase End ***********************
    ********************** ORACLE *******************************
    create or replace type name10
    ss object
    name10 varchar(10))
    Type created.
    create table test
    ( usrname name10)
    Table created.
    desc test
    Name Null? Type
    USRNAME NAME10
    INSERT INTO TEST VALUES('SUC')
    INSERT INTO TEST VALUES('SUC')
    ERROR at line 1:
    ORA-00932: inconsistent datatypes: expected SYSTEM.NAME10 got CHAR
    INSERT INTO TEST VALUES(NAME10('SUC'));
    1 row created.
    SELECT USRNAME FROM TEST
    USRNAME(NAME10)
    NAME10('SUC')
    SELECT USRNAME.NAME10 FROM TEST
    SELECT T.USRNAME.NAME10 FROM TEST T
    USRNAME.NA
    SUC
    ********************* ORACLE END **********************************
    Thanks
    Suchetan Shetty

  • User Defined datatypes dont work

    URGENT HELP REQUIRED! SOS!
    I had installed PO 8.0 on one of my machines, but when tried to create user defined datatypes, it says 'Object Type Not Enabled'. Does that mean we can ENABLE creation of user defined datatypes in PO 8.0? If so, please guide as to where i can find this option.
    Secondly, when I install Oracle 8.1.6 and forms6i on my Server (windows NT environment), I find that although tyopes can be defined in sql8.0, the same is shown as UNDEFINED in sql3.3. Is it a bug or am i missing out something? Please guide.
    Thanks, in anticipation!

    Thanks for your replies.
    Here is how we use UDD in sybase and also how the queries change when TYPE is used in Oracle.
    Eg:-
    ***************** Sybase **************************
    sp_addtype 'name10','varchar(10)'
    go
    Type added.
    (return status = 0)
    create table TEST
    usrname name10)
    go
    sp_help TEST
    go
    Name Owner
    Object_type
    TEST dbo
    user table
    (1 row affected)
    Data_located_on_segment When_created
    default Jan 17 2007 9:43AM
    Column_name Type Length Prec Scale Nulls Default_name
    Rule_name Access_Rule_name Identity
    usrname name10 10 NULL NULL 0 NULL
    NULL NULL 0
    (return status = 0)
    INSERT INTO TEST VALUES('SUC') /* Insert is like any table created without
    UDD */
    GO
    (1 row affected)
    SELECT usrname FROM TEST
    GO
    usrname
    SUC
    (1 row affected)
    ******************************** Sybase End ***********************
    ********************** ORACLE *******************************
    create or replace type name10
    ss object
    name10 varchar(10))
    Type created.
    create table test
    ( usrname name10)
    Table created.
    desc test
    Name Null? Type
    USRNAME NAME10
    INSERT INTO TEST VALUES('SUC')
    INSERT INTO TEST VALUES('SUC')
    ERROR at line 1:
    ORA-00932: inconsistent datatypes: expected SYSTEM.NAME10 got CHAR
    INSERT INTO TEST VALUES(NAME10('SUC'));
    1 row created.
    SELECT USRNAME FROM TEST
    USRNAME(NAME10)
    NAME10('SUC')
    SELECT USRNAME.NAME10 FROM TEST
    SELECT T.USRNAME.NAME10 FROM TEST T
    USRNAME.NA
    SUC
    ********************* ORACLE END **********************************
    Thanks
    Suchetan Shetty

  • Help needed for User-Defined Datatype

    Hi All,
    I have one table which has User-defined Column Datatype.
    Now Client wants us to rename the User-Defined Datatype for some Standardization process.
    How to do rename of it, coz Rename old to new doesnt work in Oracle 10.2.0.4G for TYPES.
    So we re-created it with the new names. Now our Problem is how do i re-assign the column datatype with the New User-Defined DataType.
    Regards,
    Prathamesh

    The Only Solution that i could found was - Create a new column with new User-Defined Datatype, copy the old column values to New Column, then drop the old column and rename the new Column to Old Column
    ORA-22859:     invalid modification of columns
    Cause:     An attempt was made to modify an object, REF, VARRAY, nested table, or LOB column type.
    Action:     Create a new column of the desired type and copy the current column data to the new type using the appropriate type constructor.

  • Find and Replace with User Defined Variable

    I am in the process of converting some legacy help content to RoboHelp HTML 9 in order to give it some more features and customization for our clients. I have been taking advantage of User Defined Variables in order to customize the content. Up to this point I have been manually going through each topic and replacing each instance of a word ("statements" for example) with a user defined variable saying the same thing but with the possibility of being changed later should the customer want to. Though we only have about 200 topics, this is still relatively time-consuming and I would like to automate this as much as possible.
    Is there any way to find and replace content with a User Defined Variable?

    Hi there
    If you open the Script Explorer pod I believe one of the sample scripts is a "UDV Converter" script. Perhaps you could give that a try.
    Cheers... Rick
    Helpful and Handy Links
    RoboHelp Wish Form/Bug Reporting Form
    Begin learning RoboHelp HTML 7, 8 or 9 within the day!
    Adobe Certified RoboHelp HTML Training
    SorcerStone Blog
    RoboHelp eBooks

  • Recon and provisioning of user-defined object class ICF Active Directory

    I have followed the documentation instructions for reconciliation of a user-defined object class in the ICF Active Directory connector. I am using OIM 11gR2 with the ICF Active Directory 11.1.1.5 connector patched to 11.1.1.5.0A. The procedure states to create the new object class in AD and then change the objectClass value in the Lookup.Configuration.ActiveDirectory lookup. In my case I am using the existing ObjectClass of contact, rather than a new object class. Just for completeness I am using a clone of the AD User Resource Object which I call AD User Contact and so my lookup name is Lookup.Configuration.ActiveDirCon.
    When I changed the ObjectClass from User to Contact, and ran the Active DirCon User Target Recon scheduled job, with Object Type also = contact. The first issue I noticed was that the connector wanted a different set of lookups, which is not in the documentation. It is looking for a lookup in my Configuration lookup where code key=contact Configuration Lookup (which I should have expected since there are code keys for User, Group, and organizationalUnit). I added a line to the lookup where code key=contact Configuration Lookup and the Decode=Lookup.ActiveDirCon.CM.Configuration and then I created a new lookup by that name, assigning the 5 values to be the Lookup.ActiveDirCon.UM.xxx lookups. I did not see any need to create a new set of Lookup.ActiveDirCon.CM.xxx lookups with the exact same values.
    I re-ran the scheduled job and it ran successfully, but did not generate any Recon Events, even though I had objects in the OU and I have that same OU in the Lookup.ActiveDirCon.OrganizationalUnits lookup (from the Org Lookup Recon). Everything looks good but getting no results. Looked at the log file from the ConnectorServer and it is building the query properly and executing it properly with the correct syntax, getting no errors, but the SearchAndReturnObjects method is returning zero results.
    Looking to see if anyone has successfully reconciled in user-defined or other non-User objectClass objects from Active Directory, and if so, can you provide Lookup configuration and Connector Server information so I can troubleshoot.
    I resolved this issue by changing the recon lookups to a blank lookup called Lookup.ActiveDirCon.CM.ReconAttrMap and only added in the parameters that are used by a Contact object. Only populate the ReconAttrMap with parameters that exist for the custom object.
    Edited by: Keith Smith AptecLLC on Mar 27, 2013 6:31 AM

    Oracle Support answered this question via SR

  • 9144 with custom FPGA and SGL EtherCAT User-defined Variables?

    Hi,
    I currently have a small instrument driver (rs485) running on a 9144 chassis. The output values are communicated to the EtherCAT Master using FXP numbers. I would like to switch these FXP to SGL since I upgraded to LV 2012 SP1 with FPGA now supporting SGL numbers.
    Is this possible? I tried several times to create the SGL User-defined Variables in the project, but the date type is grayed out.
    Greetings from Munich,
    Götz
    Solved!
    Go to Solution.

    Unfortunately, SGL is not a supported data type for communication to/from a 9144. The available data types for user-defined I/O variables are:
    * Fixed Point
    * Signed Integers(Int8, Int16, Int32, Int64)
    * Unsigned Integers (UInt8, UInt16, UInt32, UInt64)
    * U32 Bit Field
    * Boolean
    More information regarding user-defined I/O variables can be found at:
    Programming EtherCAT I/O With FPGA Intelligence: Differences in the LabVIEW FPGA Programming API
    http://www.ni.com/white-paper/10618/en#toc4

  • Dynamic webservice client for User-defined datatypes

    Hi All,
    I have a webservices with user-defined datat types. I want to write a dynamic client that will work even if there are any changes in the wsdl, so that I do not want to recompile the client or make any changes on the client side.
    I tried using DII but we need to modify the custome objects and recompile the same. Suggest me any alternative.
    Regards,
    Sanjay

    Rob, unfortunately not. If I ever come across the solution, I will post it here.
    The reason I wanted to use weblogic webservices was to take advantage of the asynchronous webservice functionality. I ended up using xfire instead for my webservices, as we already had that in place in the application, and then using polling clients to get the response. Not an ideal solution, but it works very good anyway.
    regards,
    Marcus

  • How to convert Oracle User defined datatype to SQL Server 2014 using SSMA Version 6.0

    I am trying to convert Oracle 11g OE schema to SQL Server 2014, using SSMA version 6.0
    Getting an error in converting the Oracle View to SQL Server
    CREATE OR REPLACE VIEW OC_CUSTOMERS OF OE.CUSTOMER_TYP WITH OBJECT IDENTIFIER (customer_id) AS
    SELECT c.customer_id, c.cust_first_name, c.cust_last_name, c.cust_address,
               c.phone_numbers,c.nls_language,c.nls_territory,c.credit_limit,
               c.cust_email,
               CAST(MULTISET(SELECT o.order_id, o.order_mode,
                                   MAKE_REF(oc_customers,o.customer_id),
                                   o.order_status,
                                   o.order_total,o.sales_rep_id,
                                   CAST(MULTISET(SELECT l.order_id,l.line_item_id,
    l.unit_price,l.quantity,
    MAKE_REF(oc_product_information,
    l.product_id)
    FROM order_items l
    WHERE o.order_id = l.order_id)
                                        AS order_item_list_typ)
                             FROM orders o
                             WHERE c.customer_id = o.customer_id)
                    AS order_list_typ)
         FROM customers c
    *   SSMA error messages:
    *   O2SS0461: Conversion of object view is not supported.
    *   OF OE.CUSTOMER_TYP
    *      WITH OBJECT IDENTIFIER (customer_id)
    CREATE VIEW dbo.OC_CUSTOMERS
    AS
       /*Generated by SQL Server Migration Assistant for Oracle version 6.0.0.*/
       *   SSMA error messages:
       *   O2SS0481: Conversion of statement containing user defined type column 'c.cust_address' not supported.
       *   O2SS0481: Conversion of statement containing user defined type column 'c.phone_numbers' not supported.
       *   O2SS0430: Conversion of multiset conditions is not supported.
       *   CAST(MULTISET
       *      SELECT
       *         o.order_id,
       *         o.order_mode,
       *         MAKE_REF(oc_customers, o.customer_id),
       *         o.order_status,
       *         o.order_total,
       *         o.sales_rep_id,
       *         CAST(MULTISET
       *               SELECT
       *                  l.order_id,
       *                  l.line_item_id,
       *                  l.unit_price,
       *                  l.quantity,
       *                  MAKE_REF(oc_product_information, l.product_id)
       *               FROM order_items  l
       *               WHERE o.order_id = l.order_id
       *            ) AS order_item_list_typ)
       *      FROM orders  o
       *      WHERE c.customer_id = o.customer_id
       *   ) AS order_list_typ)
       SELECT
          c.CUSTOMER_ID,
          c.CUST_FIRST_NAME,
          c.CUST_LAST_NAME,
          c.cust_address,
          c.phone_numbers,
          c.NLS_LANGUAGE,
          c.NLS_TERRITORY,
          c.CREDIT_LIMIT,
          c.CUST_EMAIL,
          NULL
       FROM dbo.CUSTOMERS  AS c   */
    Any suggestion on converting this view would be helpful.
    Kind regards.

    Thanks Lydia Zhang for your reference urls.
    Please let me know if you come across any reference articles related to
    Creating a SQL Server table and View with columns as SQL Server TVP similar to Oracle UDT like
      CREATE TABLE "OE"."CUSTOMERS"
       (    "CUSTOMER_ID" NUMBER(6,0),
        "CUST_FIRST_NAME" VARCHAR2(20 BYTE) CONSTRAINT "CUST_FNAME_NN" NOT NULL ENABLE,
        "CUST_LAST_NAME" VARCHAR2(20 BYTE) CONSTRAINT "CUST_LNAME_NN" NOT NULL ENABLE,
        "CUST_ADDRESS" "OE"."CUST_ADDRESS_TYP" ,
        "PHONE_NUMBERS" "OE"."PHONE_LIST_TYP" ,
        "NLS_LANGUAGE" VARCHAR2(3 BYTE),
    And also creating a SQL Server TVP inside an another SQL Server TVP as in Oracle
    create or replace TYPE customer_typ
     AS OBJECT
        ( customer_id        NUMBER(6)
        , cust_first_name    VARCHAR2(20)
        , cust_last_name     VARCHAR2(20)
        , cust_address       cust_address_typ
       , credit_limit       NUMBER(9,2)
        , cust_email         VARCHAR2(30)
        , cust_orders        order_list_typ
    NOT FINAL;
    Kind regards.
    Venkatesha

  • Soa 11g and jdeveloper 11g user defined extension function

    I have developed a set of extension functions,
    in design time for the previous version, I can put the deployment file (jar file) that contains the extension functions in the %JDEV_HOME%\jdev\lib\ext directory and jdeveloper recognizes the set of extension functions if previously i have defined an xml descriptor with every one of the functions i need to include in the panel.
    Now, with the jdeveloper 11g i have tried the same, and jdev recognizes the functions, but when I am going to test one transformation that includes the extension function, the parser is not founding the jar file; the error (in spanish) is:
    XML-22045: (Error) Error de funcion de extension: No se ha encontrado la clase '
    Falta la clase: aac._shared.extensions.xsl.XmlW3cDomFunctions
    Clase Dependiente: oracle.xml.xpath.XSLExtFunctions
    Cargador: main:11.0
    Origen del Codigo: /C:/.extracted/jdevstudio1111/lib/xmlparserv2.jar
    Configuraci≤n: system property PCLMain.createExtensionManagerLoader()
    Esta carga se ha iniciado en main:11.0 mediante el mΘtodo loadClass().
    La clase que falta no esta disponible desde ningun origen de codigo o cargador del sistema.
    my dude is:
    + at design time, where can I put the jars with extension functions to make one transformation function used in a mediator component can works fine?
    + at runtime, where can I put those libraries? (in the previous version, we can put this libraries in the %APP_SERVER%\j2ee\home\applib, or create one shared library and reference it in the oracle.bpel.common shared library declaration of the server.xml configuration file).

    Hi,
    please post this question to the JDeveloper 11 forum. Please translate the messages into English as well
    JDeveloper and OC4J 11g Technology Preview
    Frank

  • Server response late and redirecting to user defined page

    Hi
    Can any body tell how to know server response time
    if perticular time reached it should redirect to userdefined page saying that server is busy pls try after some time
    here i am using iplanet web server and ias application server

    There is not much you can do if the server is too busy to handle your request. You may be able to configure the server to return a custom page.
    In the case of a long running process you can do something the following
    package com.test;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    public class ServletTimeTest extends HttpServlet  {
         public void doGet(HttpServletRequest req, HttpServletResponse res) {
              try {
                   //Create object to get results of sub-thread
                   ServletTimeTestResults resultObject = new ServletTimeTestResults();
                   //Create sub-thread
                   Thread servletTimeTestThread =
                        new Thread(
                                  new ServletTimeTestThread(
                                            resultObject, Thread.currentThread()));
                   //start sub-thread
                   servletTimeTestThread.start();
                   //Wait ten seconds for sub-thread to finish processing
                   try {
                        Thread.sleep(10000);
                   } catch (InterruptedException ie) {
                        //sub-thread has finished in less than 10 seconds
                        System.out.println("Servlet sleep interrupted");
                   //set the flag to make sure sub-thread stops processing
                   resultObject.setStopProcessing(true);
                   //check if sub-thread completed processing sucessfully
                   if (resultObject.isProcessingComplete()) {
                        //if sub-thread did finish processing then return results from
                        //resultObject here.
                        System.out.println("Processing completed");
                   } else {
                        //if sub-thread did not finish processing then redirect to
                        //error page here.
                        System.out.println("Processing IS NOT completed");
              } catch (Exception e) {
                   e.printStackTrace();
    package com.test;
    * sub-processing thread.
    * @author Tolmke
    public class ServletTimeTestThread implements Runnable {
         //Object to facilitate inter-thread communication
         ServletTimeTestResults resultObject;
         //Callback handle to servlet thread
         Thread mainThread;
         public ServletTimeTestThread(
                   ServletTimeTestResults resultObject,
                   Thread mainThread) {
              this.resultObject = resultObject;
              this.mainThread = mainThread;
         public void run() {
              boolean wait = true;
              int count = 0;
              //main processing thread. Need to periodically check resultObject.isStopProcessing()
              //to determine if main thread wants to terninate sub-processing
              while ((wait) && (this.resultObject.isStopProcessing() == false)) {
                   try {
                        Thread.sleep(1000);
                        System.out.println("In proecessing thread...................");
                        //count can be set to values greater or less than 10 seconds to test
                        //various scenarios
                        if (count++ > 3) {
                             wait = false;
                   } catch (InterruptedException ie) {
                        ie.printStackTrace();
              }//End while
              //If servlet thread did not set falg indicating timed out then set
              //processing successfully completed lag.
              if (this.resultObject.isStopProcessing() == false) {
                   this.resultObject.setProcessingComplete(true);
              //if servlet thread has not timed out then interrupt the
              //the thread from th esleep state.
             this.mainThread.interrupt();
         }//End run method
    }//End class ServletTimeTestThread
    package com.test;
    * Object to facilitate communication between main servlet thread
    * and a processing sub-thread.
    * @author Tolmke
    public class ServletTimeTestResults {
         //Flag indicating sucessful completion of processing
         private boolean processingComplete;
         //Flag indicating that sub-process should stop processing
         private boolean stopProcessing;
         public boolean isProcessingComplete() {
              return processingComplete;
         public void setProcessingComplete(boolean processingComplete) {
              this.processingComplete = processingComplete;
         public boolean isStopProcessing() {
              return stopProcessing;
         public void setStopProcessing(boolean stopProcessing) {
              this.stopProcessing = stopProcessing;
    }

  • User Defined datatypes migration from sqlserver2000 to Oracle

    Hello,
    Need help on the below for sqlserver 2000
    a. Whether the current version of Oracle Migration WorkBench
    supports migration of userdefined datatypes
    b. A list (or a doc listing) the limitations of Oracle Migration WorkBench, from the perspective of what all needs to be migrated manually.
    Thanks a lot
    Cyril

    Cyril,
    Have a look at the users guide and the reference guide for SQL Server on OTN. UDTs get mapped to their base types through the Migration Workbench.
    Look at otn.oracle.com/tech/migration/workbench and click on documentation. All the user guides and reference guides are here.
    thanks
    Barry

  • User-defined datatypes as IN variables in stored procedures

    Hello,
    I'm trying to write a stored procedure which will accept a custom data type as an IN variable. Using the information here: http://download.oracle.com/docs/cd/B10501_01/appdev.920/a96624/05_colls.htm I've set up a procedure which looks like this:
    CREATE OR REPLACE PROCEDURE EDEPOSIT.merch_acct_proc_method_insert
         arg_ALL_PROC_METHODS          IN proc_array
    IS
         TYPE proc_array IS TABLE OF VARCHAR2 INDEX BY VARCHAR2;
    BEGIN
         arg_METHOD := arg_ALL_PROC_METHODS.first;
         while (arg_METHOD is not null)
         loop
              --processing code
         end loop;
    END;
    but I'm running into a problem where it seems that the data type needs to be defined before the parameters block (Error(3,27): PLS-00201: identifier 'PROC_ARRAY' must be declared), but a DECLARE block won't co-exist with the CREATE OR REPLACE command (PLS-00103: Encountered the symbol "CREATE" when expecting one of the following: begin function pragma procedure subtype type <an identifier>).
    What am I missing?
    Thanks in advance!

    Hi,
    Welcome to the forum!
    877369 wrote:
    ... CREATE OR REPLACE PROCEDURE EDEPOSIT.merch_acct_proc_method_insert
         arg_ALL_PROC_METHODS          IN proc_array
    IS
         TYPE proc_array IS TABLE OF VARCHAR2 INDEX BY VARCHAR2;
    BEGIN
         arg_METHOD := arg_ALL_PROC_METHODS.first;
         while (arg_METHOD is not null)
         loop
              --processing code
         end loop;
    END;
    but I'm running into a problem where it seems that the data type needs to be defined before the parameters block (Error(3,27): PLS-00201: identifier 'PROC_ARRAY' must be declared), but a DECLARE block won't co-exist with the CREATE OR REPLACE command (PLS-00103: Encountered the symbol "CREATE" when expecting one of the following: begin function pragma procedure subtype type <an identifier>).I'm not sure what you mean by "parameters block".
    Whoever is going to call the procedure will have to create a proc_array first. If proc_array is defined inside the procedure, then it can't be referenced from outside the procedure.
    A common way to define types is to do so in a package. Procedures normally belong to pacages anyway. You can define a TYPE and a procedure that uses it in the same package, like this:
    CREATE OR REPLACE PACKAGE     merch_acct_pkg
    AS
    TYPE proc_array IS TABLE OF VARCHAR2 (30) INDEX BY VARCHAR2 (30);
    PROCEDURE merch_acct_proc_method_insert
         arg_ALL_PROC_METHODS     IN     proc_array
    END     merch_acct_pkg;
    SHOW ERRORS
    CREATE OR REPLACE PACKAGE BODY     merch_acct_pkg
    AS
    PROCEDURE merch_acct_proc_method_insert
    arg_ALL_PROC_METHODS IN proc_array
    IS
    BEGIN
         arg_METHOD := arg_ALL_PROC_METHODS.first;
         while (arg_METHOD is not null)
         loop
              --processing code
         end loop;
         dbms_output.put_line ('Hello');
    END     merch_acct_proc_method_insert;
    END     merch_acct_pkg;
    SHOW ERRORSYou can call the procedure like this:DECLARE
         foo     merch_acct_pkg.proc_array;
    BEGIN
         merch_acct_pkg.merch_acct_proc_method_insert (foo);
    END;
    /

  • Java Objects for Oracle datatypeJava Objects for Oracle user-defined datatype

    I'm trying to create a Java object that maps to VARRAY of numbers.
    I created a type "NUMARRAY" which is a varray of numbers.
    I also created a type "NUMCOLLECTION" which is an object and contains "NUMARRAY"
    The plan was to create the java object to map to numcollection. My question is can I map a java type directly to the NUMARRAY type, or must it map to an object? (here I'm referring to 'CREATE TYPE NUMARRAY AS VARRAY" or "CREATE TYPE NUMCOLLECTION AS OBJECT" in sql.
    Also, if I do need to write java objects for both types? And if I do, do both need to implement SQLData?
    I'm trying to create a Java object that maps to VARRAY of numbers.
    I created a type "NUMARRAY" which is a varray of numbers.
    I also created a type "NUMCOLLECTION" which is an object and contains "NUMARRAY"
    The plan was to create the java object to map to numcollection. My question is can I map a java type directly to the NUMARRAY type, or must it map to an object? (here I'm referring to 'CREATE TYPE NUMARRAY AS VARRAY" or "CREATE TYPE NUMCOLLECTION AS OBJECT" in sql.
    Also, if I do need to write java objects for both types? And if I do, do both need to implement SQLData?
    Does anyone have an example? Your expertise would be much appreciated.
    Thanks,
    Roxanne
    null

    Hi Roxanne,
    I have the same problem if you get an idea or answer..I have a problem in updating and inserting in Varray datatype from java object of Objects (arraylist)..
    please mail me
    [email protected]
    Bye
    I created a type "NUMARRAY" which is a varray of numbers.
    I also created a type "NUMCOLLECTION" which is an object and contains "NUMARRAY"
    The plan was to create the java object to map to numcollection. My question is can I map a java type directly to the NUMARRAY type, or must it map to an object? (here I'm referring to 'CREATE TYPE NUMARRAY AS VARRAY" or "CREATE TYPE NUMCOLLECTION AS OBJECT" in sql.
    Also, if I do need to write java objects for both types? And if I do, do both need to implement SQLData?
    I'm trying to create a Java object that maps to VARRAY of numbers.
    I created a type "NUMARRAY" which is a varray of numbers.
    I also created a type "NUMCOLLECTION" which is an object and contains "NUMARRAY"
    The plan was to create the java object to map to numcollection. My question is can I map a java type directly to the NUMARRAY type, or must it map to an object? (here I'm referring to 'CREATE TYPE NUMARRAY AS VARRAY" or "CREATE TYPE NUMCOLLECTION AS OBJECT" in sql.
    Also, if I do need to write java objects for both types? And if I do, do both need to implement SQLData?
    Does anyone have an example? Your expertise would be much appreciated.
    Thanks,
    Roxanne
    null

Maybe you are looking for