Help Request! Static Array Objects.

Hi, I'm a newbie looking for help with creating a static object array in the constructor of a class so the array can be accessed from all other classes but remains the same set of values for manipulation.
My code looks like;
public class ShipDatabase
public static Ship shipList[];
static {shipList[0] = new Ship("Sentry", 15, 10, "Scout");
" " " etc
shipList[5] = new Ship("Guard", 20, 2, "Scout");}
However it won't compile. Also I need to know how to access it from other classes when it does compile.
Any help is good help.

eg?
public class ShipDatabase
      private static class Ship
         private String s = null, ss = null;
         private int i = -1, j = -1;
         public Ship( String s, int i, int j, String ss )
            this.s = s;
            this.ss = ss;
            this.i = i;
            this.j = j;
         public String toString()
            return s + ", " + ss + ", " + i + ", " + j;
      public static Ship shipList[] = new Ship[]
      new Ship("Sentry", 15, 10, "Scout"),
      new Ship("Guard", 20, 2, "Scout")
      public static void main( String[] args )
      for( int i = 0; i < shipList.length; i++ )
         System.out.println( "sl: " + shipList[ i ] );
}

Similar Messages

  • Re: Beginner needs help using a array of class objects, and quick

    Dear Cynthiaw,
    I just read your Beginner needs help using a array of class objects, and quick of Dec 7, 2006 9:25 PM . I really like your nice example.
    I also want to put a question on the forum and display the source code of my classe in a pretty way as you did : with colors, indentation, ... But how ? In html, I assume. How did you generate the html code of your three classes ? By help of your IDE ? NetBeans ? References ?
    I already posted my question with six source code classes ... in text mode --> Awful : See "Polymorphism did you say ?"
    Is there a way to discard and replace a post (with html source code) in the Sun forum ?
    Thanks for your help.
    Chavada

    chavada wrote:
    Dear Cynthiaw,
    I just read your Beginner needs help using a array of class objects, and quick of Dec 7, 2006 9:25 PM . I really like your nice example.You think she's still around almost a year later?
    I also want to put a question on the forum and display the source code of my classe in a pretty way as you did : with colors, indentation, ... But how ?Just use [code] and [/code] around it, or use the CODE button
    [code]
    public class Foo() {
      * This is the bar method
      public void bar() {
        // do stuff
    }[/code]

  • Problems with data import to Static view object... Need help...

    Hi! I have problem when I import data to my Static View object from *.csv.
    I followed tutorial - http://download.oracle.com/docs/cd/E15523_01/web.1111/b31974/bcquerying.htm#CEGCGFCA
    Lets take a look to Figure 5-14 Sample Data Ready to Import from CSV Flat File. There are 3 columns. For Example in column C I have only lines. Bun in A and B column I have all 5 lines. I want to import data from one CSV file. So when I imported data and have some empty fields in column C. When I create SelectOneChoice object in my form, and run it, then it takes also empty fields as choices in my SelectOneChoice object. It is when I create Select one choice from column C Why it is so? And what to do?
    Waiting for response from anyone...
    Best regards!

    HI! Can someone give me opinion on my problem?
    Best regards

  • Excessive use of 'static' in Objects

    Hello all,
    I have inherited a code base which consists of around 90 objects seemingly randomly thrown together in a down and dirty effort to crank out working code as soon as possible. The original programmer has left the company and I've inherited his projects. While attempting to isolate some performance shortcomings I noticed that nearly every single class has a static method of some sort or another. My understanding is that this is clearly a bad idea as, if for no other reason, those objects, having a static method, will exist during the entire lifetime of the application and are not candidates to be GC'd. Furthermore these objects contain many String instances which, if the object that contains them isn't ever eliminated, will remain as huge memory hogs as well.
    So, in essence, what are the general thoughts of the architects and developers on this board regarding the use of the 'static' keyword and it's effect on Object design and the implications for performance and memory? Any feedback would be greatly appreciated. I have looked through numerous books on OO design but nobody seems to speak directly to the implications and "best practices" of designing with the 'static' keyword, where, when and how it's most effectively used, etc.
    Thanks!

    Hi,
    would you consider that the primary motivation for use of static, that the method in question use only class member variables?Often yes, but not always. The example given by jschell above is typical of a static method, but you can't always make methods static like this. If isDefined(String s) were specified by an interface (it couldn't be private in this case though), to implement different variants of what it means for a String to be 'defined', then you couldn't make the method static even if it did not depend on the object you are calling it on.
    However I am still looking for a good "rule of thumb" that will help me to determine what the most appropriate use of the static keyword is/should be.For methods you should ask yourself "How will the method be called?" If it only makes sense to call it on an instance of the object then DON'T make it static, even if it could be. Static methods should only be called like this:
       ClassName.staticMethod();and not like this:
       instanceOfClass.staticMethod();as this second style of invocation is very misleading (and it really winds me up when I see it!).
    As for fields - in my own code I tend to have private static final objects for constants or 'collections' that are used by many instances, or which are available through public static utility methods. Immutable static final fields I often make public. Pretty much everything else is non-static. I have no idea whether this is 'best practice' though.
    You may also want to look at the java.util.Collections and java.util.Arrays classes. These cannot be instantiated and provide only static utility methods for manipulating other objects. It can sometimes help to split off the static 'utility' functions into another class like this, especially if common functions can be applied to an interface.
    Ol.

  • URGENT: Declaring Static Array after runtime

    Hi All
    Hope you can help me with this problem. I need to create a static array that can be used by other classes. I have declared the object in the beginning of the class, but I can only know the size after executing a method that is in that class.
    When I then try to create the object I get a NullPointerException when I run the program.
    THUS, how do I create a static array if I only know the size after the class is running?
    Hope you can help me
    COMLINK

    Are you suggesting that the following doesn't work for you?
    class MyClass{
        static String[] myStaticArray;
        public MyClass(){
        static void setArraySize(int size){
            myStaticArray = new String[size];
    }or are you trying to access the myStaticArray variable before you have set it to an actual array (i.e. using newString[size])?
    If the later, then you may need to use lazy initialization and access the array through a static getMyArray() function that tests for null, then populates the myStaticArray variable properly before returning it.
    - K

  • Hello guys need help with reverse array

    Need help reversing an array, i think my code is correct but it still does not work, so im thinking it might be something else i do not see.
    so far the input for the array is
    6, 25 , 10 , 5
    and output is still the same
    6 , 25 , 10 , 5
    not sure what is going on.
    public class Purse
        // max possible # of coins in a purse
        private static final int MAX = 10;
        private int contents[];
        private int count;      // count # of coins stored in contents[]
         * Constructor for objects of class Purse
        public Purse()
           contents = new int[MAX];
           count = 0;
         * Adds a coin to the end of a purse
         * @param  coinType     type of coin to add
        public void addCoin(int coinType)
            contents[count] = coinType;
            count = count + 1;
         * Generates a String that holds the contents of a purse
         * @return     the contents of the purse, nicely formatted
        public String toString()
            if (count == 0)
                return "()";
            StringBuffer s = new StringBuffer("(");
            int i = 0;
            for (i = 0; i < count - 1; ++i)
                s.append(contents[i] + ", "); // values neatly separated by commas
            s.append(contents[i] + ")");
            return s.toString();
         * Calculates the value of a purse
         * @return     value of the purse in cents
        public int value()
            int sum = 0; // starts sum at zero
            for( int e : contents) // sets all to e
                sum = sum + e; //finds sum of array
            return sum; //retur
         * Reverses the order of coins in a purse and returns it
        public void reverse()
           int countA = 0;
           int x = 0;
           int y = countA - 1;                                          // 5 - 1 = 4
           for (int i = contents.length - 1; i >=0 ; i--)                        // 4, 3 , 2, 1, 0
                countA++;                                             // count = 5
            while ( x < y)
                int temp = contents[x];
                contents[x] = contents [y];
                contents [y] = temp;
                y = y- 1;                                         // 4 , 3 , 2, 1 , 0
                x = x + 1 ;                                             // 0 , 1,  2  , 3 , 4
    }

    ok so i went ahead and followed what you said
    public void reverse()
          int a = 0;
          int b = contents.length - 1;
          while (b > a)
              int temp = contents[a];
              contents[a] = contents;
    contents [b] = temp;
    a++;
    b--;
    }and its outputting { 0, 0, 0, 0}
    im thinking this is because the main array is has 10 elements with only 4 in use so this is a partial array.
    Example
    the array is { 6, 25, 10, 5, 0, 0, 0, 0, 0, 0,}
    after the swap
    {0, 0 , 0 , 0, 0 , 0 , 5 , 10 , 25, 6}
    i need it to be just
    { 5, 10, 25, 6}
    so it is swapping the begining and end but only with zeroes the thing is i need to reverse the array without the zeroes                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

  • Threaded Queries from Single static Connection object - Good approach?

    Hi,
    I need to generate a report where I need to query count(1) from over one hundred tables from oracle 10g database. I am not updating or deleting any record.
    My approach is to use a single static connection object and create one thread for each table and capture the result back into a static hashtable.
    But still, I am not getting any substantial performance improvement. Earlier, my report took 40 minutes, when it was non-threaded and now it takes 30 minutes.
    Is there anything more I can do to make my report get the counts faster? Will a connection pool help?

    Tolls wrote:
    jschell wrote:
    I was told by the DBA that count(1) works faster than count(*)....that's why....Unlikely. Certainly not true in current versions of Oracle if that is the source.Not unlikely, actually not true. Beneath the hood Oracle turns a count(1) into a count(*) in order to deal with this. Why? Because count(1) is turned into count(*) in order to avoid it being slower (Oracle 7 was the last time count(1) was different). And the reason generally given is because so many people were mistakenly using count(1) thinking it performed better that they decided to put in the "conversion" to fix the silly queries.
    I think this it the [Ask Tom|http://asktom.oracle.com/pls/asktom/f?p=100:11:109792721681931::::P11_QUESTION_ID:1156159920245] link I used last time this came up here.
    I knew all that, but I missed that the OP had specified the database vendor and version.

  • Manipulating java array object in an oracle procedure

    hi there,
    i have a java store procedure that returns an array of filenames, and i have an oracle stored procedure that will for each filename returned in the java array object, open that file do some processing and load the data into database tables, now my question is, would an oracle 9i varray object be compatible with a java array, or should i pass in a pl/sql table to store the filnames returned?
    i really am stuck at this point and need help !!!!
    Thanx

    Wole,
    Have you searched the code samples available at the Technet Web site? Could you not find a relevant one?
    Have you tried searching the Ask Tom Web site?
    Good Luck,
    Avi.

  • Help on accessing Oracle object !

    Hi,
    Looking for a help in accessing oracle object using JDBC. I've the following object defined in Oracle.
    TYPE ty_ctg_prod AS OBJECT(
    PROD VARCHAR2(40 ),
    NODE_ID NUMBER ,
    CTG_ID NUMBER );
    TYPE ctg_PROD_ary AS VARRAY (50) OF ty_ctg_PROD;
    The procedure out parameter is returning :
    x_ctg_prod_ary OUT ctg_prod_ary
    Do I need to use a OracleTypes.STRUCT API Or oracle.sql.ARRAY to access data in this scenario.
    Any pointers will be highly appreciated.
    Thanks,
    Shamik

    // Get the object1 value from the second column col_object1
                oracle.sql.STRUCT object1 = (oracle.sql.STRUCT)collabstatement.getObject(2);
                // Get the object1 values from each row
                Object[] object1Values = object1.getAttributes();
                // Get the first value of object1, which is a string
                String str = (String)object1Values[0];
                // Get the second value of object1, which is of the type object2
                oracle.sql.STRUCT object2 = (oracle.sql.STRUCT)object1Values[1];
                // Get the values of object2
                Object object2Values[] = object2.getAttributes();
                str = (String)object2Values[0];
                BigDecimal num =  (BigDecimal)object2Values[1];you can also use :oracle.sql.Datum[] attrs = oracleSTRUCT.getOracleAttributes();more info :
    http://www.oracle.com/technology/sample_code/tech/java/codesnippet/jdbc/objects/ObjectTypes.html

  • Last active change request of a object which has been transported

    Hi to all,
    I need a method to obtain the last active change request of a object which has been transported to the corresponding target system. I know that the CR tables are E070 and E071, but how can I know the last active and transported CR of each object? Any suggestion?
    Thank you very much,
    Antonio

    Hi Antonio, As u are aware that you can get TR information from E070 and E071 tables.From these two tables we can get the latest TR. In table E070 there are two fields with AS4DATE, AS4TIME.So, U can find the latest transported object on these two fileds.Also, u need to check the TRSTATUS field which specifies whether the object is transported ( R Released) or still Modifiable( Active as D).
    However this table will also contains subtasks and main request. This can be diffrentiated with the help of STRKORR field of E070. If blank then its a main req else its a subtask where the field would contain the Main Request No.
    Hope this would be of some help for u r development.
    Regards,
    Swaroop

  • Accessing a Static Array in one CAP file from another CAP in same project

    Hi all,
    I have been developing a banking application on JavaCard. So the size of the applet has grown size able and have now split the file to multiple CAP files. I have been using NXP JCOP plugin in Eclipse for development. Below are the steps done
    a.) I have created multiple packages under the same project where one project has all the variable which are public static final and don't reference any other class. Also this package does not extend Applet. So it finally generates to a CAP file.
    b.) Another package which imports the above package and also extend Applet is the one which has all the UI and logic related to the project. The applet uses the static array defined in the another package to show the menu on phone.
    Now the problem is that when the code come to point for fetching the menu data, i have some thing like menu.length . But when the code comes to this point in debugger i get a
    +6F 00    Status: No precise diagnosis.+
    To cross check i put a watch on the menu variable and found that it has all the data required for showing the menu (which is of 32 byes). So now i am perplexed on why this length is giving this problem. Am i doing some thing wrong. Below is the Snip of the larger code
    This code is the package which has all the constants..
    package constantsPack;
    import javacard.framework.APDU;
    import javacard.framework.ISO7816;
    import javacard.framework.JCSystem;
    import javacard.framework.Util;
    public class ConstantsApplet {
    //menu array decleration
    public static final byte[] MAIN_SETUP_MENU = {
                       (byte) 0x81,  ConstantsApplet.CMD_DTL_LENGTH, ConstantsApplet.CMD_NUMBER, ConstantsApplet.MAIN_CMD_SET_UP_MENU, (byte) 0x00,
                       (byte) 0x82, (byte) 0x02, ConstantsApplet.DEVICEID_SIM, ConstantsApplet.DEVICEID_ME,
                       (byte) 0x85, (byte) 0x08 ,'A','B', 'C',' ','A','p','p','s',
                       (byte) 0x8F, (byte) 0x0D, ConstantsApplet.SB_MENU, 'A','b','c','d','e','f','g',' ','B','a','n','k',
    // other constants.
    }This is the package which has the applet and which uses the variables of the above package
    package myPkgLib;
    import constantsPack.*;
    import javacard.framework.APDU;
    import javacard.framework.Applet;
    import javacard.framework.ISO7816;
    import javacard.framework.ISOException;
    import javacard.framework.OwnerPIN;
    import javacard.framework.Util;
    import javacard.framework.JCSystem;
    public class myApplet extends Applet{
    // other code
    fetch(ConstantsApplet.MAIN_SETUP_MENU.length);
    }Any help regarding this would be very helpful...
    Regards
    Prakash
    Edited by: prakash on Apr 18, 2012 11:57 PM

    Hi lexdabear,
    I tried putting a function inside the library package where the static array is present, but the results are the same... Also by try catch . what exception you want to catch... i see Exception has just .equal function... Tried with ExternalException also but does not seem to enter it..
    Attaching the source code compilable in eclipse below ..
    package constantsPack;
    public class ConstantsApplet {
         public static final byte[] MAIN_SETUP_MENU = {
              (byte) 0x81, (byte) 0x03, (byte) 0x01, (byte) 0x25, (byte) 0x00,
              (byte) 0x82, (byte) 0x02, (byte) 0x81, (byte) 0x82,
              (byte) 0x85, (byte) 0x08 ,'A','B', 'C',' ','A','p','p','s',
              (byte) 0x8F, (byte) 0x0D,  0x0F, 't','e','s','t','a','p','p',' ','B','a','n','k',
              public ConstantsApplet ()
    }The applet code where the above static array is used..
    package smilePkgLib;
    import constantsPack.*;
    import javacard.framework.APDU;
    import javacard.framework.Applet;
    import javacard.framework.ISOException;
    import javacard.framework.Util;
    public class BLApplet extends Applet{
         short fetchcode =0;
         public static void install(byte[] bArray, short bOffset, byte bLength) {
              // GP-compliant JavaCard applet registration
              new smilePkgLib.BLApplet().register(bArray,
                        (short) (bOffset + 1), bArray[bOffset]);
         private BLApplet(){
              // put init code
          * The main method.
         public void process(APDU apdu) throws ISOException {
              if (selectingApplet()) {
                   return;
              byte choosenMenuItem = 0;
              byte[] buf = apdu.getBuffer();
              byte bytesRead =(byte)(apdu.setIncomingAndReceive());
              fetchList(ConstantsApplet.MAIN_SETUP_MENU , (byte)0x00);
         private void fetchList(byte[] list, byte command){
              shouldFetch(list);
          * Overloaded method to fetch the MENUs only.     
          * @param menu
         private void shouldFetch(byte[] menu) {
              shouldFetch((byte)menu.length);
         private void shouldFetch(byte len) {
                   fetchcode = Util.makeShort((byte) 0x91, (byte) (len));          
    }The JCOP script to run the above project
    /select |DefaultApplet
    # Terminal Profile
    /send A0100000133B67FF7F1F020F0B4100000000869804000000 Have the eclipse loadable project but dont know how to put here...
    Regards
    prakash.

  • Trying to pass Oracle array/object type to Java

    I have a Java class with two inner classes that are loaded into Oracle:
    public class PDFJ
        public static class TextObject
            public String font_name;
            public int font_size;
            public String font_style;
            public String text_string;
        public static class ColumnObject
            public int left_pos;
            public int right_pos;
            public int top_pos;
            public int bottom_pos;
            public int leading;
            public TextObject[] column_texts;
    }I have object types in Oracle as such that bind to the Java classes:
    CREATE OR REPLACE TYPE "PROGRAMMER"."PDFJ_TEXT" AS OBJECT
    EXTERNAL NAME 'PDFJ$TextObject'
    LANGUAGE JAVA
    USING SQLData(
      "FONT_NAME" VARCHAR2(25) EXTERNAL NAME 'font_name',
      "FONT_SIZE" NUMBER EXTERNAL NAME 'font_size',
      "FONT_STYLE" VARCHAR2(1) EXTERNAL NAME 'font_style',
      "TEXT_STRING" VARCHAR2(4000) EXTERNAL NAME 'text_string'
    CREATE OR REPLACE TYPE "PROGRAMMER"."PDFJ_TEXT_ARRAY" AS
      TABLE OF "PROGRAMMER"."PDFJ_TEXT";
    CREATE OR REPLACE TYPE "PROGRAMMER"."PDFJ_COLUMN" AS OBJECT
    EXTERNAL NAME 'PDFJ$ColumnObject'
    LANGUAGE JAVA
    USING SQLData(
      "LEFT_POS" NUMBER EXTERNAL NAME 'left_pos',
      "RIGHT_POS" NUMBER EXTERNAL NAME 'right_pos',
      "TOP_POS" NUMBER EXTERNAL NAME 'top_pos',
      "BOTTOM_POS" NUMBER EXTERNAL NAME 'bottom_pos',
      "LEADING" NUMBER EXTERNAL NAME 'leading',
      "COLUMN_TEXTS" "PROGRAMMER"."PDFJ_TEXT_ARRAY" EXTERNAL NAME 'column_texts'
    CREATE OR REPLACE TYPE "PROGRAMMER"."PDFJ_COLUMN_ARRAY" AS
        TABLE OF "PROGRAMMER"."PDFJ_COLUMN";
    /I successfully (as far as I know) build a PDFJ_COLUMN_ARRAY object in a PL/SQL procedure. The PDFJ_COLUMN_ARRAY contains PDFJ_COLUMN objects; each of those objects contains a PDFJ_TEXT_ARRAY of PDFJ_TEXT objects (Example: pdf_column_array(i).pdf_text_array(i).text_string := 'something';). In this procedure, I pass this PDFJ_COLUMN_ARRAY as a parameter to a Java function. I assume the Java function parameter is supposed to be a oracle.sql.ARRAY object.
    I cannot figure out how to decompose this generic ARRAY object into a ColumnObject[] array. I also tried Googling and searching the forums, but I can't figure out matching search criteria. I was wondering if anyone here knows anything about passing user-defined Oracle type objects to a Java function and retrieving the user-defined Java class equivalents that they are supposedly mapped to--especially a user-defined array type of user-defined object types containing another user-defined array type of user-defined object types.

    Ok. I will try asking on the JDBC forum. So, don't
    flame me for cross-posting. :PWe won't, if over there you just post basically a
    link to this one.
    sigh Guess what, he did it the flame-deserving way. It's crossposted at:
    http://forum.java.sun.com/thread.jspa?threadID=602805
    <flame level="mild">Never ceases to amaze me how people don't think that posting a duplicate rather than a simple link isn't wasteful, as people could end up answering in both of them, not seeing each other's answers</flame>

  • How to delete unreleased transport request where the objects are locked

    Hi Experts,
      I was created a transport request, but I am facing some probelms with taht request, now I want to delete transport request. I tried to delete them in SE10, I am getting message that the objects are locked. Please tell me how to delete unreleased transport requests where the objects belong to this transport request are locked.

    Hi,
    First go to transaction se03 Choose "Unlock Objects (Expert Tool)" option under "Requests/Tasks" and unlock your task,
    Than go to se10 and delete what you want.
    I hope it helps.
    Bulent

  • Help with method/array lab

    I need some help creating an array of students in my lab, using a method. I'm fairly confused on how to do this. This is a sample of my code, i've deleted a lot of the stuff further down thats not needed atm.
    Anyhow, I understand how arrays work and whatnot, but have no clue as to how to create the array in the method. Any help please! (The last few lines of posted code is where the array should go)
    import java.util.Scanner;
    import java.io.*;
    public class Lab6
        public static void main(String[] args)
            // Fill in the body according to the following comments
             Scanner keyboard = new Scanner(System.in);
             // Input file name
         String fileName = getFileName(keyboard);
             // Input number of students
         int numberOfStudents = FileIOHelper.getNumberOfStudents(fileName);
             // Input all student records and create Student array and
         Student [] studentAry = new Student [numberOfStudents];
             // integer array for total scores
        // Given a Scanner in, this method prompts the user to enter
        // a file name, inputs it, and returns it.
        private static String getFileName(Scanner keyboard)
             String fileName;
         System.out.print("Enter input file name: ");
        fileName = keyboard.nextLine();
        return fileName;
        // Given the number of students records n to input, this
        // method creates an array of Student of the appropriate size,
        // reads n student records using the FileIOHelper, and stores
        // them in the array, and finally returns the Student array.
        private static Student[] getStudents(int n)
            // Fill in the body
        }

    Oh btw, this is sample code givin to me by my professor that may help?
            // Copy a student from the file to the array
              Student aStudent = FileIOHelper.getNextStudent();
              studentAry[0] = aStudent;
              // Copy another student to the array
              aStudent = FileIOHelper.getNextStudent();
              studentAry[1] = aStudent;
              // Get student information from the array
              String name = studentAry[1].getName();
              int s1 = studentAry[1].getScore(1);
              int s2 = studentAry[1].getScore(2);
              int s3 = studentAry[1].getScore(3);

  • Passing ARRAY object to stored procedure problem

    I've created a stored procedure that accepts as a parameter a
    database type
    that I have defined as a VARRAY. (create type XXX)
    When I attempt to pass an ARRAY object to this stored procedure
    through JDBC
    (Thin-client driver) I recieve the Oracle internal error ORA-
    00600 and the
    first "parameter" is [12760].
    Has anyone else attempted the same sort of thing w/ success?
    I am including the Java source code to help the investigation
    private void chad(int[] railcarIds) throws NonFatalDBException,
    FatalDBException {
    CallableStatement theStatement = null;
    try {
    theStatement = this.getDatabaseConnection().prepareCall("{call
    RomsRepairPackage.chad(?)} ");
    // create an ARRAY object to send to the procedure
    ArrayDescriptor ad =
    ArrayDescriptor.createDescriptor("RAILCARIDVARRAYTYPE",
    this.getDatabaseConnection());
    ARRAY theArray = new ARRAY(ad, this.getDatabaseConnection(),
    railcarIds);
    // set the input parameter which is the array of railcar ids
    ((OracleCallableStatement)theStatement).setARRAY(1, theArray);
    theStatement.execute();
    theStatement.close();
    } catch (SQLException sqle) {
    System.out.println("ouch");
    Thank you for any help,
    Chad Sheley
    Senior Consultant
    Cap Gemini
    Des Moines, IA
    null

    Hi
    Can u plzz help me as to how did u write the procedure to take arrays as input.I also have to write aprocedure that takes arrays and returns arrays.Plzz can u give me a working sample as I have not found any help anywhere
    <BLOCKQUOTE><font size="1" face="Verdana, Arial">quote:</font><HR>Originally posted by Chad Sheley ([email protected]):
    I've created a stored procedure that accepts as a parameter a
    database type
    that I have defined as a VARRAY. (create type XXX)
    When I attempt to pass an ARRAY object to this stored procedure
    through JDBC
    (Thin-client driver) I recieve the Oracle internal error ORA-
    00600 and the
    first "parameter" is [12760].
    Has anyone else attempted the same sort of thing w/ success?
    I am including the Java source code to help the investigation
    private void chad(int[] railcarIds) throws NonFatalDBException,
    FatalDBException {
    CallableStatement theStatement = null;
    try {
    theStatement = this.getDatabaseConnection().prepareCall("{call
    RomsRepairPackage.chad(?)} ");
    // create an ARRAY object to send to the procedure
    ArrayDescriptor ad =
    ArrayDescriptor.createDescriptor("RAILCARIDVARRAYTYPE",
    this.getDatabaseConnection());
    ARRAY theArray = new ARRAY(ad, this.getDatabaseConnection(),
    railcarIds);
    // set the input parameter which is the array of railcar ids
    ((OracleCallableStatement)theStatement).setARRAY(1, theArray);
    theStatement.execute();
    theStatement.close();
    } catch (SQLException sqle) {
    System.out.println("ouch");
    Thank you for any help,
    Chad Sheley
    Senior Consultant
    Cap Gemini
    Des Moines, IA<HR></BLOCKQUOTE>
    null

Maybe you are looking for