Home | Contact Us | FAQ | Search & Site Map | Link to Us
Sign In | Join | Other 45 Sites in Network
HomeAnnouncementsWhite Papers
Discussion GroupsFirst AidDatabasesJavaBeansGUIJava 3DVirtual MachineCORBASecurityToolsGeneral
Java DirectoryOpen Source ProjectsSample Book ChaptersUser GroupsWeb Resources
Related Topics
Databases.NETMore Topics ...

Java Forum / General / October 2007

Tip: Looking for answers? Try searching our database.

java unchecked or unsafe operations error

Thread view: 
solomon13000@gmail.com - 04 Oct 2007 13:13 GMT
I am getting the following error

Note: C:\Documents and Settings\Eugene\Desktop\client\LocalBoard.java
uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.

for the code bellow:

Toobar.java
----------------

import javax.swing.*;
import javax.swing.event.*;
import java.awt.event.*;
import java.awt.*;
import java.util.Vector;
import java.util.Iterator;

public class Toolbar extends JPanel implements ChangeListener{
   private WhiteboardState whiteboardState;
   private Vector toolButtons;
   public Toolbar(WhiteboardState w, LayoutManager l){
    super(l);
    whiteboardState = w;
    toolButtons = new Vector();
   }

   public Component add(Component c){
    if (c instanceof ToolButton){
       toolButtons.add(c);
    }
    return super.add(c);
   }

   public void stateChanged(ChangeEvent e){
    ToolButton changed = (ToolButton)e.getSource();
    if (changed.isSelected()){
       whiteboardState.currentTool = changed.tool;
       changed.setSelected(true);
    } else {
       whiteboardState.currentTool = null;
    }
    Iterator i = toolButtons.iterator();
    ToolButton t;
    while(i.hasNext()){
       t = (ToolButton) i.next();
       if (t != changed){
        t.setSelected(false);
       }
    }
    repaint();
   }
}

LocalBoard.java
----------------------

import java.util.*;
import java.rmi.*;

public class LocalBoard implements ShapeBuffer {

   protected Hashtable shapes; // our list of shapes
   protected int minZ = Integer.MAX_VALUE;
   protected int maxZ = Integer.MIN_VALUE;

   public LocalBoard() {
       shapes = new Hashtable();
   }

   public Updater trylock(Shape s) {
    // Unimplemented in LocalBoard
    // (don't modify this class; just write RemoteBoard)
    return null;
   }

   /** Returns read-only list of content in the canvas */
   public Collection getAllShapes() throws RemoteException {
       Enumeration e;
       Integer crKey;
       List v = new ArrayList();
       Shape shp;

       for(e = shapes.keys();e.hasMoreElements();) {
           crKey = (Integer)e.nextElement();
           shp = (Shape)shapes.get(crKey);
           v.add(shp);
       }

       // sorting by ID
       Collections.sort(v,new Comparator(){

               public int compare(Object arg0, Object arg1) {
                   Shape s1, s2;

                   s1 = (Shape)arg0;
                   s2 = (Shape)arg1;

                   return s1.getID() - s2.getID();
               }
           });

       return v;
   }

   /** Add a subscriber */
   public void attach(Subscriber o) {
    // Unimplemented in LocalBoard
    // (don't modify this class; just write RemoteBoard)
   }

   /** Remove a subscriber */
   public void detach(Subscriber o) {
    // Unimplemented in LocalBoard
    // (don't modify this class; just write RemoteBoard)
   }

   public int addShape(Shape newShape) throws InvalidShapeException,
OverflowException, RemoteException {
       int ID;
       int zIndex = newShape.getZIndex();

       if(newShape == null) throw new InvalidShapeException("Null
shape data in addShape!");
       if(getShapeCount() >= MAX_CAPACITY) throw new
OverflowException("Shape buffer overflow!");

       ID = newShape.getID();
       shapes.put(new Integer(ID),newShape);

       if(minZ > zIndex) minZ = zIndex;
       if(maxZ < zIndex) maxZ = zIndex;

       return ID;
   }

   public boolean containsShape(int ID) throws RemoteException {
       return shapes.containsKey(new Integer(ID));
   }

   public boolean isEmpty() throws RemoteException {
       return (shapes.size() == 0);
   }

   public int getShapeCount() throws RemoteException {
       return shapes.size();
   }

   public Shape getShape(int ID) throws NoSuchShapeException,
RemoteException {
       if(containsShape(ID)) return (Shape)shapes.get(new
Integer(ID));
       else throw new NoSuchShapeException("No shape with ID " + ID);
   }

   public void bringToFront(int ID) throws NoSuchShapeException,
RemoteException {
   }

   public void sendToBack(int ID) throws NoSuchShapeException,
RemoteException {
   }

   public Collection getByZIndex(int z) throws RemoteException {
       return null;
   }

   public int getMinZIndex() throws RemoteException {
       return 0;
   }

   public int getMaxZIndex() throws RemoteException {
       return 0;
   }

}

How do I solve the problem?

Your help is kindly appreciated.
Arne Vajhøj - 04 Oct 2007 13:38 GMT
> I am getting the following error
>
[quoted text clipped - 3 lines]
>
> for the code bellow:

> import java.util.Vector;

>     private Vector toolButtons;

I am pretty sure that it want you to use generics.

     private Vector<Something> toolButtons;

possible:

     private Vector<ToolButton> toolButtons;

Arne
Chris Dollin - 04 Oct 2007 13:52 GMT
> I am getting the following error
>
[quoted text clipped - 3 lines]
>
> for the code bellow:

("below", not "bellow". A "code bellow" would be some loud programming.)

(fx:snip)

> How do I solve the problem?

Recompile with -Xlint:unchecked for details, then fix the details.

Signature

Chris "DWIS" Dollin

Hewlett-Packard Limited     Cain Road, Bracknell,                registered no:
registered office:          Berks RG12 1HN                       690597 England

xen - 05 Oct 2007 01:50 GMT
>I am getting the following error
>
[quoted text clipped - 3 lines]
>
>for the code bellow:

<snip>

>How do I solve the problem?
>
>Your help is kindly appreciated.

It's not a problem, but you can 'solve' it by learning how to use
generics:

http://java.sun.com/j2se/1.5/pdf/generics-tutorial.pdf


Free Magazines

Get these publications absolutely FREE for up to 12 months. There are no hidden fees and no obligation. Simply choose a title, complete the application form and submit it. Read more ...

Oracle MagazineNetwork ComputingComputer WorldBio-IT WorldeWeekInformation WeekInfosecurity
 
Sign In
Join
My Latest Posts
My Monitored Threads
My Blog
My Photo Gallery
My Profile
My Homepage

Start New Thread
Enable EMail Alerts
Rate this Thread



©2008 Advenet LLC   Privacy Policy - Terms of Use
This website includes both content owned or controlled by Advenet as well as content owned or controlled by third parties.