Problem with remove method

Hi:
I have written a Calendar program that will add appointments and then print the appointment list. I need to write code to remove selected appointments. How do I make reference to the appointment objects I created in the test portion of my program so that I can remove them with the removeApp method(code not written yet)?
Describes a calendar for a set of appointments.
@version 1.0
import java.util.Vector;
public class CalendarTest
{  public static void main(String[] args)
     Calendar markCalendar = new Calendar("Mark");
     markCalendar.addApp(new Appointment("June 1","3pm","4pm", "dentist"));
      markCalendar.addApp(new Appointment("June 2","3pm","4pm", "doctor"));
     markCalendar.print();
      //markCalendar.removeAppz(Appointment(1));does not work
Describes a calendar for a set of appointments.
class Calendar
  Constructs a calendar for the person named.
  public Calendar(String aName)
  {  name = aName;
     appointments = new Vector();
  Adds an appointment to this Calendar.
  @param anApp The appointment to add.
  public void addApp(Appointment anApp)
     appointments.add(anApp);
  Removes an appointment from this Calendar.
  @param anApp The appointment to be removed.
  public void removeApp(Appointment anApp)
     appointments.remove(anApp);//does not work
  Prints the Calendar.
  public void print()
  {  System.out.println(name + "               C A L E N D A R");
     System.out.println();
      System.out.println("Date   Starttime    EndTime   Appointment");
     System.out.println("vector size" + appointments.size());
     appointments.remove(0);
     for (int i = 0; i < appointments.size(); i++)
     {  Appointment nextApp =(Appointment) appointments.get(i);
        nextApp.print();
  private Vector appointments;
  private String name;
  private Appointment theAppointment;
Describes an appointment.
class Appointment
  public Appointment(String aDate,String aStarttime,String aEndtime, String aApp)
  {  date = aDate;
     starttime = aStarttime;
      endtime = aEndtime;  
     app = aApp;
  Prints the Date, Starttime, Endtime and a description of the
  appointment.
  public void print()  
  {  System.out.println();
     System.out.println(date + "   " + starttime + "          " + endtime
         + "       " + app );
     System.out.println();
  private String date;
  private String starttime;
  private String endtime;
  private String app;

//markCalendar.removeAppz(Appointment(1));
Will not work, what object are you trying to pass to your method?
I assume you want to remove an Appointment from appointments?
You could make the Vector appointments public and use markCalendar.appointments(1) or make a method to return the Vector and then choose an Appoinment to pass to your removeApp() method.

Similar Messages

  • Problem with remove() method of ArrayList collection

    Dear All,
    I have a program below: See the statement in bold
    //Start of the Program
    import java.util.*;
    public class ArrayListTest
         public static void main(String args[])
              //declare an arraylist of type String
              List<String> stringStorage = new ArrayList<String>();
              //add elements to the ArrayList
              stringStorage.add("apple");
              stringStorage.add("banana");
              stringStorage.add("papaya");
              stringStorage.add("peach");
              stringStorage.add("cucumber");
              stringStorage.add("orange");
              stringStorage.add("grapes");
              stringStorage.add("plum");
              stringStorage.add("chiku");
              stringStorage.add("pomegrenate");
              stringStorage.add("pomegrenate2");
              //iterate through the ArrayList
              Iterator<String> iterate = stringStorage.iterator();
              //test whether an element is present
              boolean isPresent = stringStorage.contains("xxx");
              System.out.println("xxx is Present "+isPresent);
              //remove an element from the ArrayList
    Line no: 12     System.out.println("Remove apple:(true/false)"+stringStorage.remove("apple"));
              Loop:
              for (int i=0;i<stringStorage.size();i++)
                   while (iterate.hasNext()==true)
                        System.out.println("Element in the arraylist["+i+"] "+iterate.next());
                        //iterate.remove();
                        continue Loop;
    End of Outer Loop:
    //End of the Program
    It compiles fine. But when I try to run , it gives a unchecked exception in main ConcurrentModificationException.
    Exception in thread "main" java.util.ConcurrentModificationException
    at java.util.AbstractList$Itr.checkForComodification(Unknown Source)
    at java.util.AbstractList$Itr.next(Unknown Source)
    at ArrayListTest.main(ArrayListTest.java:48)
    But, if I remove Line no 12(in bold), or put the same statement after End of Outer Loop: , I do not get the error. Can you explain this phenomenon?

    look what you do:
    1/ you retrieve the iterator
    2/ you remove apple
    3/ you browse the iterator
    but actually, the iterator kept a reference to the "apple" you just removed ; that s why it gets screwed ;
    you mustn't operate on the list if you re not over with the iterator work

  • I have problem with pay method

    I have problem with pay method. My card declined. I change card and I have the same problem. What can i do? Why declined my card again?

    Contact iTunes store support: https://ssl.apple.com/emea/support/itunes/contact.html.

  • Problem with traverse method

    Hi, I am having this problem:
    I made a CustomItem, a TextField, now I overloaded the traverse method, so if the keycode is Canvas.UP or Canvas.DOWN then return false else return true.
    The problem is that when I press the left or rigth button it also returns false and not true.
    and there is another problem with traverse, before returning false or true I set a boolean and call to repaint to draw it on some way if its selected or not, the paint method is being called but it just dont draw as desired.
    protected void paint(Graphics g, int ancho, int alto) {
              System.out.println ("Dentro del paint, seleccionado="+seleccionado);
              try {
                   g.drawString(label, 0, 0, Graphics.TOP|Graphics.LEFT);
                   if (!seleccionado) {
                        g.setColor(120, 120, 120);
                   g.drawRect(0, 4, tama�oTexto+8, 25);
                   if (seleccionado) {
                        g.setColor(255, 255, 255);
                        g.fillRect(1, 5, (tama�oTexto+8-1), 23);
                   g.setColor(0, 0, 0);
                   if (!seleccionado) {
                        g.setColor(80, 80, 80);
                   g.drawString(texto, 4, 7, Graphics.TOP|Graphics.LEFT);
                   if (seleccionado) {
                        int cursorX=Font.getDefaultFont().charsWidth((texto.substring(0, idLetraActual)).toCharArray(), 0, texto.substring(0, idLetraActual).length())+4;
                        g.drawChar('|', cursorX, 7, Graphics.TOP|Graphics.LEFT);
              } catch (Exception E){
                   E.printStackTrace();
         }the traverse method set the seleccionado variable and calls to repaint but instead of being false the paint method is drawing it as true (most of times).

    I have a problem with findByxxx() method.. in
    Container managed bean.
    i have
    Collection collection =
    home.findByOwnerName("fieldValue");
    specified in my Client Program, where ownerName is the
    cmp fieldname..
    and
    public Collection findByOwnerName(String ownerName)
    throws RemoteException, FinderException
    defined in my home interface.
    i have not mentioned the findBy() method anywhere else
    (Bean class). You have to describe the query in the deployment descriptor.
    >
    Even if i have a same "fieldValue" in the database
    (Oracle), which i specified in findBy() method, iam a
    result of owner Not found, which is not the case as i
    have that owner name.
    for the same application if i use findByPrimaryKey(),
    it is working..
    Can any one please post me the solution.

  • Problem with prerender method

    Hi,
    I have a problem with the method prerender. A month ago, I started to develop a web project using Sun Studio Creator and a few page beans that i used extended the Abstract Page Bean, so I overrided the prerender and customized it.
    The problem is that, now i'm using eclipse and the configuration files of the project has changed and the prerender method never execute.
    I want to know why it is happening. Maybe the project is "bad-configurated"?
    Thanks

    The code of java bean doesn't change, the only thing that has changed is the configuration files (faces-config.xml, web.xml, etc).
    I put a breakpoint in the prerender method but the lifecycle doesn�t execute this method.
    After serveral changes, I wrote this code in the method prerender :
    int i=0;
    i = 1;
    And the prerender method doesn't execute.
    I'm a bit lost,
    thanks

  • Problem with affinetransformOp method...

    I have a serious problem with filter method
    I Want to make a image flipping or some other filtering by using
    AffineTransformOp
    but it printouts an erro like this
    cannot resolve symbol
    op.filter (img, flipped)
    (the error pointer shows ".after the op")
    a code from my one of the filters
    BufferedImage flipped = new BufferedImage(img.getHeight(), img.getWidth(),BufferedImage.TYPE_INT_RGB);
    AffineTransform trans = new AffineTransform(0, 1, 1, 0, 0, 0);
    AffineTransformOp op = new AffineTransformOp(trans, AffineTransformOp.TYPE_NEAREST_NEIGHBOR);
    op.filter(img, flipped); //img is my buffered image source
    I used some other ways like (img, null) but always give out error.
    thanks..

    Did you declare "img" as BufferedImage or something else?
    What is the full error message?

  • Problem with WindowClosing() method

    Hello everyone,
    I have some problem with WindowClosing() method, in which I gave options
    to quit or not. Quit is working fine but in case of Cancel, its not returning to
    the frame. Can anyone help me ....Here is my code
    import javax.swing.*;
    import java.awt.*;
    import javax.swing.event.*;
    import java.awt.event.*;
    public class TestFrame extends JPanel
         public static void main(String[] args)
              JFrame frame = new JFrame("Frame3");
              WindowListener l = new WindowAdapter() {
                   public void windowClosing(WindowEvent e) {
                        int button = JOptionPane.showConfirmDialog(null,"OK to Quit","",JOptionPane.YES_NO_OPTION, -1);
                        if(button == 0)     {
                             System.exit(0);
                                   else
                                              return;
              frame.addWindowListener(l);
              frame.setSize(1200,950);     
              frame.setLocationRelativeTo(null);
              frame.setVisible(true);
    }

    Maybe try
    int button = JOptionPane.showConfirmDialog(yourframe,"OK to
    Quit","",JOptionPane.YES_NO_OPTION, -1);

  • Problem with remove task from schedule in PWA

    In our environment problem with remove task from schedule by PWA.
    Problem is only when I want to remove few task in the same time, but the operation one by one is correct.
    In my opinion problem is with calculation schedule after remove tasks, column ID include wrong value it means that Number ID does not generate in the correct order same of numer
    disappear. Click Calculate button on ribbon causes problem with finshed operation and save project.
    Problem occurs only machine with IE 11.0 browser without compability mode, on other machine for example on the same project with IE 8,9,10 everything is correct.
    Problem appeared recently, earlier everything was OK.
    Txn, Dariusz Moczyński

    Hi Darius,
    I'm a bit confused. You are now talking about 2 issues.
    For the first one, you cannot edit anymore tasks in PWA, with any browser versions? Is it happenonog for any users on any projects? Try the following solutions publish the project from Project Pro and see if it helps. Press CTRL F5 to delete IE cache. Ensure
    that your PWA URL is added to the trusted site and/or compatibility sites. Check for the ULS logs or javascript errors.
    For the second issue, please refer to my previous reply, this obviously cannot be considered as a bug since it is happening with a non supported browser version and working properly on supported versions of IE.
    Hope this helps,
    Guillaume Rouyre, MBA, MVP, P-Seller |

  • Problem with binarySearch method

    In the code below I've got a problem with my binarySearach method in the IntegerList.java file. When I look at my IntegerTest file, Eclipse give me this message next to my method call for the binarySerch (case 6): (the method binarySearch int[] , int) in the type integerList is not applicable for the arguments (int). So what the heck have I done wrong? I know it's a lot of code to look at but felt you'll need to see both classes to make heads or tales out of this.
    Thanks in advance.
    import java.util.Scanner;
    public class IntegerList //implements Comparable
         int [] list; // values in the list
         //Constructor -- takes an integer and creates a list of that
         //size.  All elements default to value 0.
         public IntegerList(int size)
              list = new int[size];
         //randomize -- fills the array with randomly generated integers
         //between 1 and 100, inclusive
         public void randomize()
              int max = list.length;
              for (int i=0; i < list.length; i++)
                   list[i] = (int) (Math.random() * max) +1;
         //fillSorted -- fills the array with sorted values
         public void fillSorted()
              for (int i =0; i <list.length; i++)
                   list = i + 2;
         //print -- prints array elements with indices, one per line
         public String toString()
              String s = "";
              for (int i = 0; i <list.length; i++)
                   s += i + ":\t" + list[i] + "\n";
              return s;
         //linearSearch -- takes a target value and returns the index
         //of the first occurrence of target in the list. Returns -1
         //if target does not appear in the list
         public int linearSearch (int target)
              int location = -1;
              for (int i = 0; i < list.length && location == -1; i++)
                   if (list [i] == target)
                        location = i;
                   return location;
         //sortIncresing -- uses selection sort
         public void sortIncreasing()
              for (int i =0; i < list.length -1; i++)
                        int minIndex = minIndex(list, i);
                        swap (list, i, minIndex);
    private void swap(int[] list, int index, int min)
    int temp =list [index];
    list [index] = list [min];
    list [min] = temp;
    // private int minIndex(int[] list, int index)
    public int minIndex(int[] list, int lastIndex) {
    int min=list[lastIndex];
    for (int i=lastIndex+1; i<list.length; i++)
    if (list[i]<min)
    lastIndex=i;
    return lastIndex;
    public void sortDecreasing()
              for (int i =0; i > list.length -1; i++)
                        int minIndex = minIndex(list, i);
                        swap (list, i, minIndex);
    public static int binarySearch (int [] list, int val)
    int min = 0, max = list.length, mid =0;
    boolean found = false;
    while (!found && min <= max)
    mid = (min + max) / 2;
    if (list [mid]== val)
    found = true;
         //if the mid point contains the value being searched for
         //then we are done
    else
    if (list[mid]< val)
    max = mid -1;
    else
    min = mid+1;
    if (found)
    return list[mid];
    else
    return -1;
    return val;
    }//end class
    //now for the IntegerListTest class
         //File: integerListTest.java
         //Purpose: Provide a menu-driven tester for the IntegerList class.
         import java.util.*;
         public class IntegerListTest
              static IntegerList list = new IntegerList(10);
              static Scanner scan = new Scanner(System.in);
         // main -- creates an initial list, then repeatedly prints
         // the menu and does what the user asks until they quit
         public static void main(String [] args)
              printMenu();
              int choice = scan.nextInt();
              while (choice != 0)
                        dispatch(choice);
                        printMenu();
                        choice = scan.nextInt();
         // dispatch -- takes a choice and does what needs doing
         public static void dispatch(int choice)
              int loc;
              int val;
              long time1, time2;
              long totalTime;
              switch (choice)
                        case 0:
                             System.out.println("Bye!");
                             break;
                        case 1:
                             System.out.println(list);
                             break;
                        case 2:
                             System.out.println("How big should the list be?");
                             list = new IntegerList (scan.nextInt());
                             System.out.println("List is created.");
                             break;
                        case 3:
                             list.randomize();
                             System.out.println("List is filled with random elements.");
                             break;
                        case 4:
                             list.fillSorted();
                             System.out.println("List is filled with sorted elements.");
                             break;
                        case 5:
                             System.out.print("Enter the value to look for: ");
                             val = scan.nextInt();
                             time1 = System.currentTimeMillis();
                             loc = list.linearSearch(val);
                             time2 = System.currentTimeMillis();
                             totalTime = time1 - time2;
                             System.out.print(totalTime);
                             if (loc != -1)
                                  System.out.println("Found at location " + loc);
                             else
                                  System.out.println("Not in list");
                             break;
                        case 6:
                             System.out.print("Enter the value to look for: ");
                             val = scan.nextInt();
                             loc = list.binarySearch(val);
                             if (loc != -1)
                                  System.out.println("Found at location " + loc);
                             else
                                  System.out.println("Not in list");
                             break;
                        case 7:
                             list.sortIncreasing();
                             System.out.println("List has been sorted.");
                             break;
                        case 8:
                             list.sortDecreasing();
                             System.out.println("List has been sorted.");
                             break;
                        default:
                             System.out.println("Sorry, invalid choice");
         // printMenu -- prints the user's choices
         public static void printMenu()
              System.out.println("\n Menu ");
              System.out.println(" ====");
              System.out.println("0: Quit");
              System.out.println("1: Print the list");
              System.out.println("2: Create a new list of a given size");
              System.out.println("3: Fill the list with random ints in range 1-length");
              System.out.println("4: Fill the list with already sorted elements");
              System.out.println("5: Use linear search to find an element");
              System.out.println("6: Use binary search to find an element " +
                                  "(list must be sorted in increasing order)");
              System.out.println("7: Use selection sort to sort the list into " +
                                  " increasing order");
              System.out.println("8: Use insertion sort to sort the list into " +
                                  " decreasing order");
              System.out.println("\nEnter your choice: ");

    Ah... But now that I have looked at it some more, I have noticed that the array of int is created in your IntegerList class...
    so you want to change your binarySearch() method...
    from...
    public static int binarySearch (int[] list,int val)to
    public int binarySearch (int val)now it will search the list declared in your constructor...
    and also note that static is remove to eliminate the non-static reference from static context error...
    so in IntegerList.java, that method signature should look like this...
    public int binarySearch (int val)// take only one arguement and...
    // check against internal int [] listand you call it like this...
    loc = list.binarySearch(val);// not changednow all you have to do it get your list populated with random integers for the rest to work... I leave that to you...
    - MaxxDmg...
    - ' He who never sleeps... '

  • Having Problems with removing an addEventListener

    Greetings Adobe community,
    Im currently having a problem with my flash assignment,
    I have a:   this.addEventListener(Event.ENTER_FRAME, onPanSpace);
    who is causing errors when I go to the next frame:
    TypeError: Error #1009: Cannot access a property or method of a null object reference.
              at Confabulation_fla::mc2_3/onPanSpace()[Confabulation_fla.mc2_3::frame1:13]
    I would like to remove this addEventListener when I go to the next frame(which is by clicking on a door) but to be honest, I have no clue how.
    So I ask you "How do I remove this addEventListener on my next frame?"
    Kind Regards
    Notnao

    function addTheListeners():void {
         addEventListener(Event.ENTER_FRAME, onPanSpace);
         addEventListener(Event.REMOVED_FROM_STAGE, cleanUp);
    var snelheidNum:Number = 0.5;
    var snelheid:Number = 0;
    var MouseIsLinks:Boolean;
    function onPanSpace(e:Event):void
              var afstand:Number = Math.round(this.x - this.bg1.x);
              var percentage:Number = Math.floor((100 * afstand) / (this.bg1.width - root.stage.stageWidth));
              snelheid = -((root.stage.mouseX - (root.stage.stageWidth / 2))/110)/snelheidNum;
              if(root.stage.mouseX < (root.stage.stageWidth / 2)) { MouseIsLinks = true }
              if(root.stage.mouseX > (root.stage.stageWidth / 2)) { MouseIsLinks = false }
              if( (percentage < (1 - 100) && MouseIsLinks) || (percentage > (80 - 100) && !MouseIsLinks)) {snelheid = 0;}
              this.bg1.x += (snelheid / 1);
    function cleanUp(e:Event):void {
         removeEventListener(Event.ENTER_FRAME, onPanSpace);
         removeEventListener(Event.REMOVED_FROM_STAGE, cleanUp);
    //this.addEventListener(Event.ENTER_FRAME, onPanSpace);
    stop();
    This is what I got now, It removes the addeventListeners and I have no problems at the next frame but now my first frame doesnt have the onPanspace effect.

  • Serious problems with paint method, need major help

    I've got a mjor problem with displaying a BufferedImage Object. My program takes in an image, i call a method on it which creates an ImageObject, imgObj, which contains the following values:
    Image width, called width
    Image height, called height,
    array of 8 bit integers for the ARGB value of each pixel, called int [] imgCol
    I've managed to create a Buffered Image of the form:
    //make a buffered image ready to take the array of pixels
    bufferedImage = new BufferedImage( imgObj.width, imgObj.height, BufferedImage.TYPE_INT_ARGB);
    Then I set the ARGB values in the BufferedImage, by specifying the integer array of pixels, imgCol:
    //set the values in the buffered image using buffered image method
    bufferedImage.setRGB( 0, 0, imgObj.width, imgObj.height, imgObj.imgCol, 0, imgObj.width);
    Then I try to paint it, callling repaint() in the same method as the code above.
    Now when I try the following stuff I get a Null Pointer Exception:
    public void paint(Graphics g){
         paintImage(g);
    public void paintImage(Graphics g){
         Graphics2D ImageGraphic2 = (Graphics2D)g;
         // Draws the buffered image to the screen.
         ImageGraphic2.drawImage(bufferedImage, 0, 0, this);
    Can anyone help me in fixing this problem?

    Here's the full stack trace, can't make heads or tails of what it's about though
    Full thread dump Java HotSpot(TM) Client VM (1.4.1_01-b01 mixed mode):
    "AWT-EventQueue-0" prio=7 tid=0x0ADAB440 nid=0xb38 in Object.wait() [ef5f000..e
    5fd8c]
    at java.lang.Object.wait(Native Method)
    - waiting on <02F78010> (a java.awt.EventQueue)
    at java.lang.Object.wait(Object.java:426)
    at java.awt.EventQueue.getNextEvent(EventQueue.java:333)
    - locked <02F78010> (a java.awt.EventQueue)
    at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchT
    read.java:161)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThr
    ad.java:150)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:144
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:136
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:99)
    "DestroyJavaVM" prio=5 tid=0x00034DB8 nid=0x5dc waiting on condition [0..7fadc]
    "Java2D Disposer" daemon prio=10 tid=0x0AD4D1F0 nid=0x218 in Object.wait() [ef9
    000..ef9fd8c]
    at java.lang.Object.wait(Native Method)
    - waiting on <02FE9938> (a java.lang.ref.ReferenceQueue$Lock)
    at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:111)
    - locked <02FE9938> (a java.lang.ref.ReferenceQueue$Lock)
    at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:127)
    at sun.java2d.Disposer.run(Disposer.java:97)
    at java.lang.Thread.run(Thread.java:536)
    "AWT-Windows" daemon prio=7 tid=0x0ACB1528 nid=0x63c runnable [aeff000..aeffd8c
    at sun.awt.windows.WToolkit.eventLoop(Native Method)
    at sun.awt.windows.WToolkit.run(WToolkit.java:253)
    at java.lang.Thread.run(Thread.java:536)
    "AWT-Shutdown" prio=5 tid=0x0ACB1158 nid=0x480 in Object.wait() [aebf000..aebfd
    c]
    at java.lang.Object.wait(Native Method)
    - waiting on <02FA4990> (a java.lang.Object)
    at java.lang.Object.wait(Object.java:426)
    at sun.awt.AWTAutoShutdown.run(AWTAutoShutdown.java:259)
    - locked <02FA4990> (a java.lang.Object)
    at java.lang.Thread.run(Thread.java:536)
    "Signal Dispatcher" daemon prio=10 tid=0x009E8350 nid=0x788 waiting on conditio
    [0..0]
    "Finalizer" daemon prio=9 tid=0x0003E978 nid=0x3f0 in Object.wait() [ab1f000..a
    1fd8c]
    at java.lang.Object.wait(Native Method)
    - waiting on <02F699B0> (a java.lang.ref.ReferenceQueue$Lock)
    at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:111)
    - locked <02F699B0> (a java.lang.ref.ReferenceQueue$Lock)
    at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:127)
    at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159)
    "Reference Handler" daemon prio=10 tid=0x0003D548 nid=0x7a4 in Object.wait() [a
    df000..aadfd8c]
    at java.lang.Object.wait(Native Method)
    - waiting on <02F69A18> (a java.lang.ref.Reference$Lock)
    at java.lang.Object.wait(Object.java:426)
    at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:113)
    - locked <02F69A18> (a java.lang.ref.Reference$Lock)
    "VM Thread" prio=5 tid=0x009E52C0 nid=0x974 runnable
    "VM Periodic Task Thread" prio=10 tid=0x009E7040 nid=0x4e4 waiting on condition

  • Problem with removing spaces

    Hi,
    I have a problem with spaces. There are constantly two spaces open named Safari. I cannot remove them. See enclosed image. Any ideas how to do it?

    Further research shows that the spaces are indeed there when I view the page source; however, the spaces are not being rendered.
    I removed the css style sheet that was being applied to the shuttle and it made no difference.

  • Problem with getPrimaryKeys method in DatabaseMetaData

    I'm using the above mentioned method to get primary keys from a DB2 database. I estimate that 95% of the time it performs as expected, but there are 7 tables in my database, that as far as I can see, are no different to any others and it fails to work with these. Looking at the tables in the DB2 control centre shows them all having keys, no different to any of the other tables. Also of note is that the tables it fails on are next to each other, it fails on tables 68 and 69, 135 and 136 and 200,201 and 202. Just wondering if anyone else has seen this problem before and if they found any solutions for it?
    Just ran through the program again and it's failed on a completely different set of tables, they're all sequential as well, could this be a problem with my connection to the db?
    Edited by: jnaish on Aug 14, 2008 7:38 AM

    post the ddl and code i guess
    i doubt this is related to your connection
    Also of note is that the tables it fails on are next to each other, i can't imagine that would be a problem, but sounds like it'd be easy for you to prove your theory with a simple test

  • Problem with Vector method addElement

    I am new to Java. I am using JDK 1.3. I am writing a program that will convert a text file to a binary file that stores a Vector object. I have narrowed my problem to the method that reads the text file and creates my vector. Each element in my vector stores an integer and a string variable. The reading of the text file works find and the creation of my record works find. It seems that the storing of the record in the vector is not working. When I print the first 10 elements of the vector, it have the same record(the last record of my text file). What is wrong with the method below? I am also appending the result of running my program.
    private static void readTextFile(File f) {
    try {
    FileReader fileIn = new FileReader(f);
    BufferedReader in = new BufferedReader(fileIn);
    String line;
    int i;
    SsnLocationRecord recordIn = new SsnLocationRecord();
    int ctr = 0;
    while (true) {
    line = in.readLine();
    if (line == null)
    break;
    ctr += 1;
    i = line.indexOf(" ");
    recordIn.putAreaNumber(Integer.parseInt(line.substring(0,i).trim()));
    recordIn.putLocation(line.substring(i+1).trim());
    records.addElement(recordIn);
    if (ctr < 11)
    System.out.println(recordIn);
    in.close();
    } catch (IOException e) {
    System.out.println ("Error reading file");
    System.exit(0);
    for (int i = 0; i < 11; i++)
    System.out.println((SsnLocationRecord) records.elementAt(i));
    RESULTS:
    C:\Training\Java>java ConvertTextFileToObjectFile data\ssn.dat
    0 null
    3 New Hampshire
    7 Maine
    9 Vermont
    34 Massachusetts
    39 Rhode Island
    49 Connecticut
    134 New York
    158 New Jersey
    211 Pennsylvania
    680 Nevada
    680 Nevada
    680 Nevada
    680 Nevada
    680 Nevada
    680 Nevada
    680 Nevada
    680 Nevada
    680 Nevada
    680 Nevada
    680 Nevada
    C:\Training\Java>

    First of all it would be better if you did a priming read and then checked line == null in the while statement instead of the way you have it.
    ctr++ will also accomplish what ctr +=1 is doing.
    you need to create a new instance of SsnLocationRecord for each line read. What you are doing is overlaying the objects data each time you execute the .putxxxx methods. The reference to the object is placed in the vector. The actual object is still being updated by the .putxxx methods (NOTE : THIS IS THE ANSWER TO YOUR MAIN QUESTION).
    you close should be in a finally statement.
    To process through all the elements of a Vector create an Enumeration and then use the nextElement() method instead of the elementAt is probably better. (Some will argue with me on this I am sure).
    Also, on a catch do not call System.exit(0). This will end your JVM normally. Instead throw an Exception (Runtime or Error level if you want an abnormal end).

  • Problem with GetLineData Method

    Hi
    I have a program to save each row of a A/R Invoice as one A/R Invoice document.
    In the program, I read each line of data from matrix with GetLineData Method, and set the data to business object, and add the document at a global transaction.
    Adding the first line of document works fine, but the second line has a problem. There is no response in the  the GetLineData Method.
    Does anybody have any idea?
    The code looks like the following:
    Private Sub MakeSalesInvoice(ByRef BubbleEvent As Boolean)
         Dim i As Integer                                             
           Try
                If Not (SBO_COMPANY.InTransaction) Then
                    Call SBO_COMPANY.StartTransaction()
                End If
                oMatrix = oForm.Items.Item("38").Specific                 
                For i = 1 To oMatrix.RowCount - 1
                    oMatrix.GetLineData(i)                //here, there is no response when i >=2
                    subSetInvoiceH()
                    subSetInvoiceL()
                    If InvoiceH.Add() <> 0 Then
                       Exit Sub
                    End If
                    InvoiceH = Nothing
                    InvoiceL = Nothing
                    InvoiceLA = Nothing
                Next
                If SBO_COMPANY.InTransaction Then
                    SBO_COMPANY.EndTransaction(SAPbobsCOM.BoWfTransOpt.wf_Commit)
                End If
                BubbleEvent = False
                oForm.Mode = SAPbouiCOM.BoFormMode.fm_OK_MODE
                oForm.Mode = SAPbouiCOM.BoFormMode.fm_ADD_MODE
            Catch ex As Exception
                If SBO_COMPANY.InTransaction Then
                    SBO_COMPANY.EndTransaction(SAPbobsCOM.BoWfTransOpt.wf_RollBack)
                End If
            End Try
       End Sub
       Private Sub subSetInvoiceH()
       //code to set A/R Invoice header data to SAPbobsCOM.Documents
       End Sub
       Private Sub subSetInvoiceL()
      //code to set A/R Invoice line data to SAPbobsCOM.Documents_Lines
       End Sub
    Can someone help me?
    Thanks in advance.

    Thanks for the response.
    I tried GetLineData(i-1), but got error "Row - Invalid index" message.
    I think the index of the datasource has no problem in my program since i set -1 when i get the data from datasource.
    The following is the code when setting data to the business objects.
    Private Sub subSetInvoiceH()
            Dim nCount As Integer
            Dim oDBDataSource As SAPbouiCOM.DBDataSource
            oDBDataSource = oDBDataSources.Item("OINV")
            nCount = oDBDataSource.Size - 1
            InvoiceH = SBO_COMPANY.GetBusinessObject(SAPbobsCOM.BoObjectTypes.oInvoices)
            With InvoiceH
                If oDBDataSource.GetValue("CardCode", nCount) <> "" Then
                    .CardCode = oDBDataSource.GetValue("CardCode", nCount)
                Else
                    .CardCode = ""
                End If
                If oDBDataSource.GetValue("DocDate", nCount) <> "" Then
                    .DocDate = oDBDataSource.GetValue("DocDate", nCount).Insert(4, "/").Insert(7, "/")
                Else
                    .DocDate = "0"
                End If
            End With
        End Sub
    Mika

Maybe you are looking for

  • Opening and closing balance for Excise duties for a particular plant

    Dear Experts,                      Please suggest how I can get balance of excise duties for a particular plant at a given date in registers(RG23A & RG23C PartII). Thanks Lokesh

  • Airport Extreme update to 7.6.3 orphans my Dell Latitude D620

    Anyone else experiencing this? I dutifully upgraded my Airport Extreme to 7.6.3 from 7.6.1 as instructed by my computer. This is the latest version of the Airport Extreme - simultaneous dual band, etc. Purchased a few weeks ago. My Dell Latitude D620

  • Changing HD 1440 X 1080 video into NTSC

    Hi, I took most of my video in HD 1440 X 1080 and am finding it too slow to render. I want to complete my project soon. Is it possible to easily change the 1440 X 1080 video int NTSC so that the project won't take so long? Thanks, Andy

  • Beasvc fails to start, a solution

    I had a problem in starting WebLogic Server as a Windows service. The service didn't start and reported the message "The service did not report an error". All the parameters of WebLogic Server were correct, so the problem was elsewhere. The problem w

  • Autorization error message..

    Hi All, We have some standard CRM business aplications running on portal. Now if a user accesses a tab where access was removed but before NWIDM finishes processing, it is possible they will see the tab in EP, but receive an error in the application.