Overriding a method which is protected

I have written a subclass 'B' to a parent class 'A' which is in different package than the parent class, but one of the method (almost same as parent classes method) which i have overridden in the subclass invokes a method (which has 'protected' access) of other classes say class 'C' of parent class package which will not work due to visibility. What is the best way to over come this problem. I have to override the code which is in the parent class.
a) Is it to create subclass of 'C' in the same package of class 'B' and override the method which is being called.
b) Is it to name the subclass package similar to the parent class Package.
Note : - Parent class package is in different project.

If it's protected then either it was made that way for a good reason (to not let you invoke it, so -- success!), or not for a good reason (bad design).
The simple answer is you can't invoke that method as it currently stands, as you already know due to the compile time error message you're getting. If you're in control of its design and actually do need it to be accessed from outside its own package, then make it public.

Similar Messages

  • How to override a method in an inner class of the super class

    I have a rather horribly written class, which I need to adapt. I could simply do this if I could override a method in one of it's inner classes. My plan then was to extend the original class, and override the method in question. But here I am struggling.
    The code below is representative of my situation.
    public class ClassA
       ValueChecks vc = null;
       /** Creates a new instance of Main */
       public ClassA()
          System.out.println("ClassA Constructor");
          vc = new ValueChecks();
          vc.checkMaximum();
         // I want this to call the overridden method, but it does not, it seems to call
         // the method in this class. probably because vc belongs to this class
          this.vc.checkMinimum();
          this.myMethod();
       protected void myMethod()
          System.out.println("myMethod(SUPER)");
       protected class ValueChecks
          protected boolean checkMinimum()
             System.out.println("ValueChecks.checkMinimum (SUPER)");
             return true;
          protected boolean checkMaximum()
             return false;
    }I have extended ClassA, call it ClassASub, and it is this Class which I instantiate. The constructor in ClassASub obviously calls the constructor in ClassA. I want to override the checkMinimum() method in ValueChecks, but the above code always calls the method in ClassA. The ClassASub code looks like this
    public class ClassASub extends ClassA
       public ClassAInner cias;
       /** Creates a new instance of Main */
       public ClassASub()
          System.out.println("ClassASub Constructor");
       protected void myMethod()
          System.out.println("myMethod(SUB)");
       protected class ValueChecks extends ClassA.ValueChecks
          protected boolean checkMinimum()
             System.out.println("ValueChecks.checkMinimum (SUB)");
             return true;
    }The method myMethod seems to be suitably overridden, but I cannot override the checkMinimum() method.
    I think this is a stupid problem to do with how the ValueChecks class is instantiated. I think I need to create an instance of ValueChecks in ClassASub, and pass a reference to it into ClassA. But this will upset the way ClassA works. Could somebody enlighten me please.

    vc = new ValueChecks();vc is a ValueChecks object. No matter whether you subclass ValueChecks or not, vc is always of this type, per this line of code.
    // I want this to call the overridden method, but it does not, it seems to > call
    // the method in this class. probably because vc belongs to this class
    this.vc.checkMinimum();No, it's because again vc references a ValueChecks object, because it was created as such.
    And when I say ValueChecks, I mean the original class, not the one you tried to create by the same name, attempting to override the original.

  • Overriding redo method in drawing arrows

    I have to undo and redo of path and arrows to them.at a time i need only either left arrow undo or right arrow undo depending on the direction in which path is drawn ie if its frm left to right then arrowhead left
    and if its from right to left tthen arrowheadtright.
    Undo is ok But problem comes with redo.Since if the last drawn path is from left to right then arrowright becomes null.pls suggest me a method overriding redo method for left and right arrows
    private void redoButtonActionPerformed(java.awt.event.ActionEvent evt) {                                          
      try { m_edit.redo(); }
            catch (CannotRedoException cre)
            { cre.printStackTrace(); }
    drawpanel.repaint();
    undoButton.setEnabled(m_edit.canUndo());
    redoButton.setEnabled(m_edit.canRedo());  
    private void undoButtonActionPerformed(java.awt.event.ActionEvent evt) {                                          
            try { m_edit.undo(); }
             catch (CannotRedoException cre)
             { cre.printStackTrace(); }
             drawpanel.repaint();
             undoButton.setEnabled(m_edit.canUndo());
             redoButton.setEnabled(m_edit.canRedo());
    class Edit extends AbstractUndoableEdit {
           protected Vector drawarc;
          protected Curve path;
          protected Vector vectlabel;
          protected drawlabel labelarc;
         protected Vector arrowheadleft;
         protected drawArrowHeads arrow1;
         protected Vector arrowheadright;
         protected  drawArrowHeadsecond arrow2;
           public Edit( Vector drawarc, Curve path ,Vector vectlabel,drawlabel labelarc,Vector arrowheadleft,drawArrowHeads arrow1,Vector arrowheadright,drawArrowHeadsecond arrow2)
              this.drawarc = drawarc;
              this.path = path;
                    this.vectlabel=vectlabel;
                    this.labelarc=labelarc;
                    this.arrowheadleft=arrowheadleft;
                    this.arrow1=arrow1;
                    this.arrowheadright=arrowheadright;
                    this.arrow2=arrow2;
         public void undo() throws CannotUndoException {
              drawarc.remove(path);
                    vectlabel.remove(labelarc);
                    arrowheadleft.remove(arrow1);
                    arrowheadright.remove(arrow2);
         public void redo() throws CannotRedoException {
              drawarc.add( path);
                    vectlabel.add(labelarc);
                   // arrowheadleft.add(arrow1);
                   // System.out.println("The arrowheadleft vector inside Edit method contains "+arrowheadleft.toString());
                   arrowheadright.add(arrow2);
                   System.out.println("The arrowheadright vector inside Edit method contains "+arrowheadright.toString());
             public boolean canUndo() {
              return true;
         public boolean canRedo() {
              return true;
         public String getPresentationName() {
              return "Add Arc";
    m_edit=new Edit(drawarc, path , vectlabel, labelarc, arrowheadleft, arrow1, arrowheadright, arrow2);
    undoButton.setText(m_edit.getUndoPresentationName());
    redoButton.setText(m_edit.getRedoPresentationName());
    undoButton.setEnabled(m_edit.canUndo());
    redoButton.setEnabled(m_edit.canRedo());

    ..arrowright becomes null..Check for null value. If null, then do nothing with it.

  • Overriding toString method of entrySet() in LinkedHashMap

    Hi all,
    I got a LinkedHashMap which return a Set by entrySet() method. When I print the String represantation of the returned Set, I receive something like [key=value, key=value, key= value]. I, however, would like to override toString method so that I can implement my own representation of the Set class which is returned by entrySet() method. How can I do that if it's possible?

    i believe what Peter was saying was to overrider the Set (in your case...the concrete LinkedhashSet class)
    you're not implementing the add, get, contains, etc..function..you're extending it.
    after extending it..you can overide any public and protected method...any other method not overide is still there for you to use.
    so you would have something like this
    public class MyLinkHashSet extends LinkHashSet{
        public String toString(){
             return a String representation you want 
        public Object getMyObject(){ return myObject; }  // your own method
       // you still have all of the other LinkHashSet methods to use
    }

  • HELP: Inheritance question: Overriding a method.

    Hi all.
    I have one class: BatchJob.java which defines the following method:
    (1) protected void handleException(Exception e) {
         setInitError( true );
         printTrace(getClass().getName(), "*** ERROR: " + e.toString());
         createMailError(e);
    Another class JBDCBatchJob.java which extends BatchJob, overrides the previous method like this:
    (2) protected void handleException(SQLException sqlEx) {
         setInitError( true );
         printTrace(getClass().getName(), getSqlQuery(), sqlEx);
         createMailError(getSqlQuery(), sqlEx);
    where getSqlQuery() is a getter for a String member field which contains the last SQL query sent to the JDBC Driver.
    In another class (say SimpleJDBCBatchJob) which extends JDBCBatchJob, I've got the following code fragment:
    try {
    // statements that may throw SQLException or in general Exception
    catch (Exception e) {
    handleException( e );
    I have realized that the method invoked by the JVM when an SQLException is thrown in SimpleJDBCBatchJob is (1), that is, the "handleException" defined in BatchJob and not that in JDBCBatchJob which it should (or at least, that's what I meant). Why is it? Is it possible to accomplish this without having to rename the method (2), I mean, using method overriding? Any idea would be highly appreciated. THANKS in advance.

    You didn't override the method handleException in JBDCBatchJob, you just overloaded it. So int JBDCBatchJob, you actually had two versions of handleException, one that took a parameter of the type Exception, one that took a parameter of the type SQLException.
    So, in SimpleJDBCBatchJob, you need to have a catch block like
    try {
    // statements that may throw SQLException or in general Exception
    catch (SQLException sqle) {
    handleException( sqle );
    catch (Exception e) {
    handleException( e );
    This would call your handleException in BatchJob if a general exception was thrown, and the handleException in JBDCBatchJob if a SQLException was thrown from the try block.
    Hope that makes things clearer for you.
    Alan

  • Is not abstract and does not override abstract method tablechanged

    I will remove all the gui code to make it shorter, but my problem lies with my InteractiveTableModelListener.
    public class Meet extends JPanel{
      private static void createAndShowGUI() {
            JFrame frame = new JFrame("MEET_dataTable");
            frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            frame.add(new Meet(), BorderLayout.CENTER);
            frame.pack();
            frame.setVisible(true);
    public class InteractiveTableModelListener implements TableModelListener {
         public void TableChanged(TableModelEvent evt) {
      if (evt.getType() == TableModelEvent.UPDATE) {
          int column = evt.getColumn();
          int row = evt.getFirstRow();
          dataTable.setColumnSelectionInterval(column + 1, column + 1);
          dataTable.setRowSelectionInterval(row, row);
    class InteractiveRenderer extends DefaultTableCellRenderer {
      protected int interactiveColumn;
      public InteractiveRenderer(int interactiveColumn) {
          this.interactiveColumn = interactiveColumn;
    public Component getTableCellRendererComponent(JTable dataTable,
         Object value, boolean isSelected, boolean hasFocus, int row,
         int column)
      Component c = super.getTableCellRendererComponent(dataTable, value, isSelected, hasFocus, row, column);
       if (column == interactiveColumn && hasFocus) {
         if ((Meet.this.tableModel.getRowCount() - 1) == row &&
            !Meet.this.tableModel.hasEmptyRow())
             Meet.this.tableModel.addEmptyRow();
        highlightLastRow(row);
      return c;
    public void highlightLastRow(int row) {
         int lastrow = tableModel.getRowCount();
      if (row == lastrow - 1) {
          dataTable.setRowSelectionInterval(lastrow - 1, lastrow - 1);
      else {
          dataTable.setRowSelectionInterval(row + 1, row + 1);
         dataTable.setColumnSelectionInterval(0, 0);
    public static void main(String[] args) {
            SwingUtilities.invokeLater(new Runnable() {
                public void run() {
                UIManager.put("swing.boldMetal", Boolean.FALSE);
                createAndShowGUI();
    }As i say, i have removed all the gui code to make it shorter, but in this code i create the table and add all the model to it. I am being returned with the error
    Meet.InteractiveTableModelListener is not abstract and does not override abstract method tableChanged(javax.swing.event.TableModelEvent)in javax.swing.event.TableModelListener
    what would be causing this error?
    Cheers

    Sorry, just figured out my silly error, the method is tableChanged not TableChanged.
    cheers
    TOPIC CLOSED
    Edited by: nick2price on Sep 11, 2008 7:08 AM

  • ...is not abstract and does not override abstract method compare

    Why am I getting the above compile error when I am very clearly overriding abstract method compare (ditto abstract method compareTo)? Here is my code -- which was presented 1.5 code and I'm trying to retrofit to 1.4 -- followed by the complete compile time error. Thanks in advance for your help (even though I'm sure this is an easy question for you experts):
    import java.util.*;
       This program sorts a set of item by comparing
       their descriptions.
    public class TreeSetTest
       public static void main(String[] args)
          SortedSet parts = new TreeSet();
          parts.add(new Item("Toaster", 1234));
          parts.add(new Item("Widget", 4562));
          parts.add(new Item("Modem", 9912));
          System.out.println(parts);
          SortedSet sortByDescription = new TreeSet(new
             Comparator()
                public int compare(Item a, Item b)   // LINE CAUSING THE ERROR
                   String descrA = a.getDescription();
                   String descrB = b.getDescription();
                   return descrA.compareTo(descrB);
          sortByDescription.addAll(parts);
          System.out.println(sortByDescription);
       An item with a description and a part number.
    class Item implements Comparable     
          Constructs an item.
          @param aDescription the item's description
          @param aPartNumber the item's part number
       public Item(String aDescription, int aPartNumber)
          description = aDescription;
          partNumber = aPartNumber;
          Gets the description of this item.
          @return the description
       public String getDescription()
          return description;
       public String toString()
          return "[descripion=" + description
             + ", partNumber=" + partNumber + "]";
       public boolean equals(Object otherObject)
          if (this == otherObject) return true;
          if (otherObject == null) return false;
          if (getClass() != otherObject.getClass()) return false;
          Item other = (Item) otherObject;
          return description.equals(other.description)
             && partNumber == other.partNumber;
       public int hashCode()
          return 13 * description.hashCode() + 17 * partNumber;
       public int compareTo(Item other)   // OTHER LINE CAUSING THE ERROR
          return partNumber - other.partNumber;
       private String description;
       private int partNumber;
    }Compiler error:
    TreeSetTest.java:25: <anonymous TreeSetTest$1> is not abstract and does not over
    ride abstract method compare(java.lang.Object,java.lang.Object) in java.util.Com
    parator
                public int compare(Item a, Item b)
                           ^
    TreeSetTest.java:41: Item is not abstract and does not override abstract method
    compareTo(java.lang.Object) in java.lang.Comparable
    class Item implements Comparable
    ^
    2 errors

    According to the book I'm reading, if you merely take
    out the generic from the code, it should compile and
    run in v1.4 (assuming, of course, that the class
    exists in 1.4). I don't know what book you are reading but that's certainly incorrect or incomplete at least. I've manually retrofitted code to 1.4, and you'll be inserting casts as well as replacing type references with Object (or the erased type, to be more precise).
    These interfaces do exist in 1.4, and
    without the generics.Exactly. Which means compareTo takes an Object, and you should change your overriding method accordingly.
    But this raises a new question: how does my 1.4
    compiler know anything about generics? It doesn't and it can't. As the compiler is telling you, those interfaces expect Object. Think about it, you want to implement one interface which declares a method argument type of Object, in several classes, each with a different type. Obviously all of those are not valid overrides.

  • Overriding a method in abap

    In Java it is simple to extend a class and override a method - the whole idea of polymorphism. In abap, I'm attempting to do the same, but don't know quite how. I've created as a demo a zclass and made a sap standard class its superclass in properties. How do I override a protected method from here?

    Marcin says:
    Unfortunatelly overriding is not possible in ABAP, only redefinition is allowed. The method singature must stay the same in all subsequent classes.
    I guess,
    Overriding - Redefinition of the implementation of inherited method. This is possible by addition REDEFINITION to the method.
    Overloading - Changing the method parameters of inherited method
    Regards,
    Naimesh Patel

  • Urgent pls-AdapterActivatorPOA overrides final method Error

    I am getting the following error when trying to access our reports .jsp files.
    java.lang.VerifyError: class org.omg.PortableServer.AdapterActivatorPOA overrides final method .
         at java.lang.ClassLoader.defineClass0(Native Method)
         at java.lang.ClassLoader.defineClass(ClassLoader.java:537)
         at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:123)
         at com.evermind.util.OC4JSecureClassLoader.defineClassEntry(OC4JSecureClassLoader.java:172)
    etc. . .
    No solutions forthcomming on the web and we have tried everything we can think of. Is this perhaps a java version problem. Seems that 9.0.4 is running java version 1.4.2. We have a staging area with a 9i server. It runs fine (java version 1.3).
    Also of note is that reports test implementation works fine. If we move our files to this location the reports come up. No graphs are displayed but the data is there and no error comes up.
    As a note we have replaced the reports_tld.jar in the ear with the one from the test area and redeployed with no changes (error returns).
    Any explination would be appreciated.
    Rhys Parry

    Hi,
    You need to check the Sampling procedure in QDV2 T-code
    In assignments check for which sampling type and valuation mode you had selected.Becuase you might choosed a valuation type which does not support control chart type.But for MIC you might ticked the chart type in control indicator.
    Manoj.N

  • Overriding executeQuery Method in VOImpl in oaf

    Hi All,
    I am trying to override executeQuery method in my extended VOImpl method.
    The VO that I extended is JobsWithGradeLovVO.
    This is what I am writing in my method:
        public void executeQuery(){            
            writeLog("In the executeQuery");
            OADBTransaction tx = ((OAApplicationModuleImpl)getApplicationModule()).getOADBTransaction();               
            String where_grade = getCustomWhereClause(tx);
            this.setBindingStyle(1);
            writeLog("The binding style is: "+this.getBindingStyle());
            writeLog("The where clause is: "+where_grade);
            this.setWhereClause(null);
            this.setWhereClauseParams(null);       
            this.setWhereClauseParam(0, where_grade);
            //this.setWhereClause(where_grade);                
            String query = this.getQuery();       
            writeLog("The query is: "+query);               
            super.executeQuery();
    I modified the where clause of the Query in the xml  as (I added and vg.grade_id not in : 0 at the end of the where clause. The rest of it is the seeded one.):
    job.job_group_id = jgr.job_group_id  and jgr.internal_name = 'HR_'||:4  and (jgr.business_group_id = :5 or jgr.business_group_id is null) and  job.business_group_id = :6  and :7 between job.date_from and nvl(job.date_to ,:8) and job.job_id=vg.job_id(+) and :9=:9    and :10 between nvl(vg.date_from(+),:11) and nvl(vg.date_to(+),:12) and  hl.lookup_type(+)='YES_NO' and hl.lookup_code(+)=nvl2(vg.valid_grade_id,'Y',(decode(:13, -1,'', 'N'))) and pos.position_id(+)=:14 and job.job_id=pos.job_id(+) and :15 between nvl(pos.effective_start_date(+),:16) and nvl(pos.effective_end_date(+),:17) and vg.grade_id not in : 0
    I could observe that there is another "and" condition that is getting appended at the run time which is AND (( UPPER(job.NAME)  like UPPER( :2) ).
    When I try to run the page, I am getting Missing IN OR OUT PARAMETER at index 3.
    Could anyone please help me by letting me know the solution to this.
    Thanks,
    Srikanth

    doSelect() is not related to view object functionality.
    View Object's perform their own query, but coordinate via attribute mapping metadata, with underlying EO's.
    doSelect() is invoked on an Entity instance when:
    [list]
    [*]The entity instance needs to lock its row in the database (the lock boolean flag will be true if this is the case)
    [*]The entity instance needs to be faulted into memory either because of a findByPrimaryKey() in progress, or because business logic has referenced an attribute of the entity that was not already in the cache due to some view object's querying it.
    [list]

  • Overriding abstract methods with generic argument

    Hi,
    This post is similar to the one posted just before it :
    [http://forum.java.sun.com/thread.jspa?threadID=5281500|http://forum.java.sun.com/thread.jspa?threadID=5281500]
    I am trying to override an abstract method which has a generic argument and a problem occurs. I would like to find out whether what I am trying to do is not legal. The point of interest here is that the overriding class reduces the scope of the abstract class.
    The Abstract class AbstractAdapter defines accessors for a collection containing objects derived from AbstractPort. (<? extends AbstractPort>)
    The overriding class Adapter overrides these accessors but reduces the scope of the collection objects from <? extends AbstractPort> to <Port>. Port
    Here is my abstract class:
    public abstract class AbstractAdapter {
         public abstract Collection<? extends AbstractPort> getPorts();
         public abstract void setPorts(Collection<? extends AbstractPort> ports);
    }And here is the class that overrides it:
    public class Adapter extends AbstractAdapter {
         public Collection<Port> getPorts() {
              return null;
         public void setPorts(Collection<Port> ports) {
    }The Port class is shown here:
    public class Port extends AbstractPort {
    }Edited by: BenDave on Apr 2, 2008 4:39 AM

    It's not really the same.
    I don't have a compiler to hand, so this is off the top of my head. I expect you want something like this:
    public abstract class AbstractAdapter<T extends AbstractPort> {
         public abstract Collection<T> getPorts();
         public abstract void setPorts(Collection<T> ports);
    public class Adapter extends AbstractAdapter<Port> {
         public Collection<Port> getPorts() {
              return null;
         public void setPorts(Collection<Port> ports) {
    }

  • Override mainclass method partially

    Hi
    Wondering is it possible to override parent class method partially or not.
    I have a main class in which a method contains connection to database. based on the results set it will set the next page name.
    I am extending the main class and overriding the parent method and based on the db connection results i want to set the next page name to different page rather than the main class page name. Here is a simple example as of what i want to achieve.
    public class MainClass {
    public void doSomething(){
    try {
         int a = 2;
         int b = 1;
         if (a>b) {
    System.out.println("MYNAME");
         }else {
         System.out.println("NoName");
    System.out.println("Testing in progress...");
    }catch (Exception e) {
         System.out.println("Error " + e);
    public class ChildClass extends MainClass {
    //Override parent method
    public void doSomething() {
    super.doSomething();
    if (a>b) {
         System.out.println("NEWNAME");
    System.out.println("child testing...");
    The result i am looking at is,
    NEWNAME,
    child testing
    testing in progress...
    (order can be different also)
    Is it doeable at all???
    In a nutshell, i want to override only "if" Condition part of main class, all the remaining functionality should be same as parent method without rewriting all the code of parent method in child class.
    Thanks in advance..

    oh,i know your mean.
    But it is not possible to override parent classmethod partially.
    It is also not possible in other programming languages perhaps.
    Can the parent class be modified? if can, change the class like this:
    public class MainClass {
         public void doSomething(){
              try {
                   int a = 2;
                   int b = 1;
                   comp(a,b);
                   System.out.println("Testing in progress...");
              }catch (Exception e) {
                   System.out.println("Error " + e);
              public void comp(int intA, int intB)
              if (intA>intB) {
              System.out.println("MYNAME");
              }else {
              System.out.println("NoName");
    public class ChildClass extends MainClass {
    //Override parent method
              public void comp(int intA, int intB)
              if (intA>intB) {
              System.out.println("NEWNAME");
              }else {
              System.out.println("child testing...");

  • Overriding paint method hides my status bar icons

    Hi All,
                I use setStatus on MainScreen to add some image ButtonFields to my status bar.
                It shows up fine.
                But when I override paint method , it hides all the icons I added using setStatus.
               Any clue on this ? Thnx in advance.
              Here is my paint method:
    protected void paint(Graphics graphics) {
    super.paint(graphics);
    Bitmap image = ImageUtility.loadBitMap("header2.jpg");
    graphics.drawBitmap(0, 0, 500, image.getHeight(), image, 0, 0);
    for(int i =0; i < 5; i++ ){
    fieldList.drawListRow(fieldList, graphics, i, 50 + (i*50), 20);
    protected void paint(Graphics graphics) {         
             Bitmap image = ImageUtility.loadBitMap("header2.jpg");
             graphics.drawBitmap(0, 0, 500, image.getHeight(), image, 0, 0); for(int i =0; i < 5; i++ ){           fieldList.drawListRow(fieldList, graphics, i, 50 + (i*50), 20);
    Aranya

    Try Calling super.paint at the start or at the end ... it should do the trick

  • [svn:bz-trunk] 5137: Fix failing security tests on BlazeDS/ trunk by using a remote object to invalidate the FlexSession at the end of each test method which should cause each test method to run with a new /clean session.

    Revision: 5137
    Author: [email protected]
    Date: 2009-03-02 10:28:59 -0800 (Mon, 02 Mar 2009)
    Log Message:
    Fix failing security tests on BlazeDS/trunk by using a remote object to invalidate the FlexSession at the end of each test method which should cause each test method to run with a new/clean session. It looks like some test methods were leaving some things in a bad state which was causing the next test that ran to fail. These may be legitimate bugs/issues so we should investigate further to see what sequence of events gets things into a bad state but for these tests we want all of the test methods to run in isolation.
    Modified Paths:
    blazeds/trunk/qa/apps/qa-manual/WEB-INF/flex/services-config.mods.xml
    blazeds/trunk/qa/apps/qa-regress/WEB-INF/flex/remoting-config.mods.xml
    blazeds/trunk/qa/apps/qa-regress/testsuites/mxunit/tests/messagingService/security/stream ing-amf/JMSAuthSendSubscribeConstraintTest.mxml
    blazeds/trunk/qa/apps/qa-regress/testsuites/mxunit/tests/messagingService/security/stream ing-amf/MessagingAuthProSendTest.mxml
    blazeds/trunk/qa/apps/qa-regress/testsuites/mxunit/tests/messagingService/security/stream ing-http/JMSAuthSendSubscribeConstraintTest.mxml
    blazeds/trunk/qa/apps/qa-regress/testsuites/mxunit/tests/messagingService/security/stream ing-http/MessagingAuthProSendTest.mxml
    Added Paths:
    blazeds/trunk/qa/apps/qa-regress/WEB-INF/src/qa/messaging/SessionManager.java

    In general theory, one now has the Edit button for their posts, until someone/anyone Replies to it. I've had Edit available for weeks, as opposed to the old forum's ~ 30 mins.
    That, however, is in theory. I've posted, and immediately seen something that needed editing, only to find NO Replies, yet the Edit button is no longer available, only seconds later. Still, in that same thread, I'd have the Edit button from older posts, to which there had also been no Replies even after several days/weeks. Found one that had to be over a month old, and Edit was still there.
    Do not know the why/how of this behavior. At first, I thought that maybe there WAS a Reply, that "ate" my Edit button, but had not Refreshed on my screen. Refresh still showed no Replies, just no Edit either. In those cases, I just Reply and mention the [Edit].
    Also, it seems that the buttons get very scrambled at times, and Refresh does not always clear that up. I end up clicking where I "think" the right button should be and hope for the best. Seems that when the buttons do bunch up they can appear at random around the page, often three atop one another, and maybe one way the heck out in left-field.
    While I'm on a role, it would be nice to be able to switch between Flattened and Threaded Views on the fly. Each has a use, and having to go to Options and then come back down to the thread is a very slow process. Jive is probably incapable of this, but I can dream.
    Hunt

  • Is not abstract and does not override abstract method actionPerformed

    I dont how to corr. Please help!! and thank you very much!!
    import javax.swing.*;
    import java.awt.*;
    import java.awt.event.*;
    public class test extends JFrame implements ActionListener, ItemListener
              private CenterPanel centerPanel;
              private QuestionPanel questionPanel;
              private ButtonPanel buttonPanel;
              private ResponsePanel responsePanel;
              private JButton b1,b2,b3,b4,b5;               //Create five references to Jbutton instances
         private JTextField t1,t2,t3,t4,t5;          //Create five references to JTextField instances
              private JLabel label1;                    //Create one references to JLabel instances
              private JRadioButton q1,q2,q3;               //Create three references to JRadioButton instances
              private ButtonGroup radioGroup;               //Create one references to Button Group instances
              private int que1[] = new int[5];           //Create int[4] Array
              private int que2[] = new int[5];
              private int que3[] = new int[5];
              private String temp1, temp2, temp3, temp4, temp5, temp6, temp7, temp8, temp9, temp10,
                        temp11, temp12, temp13, temp14, temp15;
    public test (String header)
              super(header);
              Container container = getContentPane();
              label1 = new JLabel ("PLease click on your response to ");     
              q1 = new JRadioButton("I understand most of the content of this subject",true);
              add(q1);
              q2 = new JRadioButton("I see the relevance of the subject to my degree",false);
              add(q2);
              q3 = new JRadioButton("The workload in this subject is appropriate",false);
              add(q3);
              radioGroup = new ButtonGroup();               //JRadioButton belong to ButtonGroup
              radioGroup.add(q1);
              radioGroup.add(q2);
              radioGroup.add(q3);
              JPanel buttonPanel = new JPanel();
              JPanel responsePanel = new JPanel();
              JPanel questionPanel = new JPanel();
              JPanel centerPanel = new JPanel();
              b1 = new JButton ("Strongly DISAGREE");          //Instantiate JButton with text
              b1.addActionListener (this);               //Register JButtons to receive events
              b2 = new JButton ("DISAGREE");
              b2.addActionListener (this);
              b3 = new JButton ("Neither AGREE or DISAGREE");
              b3.addActionListener (this);
              b4 = new JButton ("AGREE");
              b4.addActionListener (this);
              b5 = new JButton ("Strongly AGREE");
              b5.addActionListener (this);
              buttonPanel.setLayout(new GridLayout(5,1));
              buttonPanel.add(b1);
              buttonPanel.add(b2);
              buttonPanel.add(b3);
              buttonPanel.add(b4);
              buttonPanel.add(b5);
              t1 = new JTextField ("0",3);               //JTextField contains empty string
              t2 = new JTextField ("0",3);
              t3 = new JTextField ("0",3);
              t4 = new JTextField ("0",3);
              t5 = new JTextField ("0",3);
              t1.setEditable( false );
              t2.setEditable( false );
              t3.setEditable( false );
              t4.setEditable( false );
              t5.setEditable( false );
              responsePanel.setLayout(new GridLayout(5,1));
              responsePanel.add(t1);
              responsePanel.add(t2);
              responsePanel.add(t3);
              responsePanel.add(t4);
              responsePanel.add(t5);
              questionPanel.setLayout(new GridLayout(4,1));
              questionPanel.add(label1);
              questionPanel.add(q1);
              questionPanel.add(q2);
              questionPanel.add(q3);
              centerPanel.add(buttonPanel,BorderLayout.CENTER);
              centerPanel.add(responsePanel,BorderLayout.EAST);
              container.add(centerPanel,BorderLayout.WEST);
              container.add(questionPanel,BorderLayout.NORTH);
              q1.addActionListener(
                   new ActionListener(){
              public void actionPerformed( ActionEvent e )          
    {                                        //actionPerformed of all registered listeners
              if (e.getSource() == b1) {
                   que1[0] = Integer.parseInt(t1.getText()) + 1;
                   String temp1 = String.valueOf(que1[0]);
              t1.setText(temp1);
              else if (e.getSource() == b2)     {
                   que1[1] = Integer.parseInt(t2.getText()) + 1;
                   String temp2 = String.valueOf(que1[1]);
              t2.setText(temp2);
              else if (e.getSource() == b3)     {
                   que1[2] = Integer.parseInt(t3.getText()) + 1;
                   String temp3 = String.valueOf(que1[2]);
              t3.setText(temp3);
              else if (e.getSource() == b4)     {
                   que1[3] = Integer.parseInt(t4.getText()) + 1;
                   String temp4 = String.valueOf(que1[3]);
              t4.setText(temp4);
              else if (e.getSource() == b5)     {
                   que1[4] = Integer.parseInt(t5.getText()) + 1;
                   String temp5 = String.valueOf(que1[4]);
              t5.setText(temp5);
    } //end action performed
              q2.addActionListener(
                   new ActionListener(){
              public void actionPerformed( ActionEvent e )          
    {                                        //actionPerformed of all registered listeners
              if (e.getSource() == b1) {
                   que2[0] = Integer.parseInt(t1.getText()) + 1;
                   String temp6 = String.valueOf(que2[0]);
              t1.setText(temp1);
              else if (e.getSource() == b2)     {
                   que2[1] = Integer.parseInt(t2.getText()) + 1;
                   String temp7 = String.valueOf(que2[1]);
              t2.setText(temp7);
              else if (e.getSource() == b3)     {
                   que2[2] = Integer.parseInt(t3.getText()) + 1;
                   String temp8 = String.valueOf(que2[2]);
              t3.setText(temp8);
              else if (e.getSource() == b4)     {
                   que2[3] = Integer.parseInt(t4.getText()) + 1;
                   String temp9 = String.valueOf(que2[3]);
              t4.setText(temp9);
              else if (e.getSource() == b5)     {
                   que2[4] = Integer.parseInt(t5.getText()) + 1;
                   String temp10 = String.valueOf(que2[4]);
              t5.setText(temp10);
    } //end action performed
              q3.addActionListener(
                   new ActionListener(){
              public void actionPerformed( ActionEvent e )          
    {                                        //actionPerformed of all registered listeners
              if (e.getSource() == b1) {
                   que3[0] = Integer.parseInt(t1.getText()) + 1;
                   String temp11 = String.valueOf(que3[0]);
              t1.setText(temp11);
              else if (e.getSource() == b2)     {
                   que3[1] = Integer.parseInt(t2.getText()) + 1;
                   String temp12 = String.valueOf(que3[1]);
              t2.setText(temp12);
              else if (e.getSource() == b3)     {
                   que3[2] = Integer.parseInt(t3.getText()) + 1;
                   String temp13 = String.valueOf(que3[2]);
              t3.setText(temp13);
              else if (e.getSource() == b4)     {
                   que3[3] = Integer.parseInt(t4.getText()) + 1;
                   String temp14 = String.valueOf(que3[3]);
              t4.setText(temp14);
              else if (e.getSource() == b5)     {
                   que3[4] = Integer.parseInt(t5.getText()) + 1;
                   String temp15 = String.valueOf(que3[4]);
              t5.setText(temp15);
    } //end action performed
    }//end constructor test
    public void itemStateChanged(ItemEvent item) {
    //int state = item.getStateChange();
    //if (q1 == item.SELECTED)
              public class ButtonPanel extends JPanel
                   public ButtonPanel()
              public class CenterPanel extends JPanel
                   public CenterPanel()
              public class QuestionPanel extends JPanel
                   public QuestionPanel()
              public class ResponsePanel extends JPanel
                   public ResponsePanel()
    public static void main(String [] args)
         test surveyFrame = new test("Student Survey") ;
         surveyFrame.setSize( 500,300 );
         surveyFrame.setVisible(true);
         surveyFrame.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);
         }//end main
    }//end class test

    is not abstract and does not override abstract method actionPerformed
    Oh, I see that the title of your post is an error message? Ok. Well, the test class is declared as implementing an ActionListener. That means the test class must have an actionPerformed() method. Your test class apparently does not.
    It does not appear that the test class needs to implement ActionListener. You are using annonymous classes as listeners.

Maybe you are looking for

  • How do I delete a file that says it's in use even though it isn't??!

    Hi! I'm hoping someone can help me please! I'm being driven insane by a file on my Mac that I can't delete. It is a temp Illustrator file which created itself out os some tenuous necessity that I don't comprehend! When I try to send it to the trash a

  • My blackberry 9920 keeps restarting

    My Blackberry device 9920 with 7 OS getting restarted every half hr.  I tried Factory reset but no sucess. Is any updated on this.

  • My volume is lock what do i use to unlock?

    My Ipod Classic Volume is lock,just bought it today,what numbers will unlock volume?

  • Help! Netscape browser problems

    Hi, This is my first time using layers, and I'm finding that Netscape 8 shifts text downwards slightly. I've posted the "Cafe Townsend" tutorial to illustrate the problem I'm getting- http://www.juliespetportraits.com/Cafe_Townsend/index_css.html If

  • FM9 - RH8 wrong format import

    Hello, I have a big document in FM9 with hyperlinks. The hyperlinks are visible through a special character design (blue with underline). After importing in RH8 the text after the hyperlink until the next linebreak is also blue and underlined. Are th