Listener event

I am trying to create a small game got most of the functionality, apart from one aspect how would you code an Listener event that would take into account that if any two pawns on a chessboard were on the same line in any direction then that row would become highlighted and the user could not place any more pawns on that row?
I know a wee bit about �if� and �else� statements but I have no idea how you would create code that would carry out the above function.
Any help would be great
Tom
// <applet code="ChessBored.class" width="500" height="500"></applet>
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
public class ChessBored  extends JApplet
  public void init()
     JFrame f = new JFrame("Chess Board");
     ChessBoard board = new ChessBoard();
     f.getContentPane().add(board);
     f.setSize(board.WIDTH, board.HEIGHT);
     f.setVisible(true);
   } // end init
  public class ChessBoard extends JPanel implements MouseListener
    private Color[] squareColor = new Color[2];
    private final int NUMSQUARES = 8, WIDTH = 400, HEIGHT = 400;
    private int squareSize;
    private int boardSize;
/* The constructor sets only some of the instance variables.
   The rest are set when the screen is painted.
   public ChessBoard()
      squareColor[0] = Color.black;
      squareColor[1] = Color.white;
      addMouseListener(this);
      setSize(WIDTH, HEIGHT);
/* The paintComponent method is called every time the display
   needs to be repainted. Examples: When the window is
   first displayed, when the window is moved, resized,
   maximized, etc.
   Draws an 8x8 grid of alternately colored squares.
   Make the grid as large as it can be to fit in the
   current size of the drawing pane (which is the content pane
   for the JFrame).
    public void paintComponent (Graphics g)
      super.paintComponent(g);  // Make sure background is cleared
      int paneHeight = this.getHeight();
      int paneWidth  = this.getWidth();
      if (paneHeight < paneWidth)
        squareSize = paneHeight / NUMSQUARES;
      else
        squareSize = paneWidth / NUMSQUARES;
      boardSize = squareSize * NUMSQUARES;
      for (int row=0; row<NUMSQUARES; row++)
         for (int col=0; col!=NUMSQUARES; col++)
        { g.setColor(squareColor[(row+col)%2]);
          g.fillRect(col*squareSize,   // x
                     row*squareSize,   // y
                     squareSize,       // width
                     squareSize);      // height
    } // end paintComponent
/** The mouseClicked method responds to any mouse clicks.
    public void mousePressed(MouseEvent e)
// Quit if the mouse press falls outside the board
      Point p = e.getPoint();
      int x = (int) p.getX();
      int y = (int) p.getY();
      if((x>boardSize) || (y>boardSize))
        return;
// Determine which square (i.e. row, col) was selected
      int row = y / squareSize;
      int col = x / squareSize;
      if (row <= 8)
        drawPawn(row, col, Color.blue);
    //else
      //if (row >= (NUMSQUARES-2))
        //drawPawn(row, col, Color.black);
      //else
       // drawMessage(row, "Checkmate!");
/* These four methods are not used, but must be
   implemented because they are required by the
   MouseListener interface.
    public void mouseEntered(MouseEvent e)  {}
    public void mouseExited(MouseEvent e)   {}
    public void mouseClicked(MouseEvent e)  {}
    public void mouseReleased(MouseEvent e) {}
/** The drawPawn method draws a pawn shape on the
    specified square in the chess board.
    public void drawPawn(int row, int col, Color c)
      Graphics g = this.getGraphics();
      g.setColor(c);
// Calculate position of upper left corner of square
      int x = col*squareSize;
      int y = row*squareSize;
/* Draw circle for "head" of the pawn. Dimensions are
   for the oval's "bounding box".
      g.fillOval(x+(2*squareSize/5), // x
                 y+(squareSize/5),   // y
                 squareSize/5,       // width
                 squareSize/5);      // height
// Draw a polygon for the "body" of the pawn.
      Polygon body = new Polygon();
      body.addPoint(x+(2*squareSize/5),
                    y+(2*squareSize/5));
      body.addPoint(x+(3*squareSize/5),
                    y+(2*squareSize/5));
      body.addPoint(x+(4*squareSize/5),
                    y+(4*squareSize/5));
      body.addPoint(x+(squareSize/5),
                    y+(4*squareSize/5));
      g.fillPolygon(body);
    } // drawPawn
/** The drawMessage method draws the given string in
    the given row of the chess board, centered
    horizontally.
    public void drawMessage(int row, String s)
//Set a new font and color
      Font bigFont = new Font("Times New Roman", Font.BOLD, 36);
      Graphics g = this.getGraphics();
      g.setFont(bigFont);
      g.setColor(new Color(0.8F, 0.8F, 1.0F));
//Determine the position of the string
      FontMetrics m = g.getFontMetrics();
      int x = (boardSize - m.stringWidth(s)) / 2;
      if (x < 0)
        x = 0;
      int y = ((row+1)*squareSize) - m.getDescent();
      if (y<0)
        y = m.getLeading() + m.getAscent();
      g.drawString(s, x, y);
    } // drawMessage
  } // end ChessBoard
} // end ChessBored

One thing that sticks out is your listener method isn't quite to spec, according to the f:ajax spec they're supposed to match the following signature:
javax.el.MethodExpression
(signature must match public void processAjaxBehavior(javax.faces.event.AjaxBehaviorEvent event) throws javax.faces.event.AbortProcessingException)
Try dropping the boolean return value & adding the throws. I'm running Apache's MyFaces and it's perfectly fine with your method signature, but maybe your JSF implementation isn't.
Also, you running with javax.faces.PROJECT_STAGE set to Development? Maybe some useful server-side error you're not seeing. You probably should also create your own ExceptionHandler to dump stack traces to the console/logs if you haven't done so already as well.
And lastly, you sure all your code's published to the server? If you're still stuck, then the best thing to do is to make this page as simple as possible, put just 1 checkbox w/o all the table/repeats/etc. to help you eliminate other possibilities.
Sorry can't be more helpful...

Similar Messages

  • Listening events for numeric keys

    Hi,
    How can I listen events for numeric keys without using Canvas?
    I mean I would like to take some actions when user writes something
    on a TextField. My main class is not inherited from Canvas and because of that
    I can't use keyPressed() method to handle these numeric keys.
    Is there a way to handle these events in commandAction() method?

    Hi,
    If u r concerned only about the texfields and if you are using MIDP 2.0 compatible device then try ItemCommandListener.

  • Help Please ... with calling functions inside listener events

    I need the window to update itself before another method inside my listener is called. When I make the call to updateUI() it preforms it's function once my listener event is compelete while I would like to to happend.
    paw.updateHasMoved();
    temp.updateUI();// -->Want the update to occure before the next line is called
    piece.CB.board = ComputersMove(piece.CB.board);

    okidoi Mr Helpy!
    let me try with this
    just one more question, the button should be created at
    runtime or inside my
    movieclip?
    Regards
    Rick
    "Mr Helpy mcHelpson" <[email protected]>
    escribió en el mensaje
    news:f46tjk$lg1$[email protected]..
    > flooring.onLoad = function(success) {
    > if (flooring.firstChild.hasChildNodes()) {
    >
    > you can just do
    >
    > flooring.onLoad = function(success) {
    > if (success) {
    >
    > you'll need to create a button on top of your image.
    This for me is most
    > easily done with a predefined custom class, and on the
    instantiation of
    > your
    > image(movieclip) you can define the button actions
    contained in the movie
    > clip.
    >
    > make sense?
    >
    > HmcH
    >

  • [JS - CS5] listen events on the title bar of a palette

    I want to listen click on the title bar of a palette.
    I use
    myWin.addEventListener ("click",myFunction);
    but it works only on the bounds area, not on the title bar.
    Is it possible to listen events on the title bar?
    thanks
    Ivan

    I want to listen click on the title bar of a palette.
    I use
    myWin.addEventListener ("click",myFunction);
    but it works only on the bounds area, not on the title bar.
    Is it possible to listen events on the title bar?
    thanks
    Ivan

  • Listening events in another class in a another folder

    Listening events in another class in a another folder
    Is there away of controlling a event from another location without being in the same directory/location.
    I've got a button made and a Event Action for the button made in two seperate classes. But I can't make them work without placing them both in the same location together.
    Any simple code that help communicate of long distances/folders.
    Thankyous.

    The "distance" should not be an issue, only visibility. The class that contains the button need to implement some public method of adding an ActionListener to the button. Of course the class that implements the action listener would have to have access to the instance of the button class to call that method.
    Class A {
    private JButton myButton;
    public void addActionListenerToButton (ActionListener listener){
       myButton.addActionListener (listener);
    }

  • Force to java to listen events

    My problem is this: when When i�m executing certain loop in my application, the JVM doesn�t listen the events that occurs (that is, the actionPerformed method isn�t invocated when i push a JButton). When the loop finished, the problem dissapear. �Anybody knows some call that force to java to listen events?. I�ve tried to implement this loop in a thread but the problem doesn�t dissapear.
    Thanks.

    if the loop is started from a gui event handler, take a look at SwingUtilities.invokeLater() method
    Nic

  • Listening events on another class

    Hi, I am doing a program that uses differents jpanels, So I need to set a button enabled when an event ocurrs in another panel, how can I do that. the problem is that the panel from wich I need to listen is another class.
    please can someone help me posting some small code that shows how can I listen events on other classes. I think I am able to detect it changing a static variable on another class and having a thread that verify its state, But i dont want to do that, I want to use a listener or any other similar way.

    there's a lot of ways so it depends on the architecture of your program.
    here's a couple of ideas to play with.
    import javax.swing.*;
    import java.awt.event.WindowAdapter;
    import java.awt.event.WindowEvent;
    public class MyFrame extends javax.swing.JFrame {
        public MyFrame(AnotherClass a) {
            JButton b1 = new JButton("OK");
            b1.addActionListener(a);
            JButton b2 = new JButton(a.getButtonAction("Cancel"));
            getContentPane().setLayout(new java.awt.FlowLayout());
            getContentPane().add(b1);
            getContentPane().add(b2);
            setLocationRelativeTo(null);
            pack();
            addWindowListener(new WindowAdapter(){
               public void windowClosing(WindowEvent we){
                   System.exit(0);
        public static void main(String[] args){
            new MyFrame(new AnotherClass()).setVisible(true);
    import javax.swing.Action;
    import javax.swing.AbstractAction;
    import java.awt.event.*;
    public class AnotherClass implements ActionListener {   
        private Action a;//cancel action
        public AnotherClass() {}
        private void setEnabled(boolean b){
            a.setEnabled(b);
        //cancel action
        public Action getButtonAction(String name){
            a =  new AbstractAction(name){
               public void actionPerformed(ActionEvent ae){
                   System.out.println("Cancel");
            return a;
        public void actionPerformed(ActionEvent e) {
            //ok button action
            System.out.println("okay");
    }

  • How do i hide/cancel popup on fetch  listener event

    Hi,
    I have a popup.  popup should not be visible  if there is any database error
    raise on execution of procedure which call inside popup fetch listener

    hi user,
    I have a popup.  popup should not be visible.
    there is lot of ways to rendering or no rendering of popup. why you want to listener event?
    if there is any database error
    what you mean db error. what kind it is.
    raise on execution of procedure which call inside popup fetch listener
    I did not know about your requirement. by blindly read this i can't  able to come to conclusion.
    please give enough info about jdev? and usecase?. and so on.

  • How to listen Events in subclasses

    Hello, I'll try to be as clear as possible.
    I've two AS2 classes, say Main and Sub.
    Sub inherits from Main.
    Main gets instantiated by Sub by calling super in its
    constructor.
    In Sub constructor a Main method gets invocated too.
    Being this Main method related to a remoting call, it
    automatically
    calls a fault or a result event when it receives data from
    the server.
    In the Result function I put:
    dispatchEvent({type:'myMessage', target:this});
    What I'm trying to do:
    this message should be listened by Sub.
    When Sub receives this event it should fire one of its
    methods.
    How to do this?
    Thanks!

    Sorry. This doesn't make sense. Please rephrase the question or try posting in your native language.

  • Dispatching and listening events in different swf in flex

    I have two swf files.
    1.Main Application swf file.
    2.Module swf file
    If i dispatch an event in main application swf file i am unable to listen in module swf file.
    Can any one propose me a solution for this.

    You can use this example:
       private function ready(event:ModuleEvent):void
        var c:UIComponent = event.currentTarget.child as UIComponent;
        c.addEventListener(events.system_events.MODULE_UPDATED, updated, false, 0, true);
    <mx:ModuleLoader id="mod" x="0" y="0" ready="ready(event);" error="load_error(event);" width="100%" height="100%" />

  • Cannot listen event

    I found that if I have some time consuming tasks performed in
    one handler. Another event cannot be listened.
    public function eventhandler1(event:event1):void
    time consuming tasks
    public function eventhandler2(event:event2):void
    sth actions
    If event1 occurs first, the actions in eventhandler2 will
    never be performed.
    how can I resolve the problem?
    Thanks.
    Gavin

    My handlers listen to different events and I assigned
    priorities to them.
    Actually, I am handling the socket event.
    The data which I receive from socket is quite large.
    And I need to extract and sort the data before another
    reading of bytestream from socket.
    When my program is extracting data, it is not able to listen
    the socket event.
    public function DataExtractHandler(event:DataEvent):void
    a loop to extract data from buffer
    public function SocketEventhandler(event:SocketEvent):void
    read bytestream from socket to buffer
    }

  • How to Call action Listener from Mouse Listener event

    One class (class 1)implements mouse listener and responds to a mouse events.
    As part of that response it needs to call a variable set method in another class (class 2)and also have that setMethod call it's own ActionPerformed.
    Seems the problem is I don't have aaction event to pass
    I only have a mouse event. As follows:
    class 1
    public void mousePressed(MouseEvent e) {
    int y1=Math.abs(e.getY()-y);
    this.sourceReference.setVar(y1);
    repaint();
    class 2
    int var;
    public void setVar(int y)
    var=y;
    this.ActionPerformed(?? ); //This is what I want to do
    Same question slightly different.
    From class 1 I scould first call the setVar method
    and then issue a call to class 2's ActionPerformed.
    But again I don't seem to have the proper action event e to pass it.
    Thanks

    Do you need any information from an ActionEvent that you'd be calling from the MouseEvent (ie the action command, or somethig) or can you just have the actionPerformed method just call a different method that doesn't need an ActionEvent?
    public void actionPerformed(ActionEvent e) {
    this.doActionStuff();
    public void doActionStuff() {
    // does what you want the action event to do
    Then from the mousePressed method you can just call the doActionStuff method.
    I'm not sure if this helps or not, hope it does.
    Scott

  • Mixed/Double cache event listener events

    Hi all,
    Doing some very basic testing here now as we see what we can only assume to be strange behaviour.
    Let's start with something simple:
    package com.test;
    import com.tangosol.net.CacheFactory;
    import com.tangosol.net.NamedCache;
    import com.tangosol.util.MapEvent;
    import com.tangosol.util.MapListener;
    public class RunKeyListener1 {
         public static void main(String... args) {
              NamedCache myCache = CacheFactory.getCache("my-cache");
              myCache.addMapListener(new MapListener() {
                   @Override
                   public void entryUpdated(MapEvent event) {
                        System.out.println("Key Update: Old: " + event.getOldValue() + ", New: " + event.getNewValue());
                   @Override
                   public void entryInserted(MapEvent event) {
                        System.out.println("Key Insert: Old: " + event.getOldValue() + ", New: " + event.getNewValue());
                   @Override
                   public void entryDeleted(MapEvent event) {
                        System.out.println("Key Delete: Old: " + event.getOldValue() + ", New: " + event.getNewValue());
              }, "Key1", false);
              myCache.put("Key1", 1L);
              myCache.put("Key1", 2L);
              myCache.remove("Key1");
    Running this with default settings we get as expected this output:
    Key Insert: Old: null, New: 1
    Key Update: Old: 1, New: 2
    Key Delete: Old: 2, New: null
    All good so far, so let's add another listener on the same node, but now let's do a simple event transformer (which doesn't do anything actually):
    Event transformer code:
    package com.test;
    import com.tangosol.util.MapEvent;
    import com.tangosol.util.MapEventTransformer;
    public class VoidTransformer implements MapEventTransformer {
         @Override
         public MapEvent transform(MapEvent event) {
              Object oldValue = event.getOldValue();
              Object newValue = event.getNewValue();
              MapEvent newEvent = new MapEvent(event.getMap(), event.getId(),
                        event.getKey(), oldValue, newValue);
              return newEvent;
    Updated test code:
    package com.test;
    import com.tangosol.net.CacheFactory;
    import com.tangosol.net.NamedCache;
    import com.tangosol.util.MapEvent;
    import com.tangosol.util.MapListener;
    import com.tangosol.util.extractor.IdentityExtractor;
    import com.tangosol.util.filter.LessFilter;
    import com.tangosol.util.filter.MapEventFilter;
    import com.tangosol.util.filter.MapEventTransformerFilter;
    public class RunKeyListener2 {
         public static void main(String... args) {
              NamedCache myCache = CacheFactory.getCache("my-cache");
              myCache.addMapListener(new MapListener() {
                   @Override
                   public void entryUpdated(MapEvent event) {
                        System.out.println("Key Update: Old: " + event.getOldValue() + ", New: " + event.getNewValue());
                   @Override
                   public void entryInserted(MapEvent event) {
                        System.out.println("Key Insert: Old: " + event.getOldValue() + ", New: " + event.getNewValue());
                   @Override
                   public void entryDeleted(MapEvent event) {
                        System.out.println("Key Delete: Old: " + event.getOldValue() + ", New: " + event.getNewValue());
              }, "Key1", false);
              MapEventFilter mapEventFilter = new MapEventFilter(MapEventFilter.E_ALL, new LessFilter(IdentityExtractor.INSTANCE, 50L));
              MapEventTransformerFilter transformerFilter = new MapEventTransformerFilter(mapEventFilter, new VoidTransformer());
              myCache.addMapListener(new MapListener() {
                   @Override
                   public void entryUpdated(MapEvent event) {
                        System.out.println("Filter Update: Old: " + event.getOldValue() + ", New: " + event.getNewValue());
                   @Override
                   public void entryInserted(MapEvent event) {
                        System.out.println("Filter Insert: Old: " + event.getOldValue() + ", New: " + event.getNewValue());
                   @Override
                   public void entryDeleted(MapEvent event) {
                        System.out.println("Filter Delete: Old: " + event.getOldValue() + ", New: " + event.getNewValue());
              }, transformerFilter, false);
              myCache.put("Key1", 1L);
              myCache.put("Key1", 2L);
              myCache.remove("Key1");
    I would expect the output from this to be:
    Key Insert: Old: null, New: 1
    Filter Insert: Old: null, New: 1
    Key Update: Old: 1, New: 2
    Filter Update: Old: 1, New: 2
    Key Delete: Old: 2, New: null
    Filter Delete: Old: 2, New: null
    Instead I get this:
    Filter Insert: Old: null, New: 1
    Key Insert: Old: null, New: 1
    Filter Insert: Old: null, New: 1
    Key Insert: Old: null, New: 1
    Filter Update: Old: 1, New: 2
    Key Update: Old: 1, New: 2
    Filter Update: Old: 1, New: 2
    Key Update: Old: 1, New: 2
    Filter Delete: Old: 2, New: null
    Key Delete: Old: 2, New: null
    Filter Delete: Old: 2, New: null
    Key Delete: Old: 2, New: null
    Similarly, changing the filtered listener to a lite listener this is the output:
    Key Insert: Old: null, New: null
    Filter Insert: Old: null, New: null
    Key Insert: Old: null, New: 1
    Filter Insert: Old: null, New: 1
    Key Update: Old: null, New: null
    Filter Update: Old: null, New: null
    Key Update: Old: 1, New: 2
    Filter Update: Old: 1, New: 2
    Key Delete: Old: null, New: null
    Filter Delete: Old: null, New: null
    Key Delete: Old: 2, New: null
    Filter Delete: Old: 2, New: null
    Seems like the events are doubling up. Any clues?
    All running with default config and 3.7.1.4.

    Hi all,
    Doing some very basic testing here now as we see what we can only assume to be strange behaviour.
    Let's start with something simple:
    package com.test;
    import com.tangosol.net.CacheFactory;
    import com.tangosol.net.NamedCache;
    import com.tangosol.util.MapEvent;
    import com.tangosol.util.MapListener;
    public class RunKeyListener1 {
         public static void main(String... args) {
              NamedCache myCache = CacheFactory.getCache("my-cache");
              myCache.addMapListener(new MapListener() {
                   @Override
                   public void entryUpdated(MapEvent event) {
                        System.out.println("Key Update: Old: " + event.getOldValue() + ", New: " + event.getNewValue());
                   @Override
                   public void entryInserted(MapEvent event) {
                        System.out.println("Key Insert: Old: " + event.getOldValue() + ", New: " + event.getNewValue());
                   @Override
                   public void entryDeleted(MapEvent event) {
                        System.out.println("Key Delete: Old: " + event.getOldValue() + ", New: " + event.getNewValue());
              }, "Key1", false);
              myCache.put("Key1", 1L);
              myCache.put("Key1", 2L);
              myCache.remove("Key1");
    Running this with default settings we get as expected this output:
    Key Insert: Old: null, New: 1
    Key Update: Old: 1, New: 2
    Key Delete: Old: 2, New: null
    All good so far, so let's add another listener on the same node, but now let's do a simple event transformer (which doesn't do anything actually):
    Event transformer code:
    package com.test;
    import com.tangosol.util.MapEvent;
    import com.tangosol.util.MapEventTransformer;
    public class VoidTransformer implements MapEventTransformer {
         @Override
         public MapEvent transform(MapEvent event) {
              Object oldValue = event.getOldValue();
              Object newValue = event.getNewValue();
              MapEvent newEvent = new MapEvent(event.getMap(), event.getId(),
                        event.getKey(), oldValue, newValue);
              return newEvent;
    Updated test code:
    package com.test;
    import com.tangosol.net.CacheFactory;
    import com.tangosol.net.NamedCache;
    import com.tangosol.util.MapEvent;
    import com.tangosol.util.MapListener;
    import com.tangosol.util.extractor.IdentityExtractor;
    import com.tangosol.util.filter.LessFilter;
    import com.tangosol.util.filter.MapEventFilter;
    import com.tangosol.util.filter.MapEventTransformerFilter;
    public class RunKeyListener2 {
         public static void main(String... args) {
              NamedCache myCache = CacheFactory.getCache("my-cache");
              myCache.addMapListener(new MapListener() {
                   @Override
                   public void entryUpdated(MapEvent event) {
                        System.out.println("Key Update: Old: " + event.getOldValue() + ", New: " + event.getNewValue());
                   @Override
                   public void entryInserted(MapEvent event) {
                        System.out.println("Key Insert: Old: " + event.getOldValue() + ", New: " + event.getNewValue());
                   @Override
                   public void entryDeleted(MapEvent event) {
                        System.out.println("Key Delete: Old: " + event.getOldValue() + ", New: " + event.getNewValue());
              }, "Key1", false);
              MapEventFilter mapEventFilter = new MapEventFilter(MapEventFilter.E_ALL, new LessFilter(IdentityExtractor.INSTANCE, 50L));
              MapEventTransformerFilter transformerFilter = new MapEventTransformerFilter(mapEventFilter, new VoidTransformer());
              myCache.addMapListener(new MapListener() {
                   @Override
                   public void entryUpdated(MapEvent event) {
                        System.out.println("Filter Update: Old: " + event.getOldValue() + ", New: " + event.getNewValue());
                   @Override
                   public void entryInserted(MapEvent event) {
                        System.out.println("Filter Insert: Old: " + event.getOldValue() + ", New: " + event.getNewValue());
                   @Override
                   public void entryDeleted(MapEvent event) {
                        System.out.println("Filter Delete: Old: " + event.getOldValue() + ", New: " + event.getNewValue());
              }, transformerFilter, false);
              myCache.put("Key1", 1L);
              myCache.put("Key1", 2L);
              myCache.remove("Key1");
    I would expect the output from this to be:
    Key Insert: Old: null, New: 1
    Filter Insert: Old: null, New: 1
    Key Update: Old: 1, New: 2
    Filter Update: Old: 1, New: 2
    Key Delete: Old: 2, New: null
    Filter Delete: Old: 2, New: null
    Instead I get this:
    Filter Insert: Old: null, New: 1
    Key Insert: Old: null, New: 1
    Filter Insert: Old: null, New: 1
    Key Insert: Old: null, New: 1
    Filter Update: Old: 1, New: 2
    Key Update: Old: 1, New: 2
    Filter Update: Old: 1, New: 2
    Key Update: Old: 1, New: 2
    Filter Delete: Old: 2, New: null
    Key Delete: Old: 2, New: null
    Filter Delete: Old: 2, New: null
    Key Delete: Old: 2, New: null
    Similarly, changing the filtered listener to a lite listener this is the output:
    Key Insert: Old: null, New: null
    Filter Insert: Old: null, New: null
    Key Insert: Old: null, New: 1
    Filter Insert: Old: null, New: 1
    Key Update: Old: null, New: null
    Filter Update: Old: null, New: null
    Key Update: Old: 1, New: 2
    Filter Update: Old: 1, New: 2
    Key Delete: Old: null, New: null
    Filter Delete: Old: null, New: null
    Key Delete: Old: 2, New: null
    Filter Delete: Old: 2, New: null
    Seems like the events are doubling up. Any clues?
    All running with default config and 3.7.1.4.

  • How can i implement a mouse listener event on jtable cell?

    I create JTable using a resultset,at the end of each row i add an image using JLabel(set imageicon of the JLabel).
    i want to track the event when user click on that image.
    What can i do for that?.
    I tried by implementing mouseListener interface for the JLabel but it's not working properly.

    Hi,
    Add MouseListener to the JTable.
    when the user clicks on the table use the method
    getValueAt( int selectedRow,int selectedColumn) to get the contents.
    Object obj = getValueAt( int selectedRow,int selectedColumn) .
    (If obj instance of JLabel)
    do your functionality.
    Hope this helps
    Cheers :)
    Nagaraj

  • Listen event in WF

    Hi all,
    I've a Workflow that have into the container one instance of BUS2105 (Purchase Requisition).
    My problem is how to detect when the BUS2009->significantlyChanged event was triggered.
    (I don't have an instance of each item of the Purchas requisition, in order to be used in the wait for event task)
    thanks in advance
    Alejandro

    Alejandro,
    You first need to develop an attribute or a method in an extension of BUS2105 to get all your BUS2009 instances into a multiline container element.
    Then define a subworkflow in which you put your wait for event step (on a BUS2009 single line container element)
    From your main workflow, call your subworkflow using the dynamic parallel processing (check tab "Miscellaneous").
    Rgds,
    Patrick

Maybe you are looking for