Implementation of dumps for several table

Hello
Is it possible to configure the < dumps-plan > element or implement dumps to get data from multiple
table. Currently the sample xml and dumps in the tutorial is configured to a single table.

Thank you
-Trapani

Hi Thiru,

As Rob mentioned, you can implement dumps to do just about anything you want: do a join between tables, run several queries for data from multiple tables or even access non-base data system, such as an existing system or a web service to retrieve the data. Consistency really cares how you implement your cache store and where you get the data, as long as you return a single object to the load method, which must be inserted in the cache the cache store is set up for (or in the case of loadAll, many objects in a map).

However, what I didn't understand not your question is if you want to load the data of several related tables to create a single object (an aggregate in DDD terminology), or if you want to create different entity objects based on the data in each table and put them all in the cache. Normally, you should have a cache by entity type, while the latter is discouraged until you know exactly why you do and are recommended to create a separate for each entity type cache and use different cache stores for them. Otherwise, you will encounter issues if you try to index your cache or run queries on it, because these characteristics depend on the schema of compatible entry.

However, if you load an aggregate, you can decide to store the entire aggregate object in a single cache, in which case you will probably eventually query several tables related to construct an instance of an aggregate, or you may decide to store root cluster in its own cache, and separate the low related entities in caches, once again a cache by entity type. The choice should really depend on the size of small entities within an aggregate and access model data, so it is difficult to provide general guidance. However, if you do not end up storing weak entities in separate caches, it is usually advantageous to use the key association to ensure that they are located in the same partition as their aggregate root.

Kind regards
ALEKS

Tags: Fusion Middleware

Similar Questions

  • Container for several tables of different length

    Hey,.

    I'm doing an algorithm for labelling component connected in LabVIEW.  I came across the problem that I need some sort of data structure that I can't create.  I hope that I've missed something and someone can report this to me.

    What I'm looking for is a container that can contain lists of lists of 2 values.  Basically, I have several labels.  Each label will have a list of coordinates in.  The closest I came to this creation is a 2D cluster table.  Then, the cluster contains the coordinates X and Y.  The problem is that each list is not the same size, and for a table of 2D in labVIEW, all rows/columns must have the same length.

    In summary, I'm looking for a way to store multiple lists of coordinates.  The lists will all be of different lengths, and I don't know how many lists there will be.

    Is it possible to do this?

    If not, does anyone know an easier way than that looking for a 2D for concentrations table all?  At the back of my mind, I want to say that there may be a Vision VI of OR who can do this, but I can't find a.

    Thanks for your help,

    Dominic Walker

    A way to manage several arrays of different lengths (but all the same type of data) is to put the berries in a queue.  Each element in the queue must be a table, but they can be of different lengths.  To get to all the tables, you use the preview queue feature.  It returns an array of clusters with each table queue in a separate group (if I remember correctly).   Perhaps an array of clusters of berries would work for you.  I just checked that this allows arrays of different lengths.  You can also place a control of the chain with the label of the cluster if it is appropriate.

    Lynn

  • granting of privileges to the schema for several tables at the same time... any script?

    Hello gurus,

    I have about 25 tables in the ABC scheme

    I want to give all privialges to the XYZ schema for all tables of 25 which is in the pattern ABC... So is there is SQL statement or a script, I can run to grant privileges to all tables.

    Something similar to these...

      SELECT 'create synonym ' || table_name || ' for ' || table_name
      FROM user_tables  {code}
     
    So i get all the table names ....then i can run as a script.... U r help is greatly appriciated gurus!!!
    
    
    Thank you!!!                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    

    Administrator:

    set head off
    set pages 0
    set feed off
    spool myscript.sql
    Select 'grant select, insert, update, delete on abc.'||table_name||' to xyz;'
      from dba_tables
     where owner = 'ABC';
    
    Select 'create synonym xyz.'||table_name||' for abc.'||table_name||';'
      from dba_tables
     where owner = 'ABC';
    
    spool off;
    

    Obviously this does not all new table that will be created in the future on ABC schema...

    Max
    [My Italian blog Oracle | http://oracleitalia.wordpress.com/2010/02/07/aggiornare-una-tabella-con-listruzione-merge/]

  • SQL Help: Add flag for several tables

    Hello

    I have an existing SQL as follows:

    Select the storeId field,

    (select case when count (1) > 0 0 otherwise then 1 end)

    of tb_bbb

    where tb_bbb.id = tb_base.baseId) AS conInd

    of tb_base;

    I would now add the table tb_ccc for the value of conInd. I try the following SQL:

    Select the storeId field,

    (select case when count (1) > 0 0 otherwise then 1 end)

    Of

    (select tb_bbb.id where tb_bbb.id = tb_base.baseId)

    Union

    Select tb_ccc.id where tb_ccc.id = tb_base.basdId) AS conInd

    of tb_base;

    However, it does not work. Any idea on this SQL?  Thanks for your help!

    Hello

    Here is another way, which may be more effective because it uses EXISTS (which can quit smoking as soon as it finds a match) instead of COUNT (who continues to go, so he can tell you if there are 999 or 1000 matches, even if you don't care to).

    SELECT storeid

    CASE

    WHEN THERE IS)

    SELECT 1

    OF tb_bbb

    WHERE bbb_id = m.baseid

    ) 1 THEN

    WHEN THERE IS)

    SELECT 1

    OF tb_ccc

    WHERE ccc_id = m.baseid

    ) 1 THEN

    0 OTHERWISE

    END AS conlnd

    OF tb_base m

    ;

  • EO for several tables

    Hi all

    In the new page that I created, I have more than 8 tables I should use to display the data in the page. Also when I try to save the page, the data is saved using the API seeded. In this situation,

    (1) how to use the objects of entity for 8 different tables? Can I create associations between all these different tables?
    (2) that I need to record data using the API, I extend the OAPlsqlEntityImpl class in the EO. So, in this case, all postings must be done using getters and Setters at the level of the VO or EO?

    Please advice.

    Thank you all

    KK

    Hello

    1) Set the Foreign key using setAttribute Methods ? 
    

    When you create a VO based on multiple EO, there should be a link between these Office of assessment as primary key & Foregin key 8. And when you share a commitment that the value of your beans will be saved to the database. But the foreigner, you will need to set independently using setAttribute method because it will not be saved by his own.

    2) If i'm doing the validations at EO level, those setters and getters will be called before the Create(), Update() and Delete()
    methods in the EOImpl class. Is that true?
    

    Yes, you are right, it is called to create and update operation, but not to delete.

    Kind regards
    GYAN

  • Trees does not not in 4.0 for several tables

    I built the query:

    Select case when connect_by_isleaf = 1 then 0
    When level = 1 then 1
    of another-1
    end the status,
    level,
    name as title,
    NULL as an icon,
    ID as the value,
    NULL as ToolTip

    de)
    To_char (nihub_qa_group_id) SELECT ID,
    NULL as parent,
    GroupName as name,
    NULL link,
    NULL a1,
    NULL A2
    OF nihub_qa_groups
    UNION ALL
    SELECT to_char (nihub_qa_group_id): ': ' | TO_CHAR (nihub_qa_tables_id) as id,
    TO_CHAR (nihub_qa_group_id) as a parent,
    table_NAME as name,
    NULL link,
    NULL a1,
    NULL A2
    OF nihub_qa_table_tree_v
    )
    Start with the parent is set to null
    connect by prior id = parent
    siblings arrested by name

    but the tree will not display. I get the error: Warning: tree root ID '10000' could not be found. and when I debug I get errors: ORA-06550: line 34, column 34: PL/SQL: ORA-00904: "ID": invalid identifier ORA-06550: line 3, column 13: PL/SQL: SQL statement ignored ORA-06550: line 37, column 64: PLS 00364: 'I' use the loop index variable is invalid ORA-06550: line 37, column 15: PL/SQL: statement ignored.

    My paintings is quite simple:

    nihub_qa_group:

    CREATE TABLE nihub_qa_groups
    (
    nihub_qa_group_id NUMBER NOT NULL,
    GroupName VARCHAR2 (255) NOT NULL CHECK (single)
    )
    ;



    ALTER TABLE nihub_qa_groups
    Add a CONSTRAINT "Group PK" PRIMARY KEY (nihub_qa_group_id);

    nihub_qa_tables:

    CREATE TABLE nihub_qa_tables
    (
    nihub_qa_tables_id NUMBER NOT NULL,
    table_name VARCHAR2 (250 BYTES),
    last_date_loaded DATE,
    last_row_count NUMBER,
    avg_records_loaded NUMBER,
    check_avg CHAR (1 BYTE),
    check_orphan CHAR (1 BYTE),
    check_domains CHAR (1 BYTE),
    check_date CHAR (1 BYTE),
    threshold_plus NUMBER,
    threshold_minus NUMBER,
    date_column VARCHAR2 (255 BYTES)
    )
    ;



    ALTER TABLE nihub_qa_tables
    ADD CONSTRAINT "nihub_qa_tables PK" PRIMARY KEY (nihub_qa_tables_id);



    and nihub_qa_table_tree_v is a point of view:

    VIEW to CREATE or REPLACE nihub_qa_table_tree_v (nihub_qa_group_id,
    nihub_qa_tables_id,
    table_name)
    IN SELECT
    nihub_group_table.nihub_qa_group_id,
    nihub_group_table.nihub_qa_tables_id,
    nihub_qa_tables.table_name
    Of
    nihub_group_table nihub_group_table,
    nihub_qa_tables nihub_qa_tables
    WHERE
    nihub_group_table.nihub_qa_tables_id = nihub_qa_tables.nihub_qa_tables_id;


    nihub_group_table is a correlator group_id and tables_id to support the relationship m:m. when I run the query in Toad or sql command in the APEX, I get:

    1 1 UNICA - 10000. -
    2 0 NIHUB_NETINSIGHT_VEIW_PARAMS - 10000:20000 -.
    2 0 NIHUB_NETINSIGHT_VIEWS - 10000:10000 -.
    2 0 NIHUB_NETINSIGHT_VISITS - 10000:30000 -.
    2 0 NIHUB_NETINSIGHT_VISIT_PARAMS - 10000:40000 -.
    1 GROUP 1 TEST - 20000 -.
    2 0 NIHUB_NETINSIGHT_VIEWS - 20000:10000 -.


    that is what I expect. Here, any help would be appreciated.

    Thanks in advance

    PAM

    Here is a document to create a tree in APEX 4 via a wizard: http://apex.oracle.com/i/doc/tree_query_create.htm#BABJAGJJ

    Thank you

    Tony Miller
    Webster, TX

    While it is true that technology is waiting for no man; stupidity always stops to accommodate new passengers.

    If you answer this question, please mark the thread as closed and give points where won...

  • Synonyms for several tables

    Hello

    I have a trigger which in a specific State, change 14 synonyms of 14 different paintings.

    The official documentation is not possible to create the synonym of more then one table at the same time.

    You know some tricks to simplify this operation?

    Thank you

    Ste

    Ste74 wrote:

    DB architecture, I have three 'groups' of tables (with 7 tables) with the same structure but different in data.

    Simply create an additional column of ACTION_GROUP and 7 tables with the same structure as those that already exist. List the tables of newly created partition by column ACTION_GROUP create 3 partitions with the values 1, 2 and 3. Add the ACTION_GROUP column to each of the 21 existing tables and tables 1 to the tables of Group 1, group 2 and group 3 3 table 2. Now, you can fill each partition table newly created through the exchange of the partition corresponding get and group the data in table rid your 21 original tables. Now you have 7 tables and all you need is WHERE ACTION_GROUP = added to your queries. Actually, same approach might work even without partitioning - you simply need to use insert instead of exchange of the partition.

    SY.

  • CREATE VIEW for several tables

    Hello

    I have a lot of tables, each of them containing a serial number field, each number is unique all the tables.

    I need a notice like this:
    SERIAL_NUMBER  |  TABLE_NAME
    ----------------------------
    1              |T1
    2              |T2
    3              |T3
    4              |T1
    5              |T1
    6              |T4
    What is the best way (SQL) to create this view?

    Thanks in advance!

    Maybe something like this:

    create or replace view my_view as
    select serial_number, 'T1' table_name from t1 union all
    select serial_number, 'T2' table_name from t2 union all
    select serial_number, 'T3' table_name from t3;
    
  • Table of contents for several sheet file...?

    It is possible to:

    1. Create a Table of contents listing all sheets in a file?
    2. Have these hyperlink worksheet titles to the sheets themselves?

    I build what will eventually be a fairly large file (read: 75 + leaves). Rather than scrolling all the leaves one by one by one manually to locate the correct table, it would be useful to have a table of contents or an Index that lists the in order... Ideally, allowing the connection of hypertext link to the leaves they reference. (I swear that this was part of a way-back-when number...)

    Instead, is it possible to auto-trier worksheets in alphabetical order? He would not give me the project view as a table of contents or an Index of 35,000 feet, but at least it would be a little easier to find what it takes.

    Looking forward to sharing the wisdom...

    HI stephanie,.

    The numbers 2 (' 09) and 3 support not the hyperlinks to locations within the current document. Both take in charge of hyperlinks that open a Web page in your default browser or which will open and send a new e-mail message.

    Command-F can be your friend here.

    Place an array of single cell on each sheet (or use a cell on the existing table). Enter a short text string that identifies the table or sheet. Each string must be unique in the document.

    To access the card containing one of the following strings:

    Press Control + F to open the Find dialog.

    Enough chain to identify the worksheet type.

    Number will draw this roadmap forward as soon as it can determine which table contains the cell containing this string.

    Tested with four sheets containing:

    able, baker, charlie and delta

    With this limit together (and any other tables in the document - quite an artificial situation!), type c or d was enough to bring me to sheet 3 or 4, sheets 1 and 2 required two letters (ab or ba) to identify the good sheet and bring it forward.

    With a document containing several tables (and more leaves), create (and remembering) a separate channel for each becomes more complicated.

    You can place a second copy of each in a table of Index or table of contents on a separate sheet. From the index table,

    Copy the entry for the table/worksheet you want to go.

    Open the dialog to find (command-V)

    Paste the entry in the search box. (What it will find and highlight the entry that you have copied to the index table)

    Click on the > button on the dialog to find the occurrence FOLLOWING this string (on your target table.

    Kind regards

    Barry

  • How to fill out (display) values for several blocks in which there is no relationship between the blocks (tables).

    Hello.

    Is it possible to fill in the values (execute_query) several blocks where there is absolutely no relationship between the tables in the same form?

    There is no relationship between the tables. All are separate tables with different columns. None of the names of columns match

    & also the values of the columns do not match. I created blocks for all tables. When I click on run, only the first block of values (first picture) is filled.

    other values of block did not get filled. Is it possible to fill in the values for all of the blocks where there is not relationship, or when there is no master block?

    Is there something I can do for this? It is mandatory for me to put all the blocks in a single form.

    Help me, please. Please do not respond.

    Thank you.

    Create a key-EXEQRY-trigger on the block where 'throw you' the quers. In it, put something like

    GO_BLOCK ('BLOCK1');

    EXECUTE_QUERY;

    GO_BLOCK ('BLOCK2');

    EXECUTE_QUERY;

    ...

  • Is it possible to implement or imitate the "percentage of parent row" feature, planned for PivotTables in obiee 11g, for a table of "normal"?

    Is it possible to set work/MIMC the "percentage of parent row" feature, planned for PivotTables in obiee 11g, for a table of "normal"?

    I'm able to calculate the percentage of parent row in "pivot table". but it's not getting displayed when I see him through graphic.

    Any way to calculate the "percentage of parent of the line" using the normal table and if I can use this column calculated on the chart. really appreciate your response.

    Thank you

    SAI.

    Hi Sai,

    You must be able to calculate the % using "SUM (measure at THE level [, level1, Middle])" to get the total of the top level of your line and to a share of the present value of the total (and * 100.0).

  • Implementation of the functions of table (indexOf, lastIndexOf, removeDuplicates...)

    Hello

    I'm trying to implement some functions to manipulate tables more easily, as I would with other programming languages (Array.IndexOf exists in Javascript, but seems to be absent from ExtendScript).

    First of all, I tried to add these functions using Array.prototype; Here's what I've done for two of these functions:

    Array.prototype.indexOf = function (value)
            {
              for (var i = 0;i<this.length;i++)
                {
                    if (this[i] == value) return i;
                }
                return -1;
            }
           
    Array.prototype.removeDuplicates = function ()
            {
                var removed = [];
                for (var i = 0;i<this.length-1;i++) {
                        for (var j=i+1;j<this.length;j++) {
                            if (this[i] == this[j]) {               
                                removed.push(this.splice(j,)1);
                            }
                        }
                    }
                    return removed;
            }
    

    It seemed to work fine, but I discovered that it breaks this kind of loop:

    for (var i in array) {
         alert(array[i]);
         }
    

    The loop through the values in the table and continues beyond array.length with the features added to the prototype.

    As explained here, I have found a workaround, using Object.defineProperty () rather than implement functions in Array.proptotype

    Object.defineProperty(Array.prototype, "indexOf", {
      enumerable: false,
      value: function(value) {
          for (var i = 0;i<this.length;i++)
                {
                    if (this[i] == value) return i;
                }
                return -1;
        }
    });
    

    But... Object.defineProperty () is missing in ExtendScript too!

    I don't know what to try next... Any idea?

    Thank you!

    The primary reason that some of these functions do not exist, is that ExtendScript is based on the ECMA-262 standard. Very old JavaScript and I don't think all this is implemented.

    PG. 3 of the CS6 script guide (only written comprehensive guide Adobe has for the moment) after effects Developer Center | Adobe Developer Connection:

    The ExtendScript language

    "After Effects scripts using the Adobe ExtendScript language, which is an extended form of JavaScript used by several applications Adobe, including Photoshop, Illustrator, and InDesign. ExtendScript implements the JavaScript language according to the ECMA-262 specification. The After Effects script engine supports the 3rd edition of the ECMA-262 standard, including its conventions of notation and lexical, types, objects, expressions, and statements. ExtendScript also implements the E4X ECMA-357 specification, which defines the access to the data in XML format. »

    Even though I know that many developers have made prototyping, I found it to be annoying personally, especially if your code moves outside your machine. I just made autonomous functions for all my scripts. It has been easier to reuse code and create some (not all) missing features that would be nice to have the day current Javascript.

  • create the view of several tables of days

    Hello
    I'll have existing oracle db with the daily stat data, tables strangely named data_mon, data_tue, data_wed... For my batch that I intend to use the view with multiple day data, let say for the last 5 days.
    Do not know how better to implement my sql with these suffixes _mon statement to make it more or less dynamic.
    I create also ever seen from several tables, then, probably, that I can do something that will add daily updated data and remove data from 5 days?

    You will appreciate comments on the details and the whole concept. I have prev sql server experience.

    Thank you
    T

    user12943718 wrote:
    Hello
    I'll have existing oracle db with the daily stat data, tables strangely named data_mon, data_tue, data_wed... For my batch that I intend to use the view with multiple day data, let say for the last 5 days.
    Do not know how better to implement my sql with these suffixes _mon statement to make it more or less dynamic.
    I create also ever seen from several tables, then, probably, that I can do something that will add daily updated data and remove data from 5 days?

    You will appreciate comments on the details and the whole concept. I have prev sql server experience.

    Thank you
    T

    Change the data model if you have 1 table for a day.

    You have just a DATA table and a column to indicate the day of the application.

    Then you don't need a view, do not need anything dynamic, do not need to break your head against a wall for a simple query... etc.

  • Showing the façade unqiue for several instances of appeal Subvi

    Hello

    I have a Subvi, which resembles a table 2D data and graphs of the plots.  I call the Subvi and he opens the subVIs Panel to display plots.  Now I would like to put the Subvi in one for a loop and call several times with various 2D charts.  I'm trying to figure out how to make multiple instances of the Subvi front panel appear. Essentially a front for each table 2D.  All I can get it to do is to open and close the user interface for each Subvi call and for the last table display the user interface for the data.

    I tried to make the VI reentrant and selected the option pre allocate the memory for each clone.  Maybe it works, but I need the front of each Subvi call to stay open.

    Thank you

    Gary

    Thank you both for the help.  I used the open VI of reference and call by reference and created a strictly typed reference VI to call the Subvi dynamically.  Is attached a screenshot of the block diagram.  The link below has guided me to created the strictly typed VI reference required by the "reference" entry of the reference function call.

    http://zone.NI.com/reference/en-XX/help/371361H-01/lvhowto/create_strict_type_vi_ref/

  • Implementing custom listener for ListField

    I'm trying to implement a listener for a custom field I created that would launch a new screen when you click on the field. However, nothing happens when I click on the custom field. I use BlackBerry Java plug-in for Eclipse, JDK 1.3 and JRE 6.0. All my code is attached. MyScreen.java contains the code where I'm trying to implement a function fieldChanged.

    //MyApp.Java
    
    package mypackage;
    
    import net.rim.device.api.system.CodeModuleManager;
    import net.rim.device.api.ui.UiApplication;
    
    /**
     * This class extends the UiApplication class, providing a
     * graphical user interface.
     */
    public class MyApp extends UiApplication
    {
        /**
         * Entry point for application
         * @param args Command line arguments (not used)
         */
        public static void main(String[] args)
        {
            CodeModuleManager.promptForResetIfRequired();
    
            // Create a new instance of the application and make the currently
            // running thread the application's event dispatch thread.
            MyApp theApp = new MyApp();
            theApp.enterEventDispatcher();
        }
    
        /**
         * Creates a new MyApp object
         */
        public MyApp()
        {
            // Push a screen onto the UI stack for rendering.
            pushScreen(new MyScreen());
        }
    }
    
    //MyScreen.java
    
    package mypackage;
    
    import net.rim.device.api.ui.container.*; //for vertical manager
    import net.rim.device.api.ui.Field;
    import net.rim.device.api.ui.FieldChangeListener;
    import net.rim.device.api.ui.Manager;
    //import net.rim.device.api.ui.Screen;
    import net.rim.device.api.ui.component.*;
    import net.rim.device.api.ui.Color;
    import net.rim.device.api.ui.decor.BackgroundFactory;
    
    /**
     * A class extending the MainScreen class, which provides default standard
     * behavior for BlackBerry GUI applications.
     */
    public final class MyScreen extends MainScreen
    {
        /**
         * Creates a new MyScreen object
         */
        private CustomField cField;
    
        public MyScreen()
        {
            // Set the displayed title of the screen
            setTitle("My New App");
    
            cField = new CustomField("4.PNG","This is my 4th custom field!!");
            ButtonClickListener listener = new ButtonClickListener();
            cField.setChangeListener(listener);
            add(cField);
    
        }//MyScreen function
    
        class ButtonClickListener implements FieldChangeListener
        {
            public void fieldChanged(Field field, int context)
             {
                  //we need to determine which button was clicked
    
                  if(field == cField)
                      new SpeedBumpScreen();
    
             }
    
        }//ButtonClickListener
    
    }
    
    //CustomField.java
    
    package mypackage;
    
    import java.util.Vector;
    
    import net.rim.device.api.system.Bitmap;
    import net.rim.device.api.ui.*;
    import net.rim.device.api.ui.component.*;
    
    class CustomField extends ListField implements ListFieldCallback {
        private Vector rows;
    
        public CustomField(String customImg, String customLabel) {
            super(0, ListField.MULTI_SELECT);
            setRowHeight(80);
            setEmptyString("Hooray, no items here!", DrawStyle.HCENTER);
            //setCallback(this);
    
            Bitmap p1 = Bitmap.getBitmapResource(customImg); 
    
            rows = new Vector();
    
            TableRowManager row = new TableRowManager();
    
            row.add(new BitmapField(p1));
    
            // SET THE item NAME LABELFIELD
            // if overdue, bold/underline
            LabelField item = new LabelField("item #" + customLabel,
                DrawStyle.ELLIPSIS);
    
            // overdue
            item.setFont(Font.getDefault().derive(
                Font.BOLD | Font.UNDERLINED));
            System.out.println("OVERDUE");
    
            row.add(item);
    
            // SET THE LIST NAME
            row.add(new LabelField("List Name #" + String.valueOf(1),
                DrawStyle.ELLIPSIS) {
                protected void paint(Graphics graphics) {
                    graphics.setColor(0x00878999);
                    super.paint(graphics);
                }
            });
    
            // SET THE DUE DATE/TIME
            row.add(new LabelField("Due Date #" + String.valueOf(1),
                    DrawStyle.ELLIPSIS | LabelField.USE_ALL_WIDTH
                    | DrawStyle.RIGHT) {
                protected void paint(Graphics graphics) {
                    graphics.setColor(0x00878787);
                    super.paint(graphics);
                }
            });
    
            rows.addElement(row);
    
            setSize(rows.size());
    
        } //end public CustomField()
    
        // ListFieldCallback Implementation
        public void drawListRow(ListField listField, Graphics g, int index, int y,
                int width) {
            CustomField list = (CustomField) listField;
            TableRowManager rowManager = (TableRowManager) list.rows
                .elementAt(index);
            rowManager.drawRow(g, 0, y, width, list.getRowHeight());
        } //end drawListRow()
    
        private class TableRowManager extends Manager {
    
            public TableRowManager() {
                super(0);
            } //end pulic TableRowManager
    
            // Causes the fields within this row manager to be layed out then
            // painted.
            public void drawRow(Graphics g, int x, int y, int width, int height) {
                // Arrange the cell fields within this row manager.
                layout(width, height);
    
                // Place this row manager within its enclosing list.
                setPosition(x, y);
    
                // Apply a translating/clipping transformation to the graphics
                // context so that this row paints in the right area.
                g.pushRegion(getExtent());
    
                // Paint this manager's controlled fields.
                subpaint(g);
    
                g.setColor(0x00CACACA);
                g.drawLine(0, 0, getPreferredWidth(), 0);
    
                // Restore the graphics context.
                g.popContext();
            }//end drawRow()
    
            // Arranges this manager's controlled fields from left to right within
            // the enclosing table's columns.
            protected void sublayout(int width, int height) {
                // set the size and position of each field.
                int fontHeight = Font.getDefault().getHeight();
                int preferredWidth = getPreferredWidth();
    
                // start with the Bitmap Field of the priority icon
                Field field = getField(0);
                layoutChild(field, 32, 32);
                setPositionChild(field, 0, 0);
    
                // set the item name label field
                field = getField(1);
                layoutChild(field, preferredWidth - 16, fontHeight + 1);
                setPositionChild(field, 34, 3);
    
                // set the list name label field
                field = getField(2);
                layoutChild(field, 150, fontHeight + 1);
                setPositionChild(field, 34, fontHeight + 6);
    
                // set the due time name label field
                field = getField(3);
                layoutChild(field, 150, fontHeight + 1);
                setPositionChild(field, preferredWidth - 152, fontHeight + 6);
    
                setExtent(preferredWidth, getPreferredHeight());
            }//end sublayout()
    
            // The preferred width of a row is defined by the list renderer.
            public int getPreferredWidth() {
                return Graphics.BLACK;
            }
    
            // The preferred height of a row is the "row height" as defined in the
            // enclosing list.
            public int getPreferredHeight() {
                return getRowHeight();
            }
    
        }// private class TableRowManager extends Manager 
    
        public Object get(ListField listField, int index) {
            // TODO Auto-generated method stub
            return null;
        }
    
        public int getPreferredWidth(ListField listField) {
            // TODO Auto-generated method stub
            return 0;
        }
    
        public int indexOfList(ListField listField, String prefix, int start) {
            // TODO Auto-generated method stub
            return 0;
        }
    
    } //end class CustomField extends ListField implements ListFieldCallback
    
    //SpeedBumpScreen.java
    
    package mypackage;
    
    import net.rim.device.api.ui.Field;
    import net.rim.device.api.ui.component.RichTextField;
    import net.rim.device.api.ui.container.MainScreen;
    
    public final class SpeedBumpScreen extends MainScreen
    {
        /**
         * Creates a new HelloWorldScreen object
         */
        SpeedBumpScreen()
        {
            // Set the displayed title of the screen
            setTitle("Speed bump screen");
    
            // Add a read only text field (RichTextField) to the screen.  The
            // RichTextField is focusable by default. Here we provide a style
            // parameter to make the field non-focusable.
            add(new RichTextField("This is the speed bump screen!", Field.NON_FOCUSABLE));
        }
    
    }
    

    In addition, there is nothing in the ListField that will actually generate an event.

    Here is a simple extension to the ListField which will make "clickable".  In your FieldChangeListener you can use getSelectedindex to determine which line has the focus.

    Please ask if this isn't clear:

    public class ClickableListField extends ListField {
    
        public ClickableListField(int numberOfRows) {
            super(numberOfRows);
        }
    
        protected boolean navigationClick(int status, int time) {
            this.fieldChangeNotify(2);
            return true;
        }
    
        protected boolean touchEvent(TouchEvent message) {
            int x = message.getX( 1 );
            int y = message.getY( 1 );
            if( x < 0 || y < 0 || x > getExtent().width || y > getExtent().height ) {
                    // Outside the field
                    return false;
            }
            // If click, process Field changed
            if ( message.getEvent() == TouchEvent.CLICK ) {
                this.fieldChangeNotify(2);
                return true;
            }
            return super.touchEvent(message);
        }
    
    }
    

Maybe you are looking for