Textfield with LOV and Jtable

hi...
i am using swing and jdev 11
is it possible to use textField with LOV as column type in jtable ?
if yes...how?
if not....? is there any solution? tnx (i dont want to use combo box because my lov is very big and i need to seach)
thnx

Choosing an entry from the auto-complete list doesn't trigger the change event , it is a "result" event.
But that event is not available in the list of triggering action in Dynamic Action.
You can add the following JS code so that a change event is triggered when choosing an autocomplete entry.
$('#<ITEM NAME>').bind('result', function(){
  $(this).trigger('change');
});+<ITEM NAME> is the Autocomplete Item, replace it with your own+

Similar Messages

  • Textfield with autocomplete and a report

    Hello,
    i have a page with item "textfield with autocomplete" and a report. The report shows a query with the value from the textfield in the where part.
    Before, the textfield was a "select-list" with page redirect. The report show allways the correct data after the page refreshed.
    Now, with "autocomplete" the page has no submit for the page and the report doesn't refresh.
    How can i refresh the report, after the user enter a text in the item "textfield with autocomplete"? I try it with a dynamic action: Event: OnChange on the item, Action: Refresh the report-region. But nothing.
    If the page onload a request get the data from db in this item. The user enter the new data in this item. Thats the reason i can't use a complete page-refresh. The new data from userinput are lost.
    Any idea?

    Choosing an entry from the auto-complete list doesn't trigger the change event , it is a "result" event.
    But that event is not available in the list of triggering action in Dynamic Action.
    You can add the following JS code so that a change event is triggered when choosing an autocomplete entry.
    $('#<ITEM NAME>').bind('result', function(){
      $(this).trigger('change');
    });+<ITEM NAME> is the Autocomplete Item, replace it with your own+

  • Copy select value in the textfield from LOV and allow user to edit it

    Hi,
    I have a datablock with 20 records and each record has comments (say field_comments) fields. I would like to allow user to choose predefined comments populated from LOV (say lov_comments) and to append some extra comments after they choose the value from LOV.
    I have created a LOV and added Return type “field_comments” in the column mapping properties. When user clicks on a button, LOV opens up. They select the value from the LOV and the value goes to “field_comment” field. The problem with this approach, user can’t add their comment after selecting from LOV.
    I tried this way too. I created another non-visible textbox (say dummy). In the LOV, I added “dummy” field as returntype. In the dummy field, I have created “POST-CHANGE” trigger which basically says :block. field_comments = :block. Dummy.
    But, the user has to click on other field to view the selected value from the LOV. The values in the “field_comments” is not updated as soon as user click on “OK” button in the LOV.
    I would appreciate it if somebody could give me some input and help to solve my issue. Thank you for your help.
    Thank.

    Well, I tried exactly what you posted and it allowed me to SELECT from LOV and then CHANGE/APPEND new text in front of returned value in the field. It saved to the database and queried without any problems.
    Is your item allowed to INSERT/UPDATE ? If not, then set "Update/Insert Allowed" properties to Yes and attach your LOV to the item and set "Validate from list" to No.
    You may also see if you have any validation being performed on WHEN-VALIDATE-ITEM or POST-CHANGE trigger which will fail since you are editing the values populated from LOV.
    Hope it helps!

  • Item(select list) with LOV and Report with link = changed value item

    Hello,
    On one page I have:
    - Item 'P_name' (select list) with LOV to select name of a person;
    - Items 'factory' and Report 'factory'(standard created with 'Form with Report' on the same page).
    Situation:
    All works fine. I selected first a LOV Item 'P_name' (say 'Jane'). But....
    Only when I select a record (to change the values) from the report 'factory' then LOV Item 'P_name' become empty. Report used a link to the same page to fill the report items 'factory' and make also the LOV item empty.
    Question:
    I have made a process that write the name 'Jane' to table.
    I see two possibilities:
    - LOV Item value => fill the LOV item with 'Jane' from the table before region. Is this possible?
    - Report => What is the buttonname of reportlink? I can use this name in the processes.
    Thanks Walter!

    1) what i meant was for you to test this ridiculously huge LOV outside of htmldb, but it occurred to me last night that you could, in fact, be hitting a limit of ours. after some poking around, i have confirmed that. select list items in htmldb are currently limited to 10,000 rows. this was initially done for performance reasons, but they're now opening up the restriction. if you really need to work with that many rows where the user is allowed to pick from a set of values, consider using a popup item type instead. it'd help your app performance as well (in my test cases, it stank to have to wait for my 10k select list rows to come down to my browser).
    2) sorry to not have been more clear about this, but when you set your item's "Source Type" back to "Database Column", you'd have to specify that column in the "Source or value expression" field. also, you can't put a sql query into that "Post Calculation Computation" field. as i said before, "you can take a look at the attribute-level help for that field to see implementation examples."
    3) stick with "Always..." for now if you're using our auto-dml process(es)
    regards,
    raj

  • [Solved] Problem with LOV and 'enter query' mode

    Hi all,
    I'm kind of new to Forms and I'm having some problems that I'm not being able to resolve. I already search it on the net, but nothing relevant came up. If anyone could help me I appreciated it.
    In my form I have some fields, and in one of them I have a LOV, and almost everything works fine. I inserted data, changed it, deleted it and all it's ok.
    But when I change to 'enter query' mode, when I try to search for data on the LOV field it ignores what I write.
    That is, for it, it's the same if I make F11 -> write 'aaaa' -> ctrl + F11 or if I make F11 -> '%' -> ctrl + F11.
    It behaves the same way, shows me all the records.
    Probably I'm missing something basic, but I'm not getting it...
    Thanks,
    Ana

    when you create a lov by wizard the lov and record group have always the same name..
    the problem is that the item is NOT based in the tabe.
    what kind of query do you execute if you choose something from a love which is not based on the db?
    i mean, this item has no influence on the query of the table, so whatever you choose it's like a "select * from table"
    i hope i was clear

  • A problem with LOV and my query. Help to solve, please...

    Hello!
    Here is a query:
    SELECT FULLNAME||', '||(SELECT NAMEOFGROUP||', '||(SELECT CITY FROM CITY WHERE PRKEY=TLL.CITY) FROM GROUPS TLL WHERE PRKEY=TL.GROUPOF) t ,PRKEY r FROM MINEUSERS TL
    In SQL DEVELOPER it works fine. But in APEX - when I try to save my "SELECT LIST" - it falls with error - "If your query contains an in-line query, the first FROM clause in the SQL statement must not belong to the in-line query."
    How can I reassemble my query to fix this problem - I have no idea... :(
    Thanks

    You may create a pipelined function returning two values, display and return, to return
    the result from your query. After that, your LOV should work. See example here:
    http://htmldb.oracle.com/pls/otn/f?p=31517:146
    Denes Kubicek
    http://deneskubicek.blogspot.com/
    http://htmldb.oracle.com/pls/otn/f?p=31517:1
    -------------------------------------------------------------------

  • Please help with Database and JTable.

    The class listed below is for a JTable. The main in this class is for testing only, when complete main will reside elsewhere. I need to know how to make this JTable universal. How can I set it up so that when called in a main and passed parameters it will display the information contained in that users database?? Again it must be universal so no matter who uses it, it will perform the same on all database's.
    Here's the code:
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    import javax.swing.table.*;
    public class DisplayTable extends JFrame{
    public DisplayTable() {
         JFrame jf = new JFrame("Window Title");
              jf.setSize(1100,700);
              jf.setLocation(25,50);
              jf.addWindowListener(new WindowAdapter(){
                   public void windowClosing(WindowEvent e){
                        System.exit(0);}
         TableModel tm = new AbstractTableModel(){
              String[][] data = { {"How to get database data??"}};
              String[] headers = {"How to get database headers??"};
              public int getRowCount() {return data.length;}
              public int getColumnCount() {return headers.length;}
              public Object getValueAt(int r, int c) {return data[r][c];}
              public String getColumnName(int c) {return headers[c];}
         JTable jt = new JTable(tm);
         JScrollPane jsp = new JScrollPane(jt);
              jf.getContentPane().add(jsp, BorderLayout.CENTER);
              jf.setVisible(true);
    public static void main(String args[]){
         DisplayTable dt = new DisplayTable(Database Parameters to be given here);

    You could generalize it, but it gets tricky to deal with the data types and if the JTable is editable because you would read the DB table data at run time. Using the ResultSetMetaData, you would be able to find the column type too. But, how can we cast an object at run-time?
    Below, I have provided an overview as of doing a read-only (all-strings version) of it. You may have some ideas from there.
    The database parameters that you pass to the constructor would tell the model where to connect and which DB table to read the data from. Couple of options:
    1. You can read the data in the constructor of DisplayTable into final variables and have the inner class (model) set its data and headers from those variables.
    Or
    2. Pull out the model as a separate class extending AbstractTableMode. Doing this, you can pass on the DB information to the model and have the model talk to the DB.
    And, I would use dynamic datastructures like Vector or List instead of arrays.
    You would have the following logic wherever you chose to talk to the DB:
    I am assuming that you are trying to read a complete DB table into your JTable (or may be you would pass a SELECT-query alongwith your DB information). Whatever may be the case, you would execute a select- to the DB and get a resultset back. Using that you would be able to get the ResultSetMetaData, which will give you the column count and column names. You may chose to use these column names as the header names for your JTable. With the column count you would query every row to get the object at each column.
    Here is a sample model:
    class MyModel extends AbstractTableModel {
        ArrayList columnNames = new ArrayList();
        ArrayList data = new ArrayList();
        MyModel(<DB Info>) {
            // Use the DB info and get the resultset
            ResultSetMetaData rsm = rs.getMetaData();
            int col = rsm.getColumnCount();
            for(int i=1; i<=col; i++) {
                columnNames.add(rsm.getColumnName(i));
            // Read the data
            while(rs.next()) {
                ArrayList row = new ArrayList();
                data.add(row);
                for(int j=1; j<=col; j++) {
                    // Here is the tricky part which I did not figure yet. For now, I am reading in all as Strings.
                    row.add(rs.getObject(j).toString());
        public String getColumnName(int c) {
            return (String)columnNames.get(c);
        public int getColumnCount() {
            return columnNames.size();
        public Object getValueAt(int r,int c) {
            ArrayList row = (ArrayList)data.get(r);
            return (String)row.get(c);
        public int getRowCount() {
            return data.size();
    }If you figured a way to handle run-time casting, please let us know.
    HTH.
    Vijay

  • Problem with LOV and htmldb_custom_auth.get_username

    I have a problem with the itemtype 'select list'. Why the following code creates an 'Ora Invalid Number Error'?
    SELECT ADRESSE d
          ,KAD_ID r
    FROM   V_KUNDE_ADRESSEN_STANDORTE
    WHERE  KND_KUNDEN_NR = htmldb_custom_auth.get_username
    AND    KAD_TYP_AUFTR_BESTAETIGUNG = 1It works if I put a 'to_char' arround the KND_KUNDEN_NR. But it slows down the query and it takes up to 5-7 sec.
    SELECT ADRESSE d
          ,KAD_ID r
    FROM   V_KUNDE_ADRESSEN_STANDORTE
    WHERE  to_char(KND_KUNDEN_NR) = htmldb_custom_auth.get_username
    AND    KAD_TYP_AUFTR_BESTAETIGUNG = 1Actual I use an hidden item with &APP_USER. as default value und use it in the query.
    Is there an other, maybe better way to handle this problem?
    PS: The username is the Customer-No. an it is only numeric. A 'to_number(htmldb_custom_auth.get_username)' returns the same invalid number error.

    Andreas,
    What version are you using?
    Why don't you use :APP_USER in the where clause?
    Scott

  • How to create a page with LOV and a Go Button that calls a sproc

    I'm new to Apex but not Oracle. I've done some VB, C and other programming.
    I have read the 2 Day + and worked through most of the advanced tutorials as well as the Apex 3.0 ermployee task OBE. I'm looks for an OBE or assistance in doing the following:
    I need to create a page that has a dynamic LOV that pulls CUSTOMER NAME as d, and ID as r (this I can do).
    I need a button on the page "Go". Here's the use case.
    User selects a customer from the LOV
    User presses Go
    Go invokes myschema.go_sproc and passes in LOV selected Cust ID
    myschema.go_sproc does some work and passes back a Status
    Status is displayed to the user
    Any pointers are appreciated.

    Great.
    Two last questions:
    #1 Is there a Apex Reference, like the SQL Reference, that lists all the various settings and options and their meanings, for instance on the create region page there are many different region types. Is this information centralized in one place? I don't see (or I am missing it) in the list of Apex 3.2 books.
    #2 For my use case would you use a HTML region or some other type of region?
    Thanks again.
    George

  • Trouble with components and JTables

    hey everyone i have a question. i created a gui that has 2 panels each containing a table. each table contains a certain amount of default data. i have a jmenu bar also and when one of the menus is clicked a dialog is presented that returns a new sql statement to place into the table. that all works fine i get the sql statement i search the database and all is good.
    here is my problem
    when i try to remove the table from the panel an add a new table to the same panel nothing is presented but a blank panel.(ie the table doesnt show up). but if i add the new table to a seperate frame the new table shows up fine. any suggestions
    matt
    [email protected]

    use java.awt.CardLayout

  • Query for create manual tabular form using apex collection using item textfield with autocomplete

    can we create a manual tabular form inside item textfield with autocomplete ?
    how it is possible?
    with Apex_item API used for this item.
    i used this code for creat  cascading select list
    select seq_id,
    APEX_ITEM.SELECT_LIST_FROM_QUERY(
            p_idx                       =>   1,
            p_value                     =>   c001,
            p_query                     =>   'SELECT C001 D
         , C002 R
      FROM APEX_COLLECTIONS
    WHERE COLLECTION_NAME = ''col1''',
            p_attributes                =>   'style="width:150px" onchange="f__name(this,parseInt(#ROWNUM#));"',
            p_show_null                 =>   'Yes',
            p_null_value                =>   null,
            p_null_text                 =>   '- Select name -',
            p_item_id                   =>   'f01_'|| LPAD (ROWNUM, 4, '0'),
            p_item_label                =>   'Label for f01_#ROWNUM#',
            p_show_extra                =>   'NO') name,
    APEX_ITEM.SELECT_LIST_FROM_QUERY(
            p_idx                       =>   2,
            p_value                     =>   c002,
            p_query              =>   ' SELECT null d, null r FROM dual WHERE 1 = 2
            p_attributes                =>   'style="width:150px"',
            p_show_null                 =>   'Yes',
            p_null_value                =>   null,
            p_null_text                 =>   '- Select name -',
            p_item_id                   =>   'f02_'|| LPAD (ROWNUM, 4, '0'),
            p_item_label                =>   'Label for f02_#ROWNUM#',
            p_show_extra                =>   'NO')name2,
    from apex_collections
    where
    collection_name = 'COLLECTION1'
    It is fine .
    but i want item in tabular form  textfield with autocomplete and remove select list. my requirement is using textfield with autocomplete select a employee name and second item textfield with autocomplete display dependent perticular employee related multiple task.
    how it is created.i have no idea related textfield with autocomplete.Please help me....

    pt_user1
    I understand that the add row button is currently doing a submit.
    To not submit the page you need a dynamic action on the page.
    Does the javascript function addRow do what you want?
    Otherwise have a look at the following two threads Add row in manual tabular form using dynamic action and Accessing Tabular Form & Add Elements to Collection without Page Submit.
    You're process could be something like:
    Add the new values to the collection using the idea's in the second thread and at the same time add the new row.
    And as second action refresh your tabular form.
    If you get stuck set up what you have done on apex.oracle.com using the tables from the demo application.
    Nicolette

  • Transparent TextField with Synth Look and Feel

    I am trying to use synth to implement a textfield with a transparent background, and having some problems with it. I can see my panel and the transparent field fine enough in the beginning, but when the text in the field changes, it writes right over the previous text and becomes a pile of unreadable white marks. I've experimented with varying degrees of transparency, but you can still see the old field underneath slightly. Does anyone have any suggestions? My code is below.
    Thanks.
    synth.xml
    <synth>
    <!-- PANEL -->
    <style id="panelStyle">
        <state>
            <imagePainter method="panelBackground" path="../../../lafImages/papyrus_bkgd.gif" sourceInsets="10 15 10 15"/>
        </state>
    </style>
    <bind style="panelStyle" type="name" key="PAPYRUS_PANEL"/>
    <!-- TEXTFIELD -->
    <style id="textFieldStyle">
        <font name="Kudasai" size="12"/>
        <state>
            <color type="TEXT_FOREGROUND" value="#FFFFFF"/>
            <!-- set the alpha value for transparency in 1st two digits -->
            <color type="BACKGROUND" value="#00000000"/>
        </state>
        <opaque value="false"/>
    </style>
    <bind style="textFieldStyle" type="region" key="TEXTFIELD"/>
    </synth>
    my tester
    class SynthTester {
        private JTextField field;
        public SynthTester(){
            initLookAndFeel();
            JFrame main = new JFrame();
            JPanel panel = new JPanel();
            panel.setName("PAPYRUS_PANEL");
            field = new JTextField(3);
            field.setText("0");
            panel.add(field);
            JButton button = new JButton("+");
            button.addActionListener(new ActionListener() {
                public void actionPerformed(ActionEvent e) {
                    int val;
                    try {
                        val = Integer.parseInt(field.getText());
                    } catch( Exception ex ) {
                        val = 0;
                    val++;
                    field.setText(Integer.toString(val));
            panel.add(button);
            main.add(panel);
            main.pack();
            main.setVisible(true);
        private void initLookAndFeel() {
            SynthLookAndFeel lookAndFeel = new SynthLookAndFeel(); 
            try {
                InputStream is = getClass().getResourceAsStream("synth.xml");
                if( is == null) {
                    System.err.println("unable to load resource stream");
                } else {
                    lookAndFeel.load(is, getClass());
                    UIManager.setLookAndFeel(lookAndFeel);
            } catch (Exception e) {
                System.err.println("Couldn't get specified look and feel ("+ lookAndFeel+ "), for some reason.");
                System.err.println("Using the default look and feel.");
                e.printStackTrace();
                System.exit(1);
    }

    As its name implies, an imagePainter element creates a SynthPainter that paints from an image. For example:
    <synth>
    <style id="example">
    <state>
    <color value="white" type="BACKGROUND"/>
    </state>
    <imagePainter method="panelBackground" path="background.png"
    sourceInsets="5 6 6 7" paintCenter="false"/>
    <insets top="5" bottom="6" right="7" left="6"/>
    </style>
    <bind style="example" type="region" key="Panel"/>
    </synth>

  • TableModel and JTable

    I'm fairly new to Java and am currently working on a class project involving JDBC and mySQL.
    The information that I pull out of the database is being displayed in a table. I have textfields and buttons that allow users to input new information. The problem is that I need the tables to update when this new information is submitted.
    I have figured out that I should use a tablemodel and the method fireTableDataChanged, but I have no idea how to implement a tabelmodel. Currently I create an array from the database data, create a table and add the arrays, then I add the table to a scroll plane, and finally add the scrollpane to a tab.
    Where and how do I implement/use TableModel? Can I just use DefaultTableModel?
    I am very confused right now :(

    I believe that when learning how to use JTable you should just use the DefaultTableModel, especially for a simple requirement like reading data from a database. Here is a simple example. Notice how only a couple of lines of code are for the creation and display of the JTable. The rest of the code is for reading the database
    import java.awt.*;
    import java.io.*;
    import java.sql.*;
    import java.util.*;
    import javax.swing.*;
    import javax.swing.table.*;
    public class TableFromDatabase extends JFrame
         public TableFromDatabase()
              Vector columnNames = new Vector();
            Vector data = new Vector();
            try
                //  Connect to the Database
                String driver = "sun.jdbc.odbc.JdbcOdbcDriver";
    //            String url = "jdbc:odbc:Teenergy";  // if using ODBC Data Source name
                String url =
            "jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=c:/teenergy/data/teenergy.mdb";
                String userid = "";
                String password = "";
                Class.forName( driver );
                Connection connection = DriverManager.getConnection( url, userid, password );
                //  Read data from a table
                String sql = "Select * from Page";
                Statement stmt = connection.createStatement();
                ResultSet rs = stmt.executeQuery( sql );
                ResultSetMetaData md = rs.getMetaData();
                int columns = md.getColumnCount();
                //  Get column names
                for (int i = 1; i <= columns; i++)
                    columnNames.addElement( md.getColumnName(i) );
                //  Get row data
                while (rs.next())
                    Vector row = new Vector(columns);
                    for (int i = 1; i <= columns; i++)
                        row.addElement( rs.getObject(i) );
                    data.addElement( row );
                rs.close();
                stmt.close();
            catch(Exception e)
                System.out.println( e );
            //  Create table with database data
            JTable table = new JTable(data, columnNames)
                   public Class getColumnClass(int column)
                        return getValueAt(0, column).getClass();
            JScrollPane scrollPane = new JScrollPane( table );
            getContentPane().add( scrollPane );
            JPanel buttonPanel = new JPanel();
            getContentPane().add( buttonPanel, BorderLayout.SOUTH );
        public static void main(String[] args)
            TableFromDatabase frame = new TableFromDatabase();
            frame.setDefaultCloseOperation( EXIT_ON_CLOSE );
            frame.pack();
            frame.setVisible(true);
    }If you want to know when data has been changed in the table then you need to add a TableModelListener to your TableModel. This posting shows a simple example of of using a TableModelListener:
    http://forum.java.sun.com/thread.jspa?threadID=527578&messageID=2535291

  • Can I build a interactive log-in form with Edge and Export Raw code to edit?

    Hey Everyone,
    I love adobe edge, but I'm still getting used to it. It's very easy to use, but I ran into an issue. I am redesigning a webpage for a client and need to build a log-in page and re-design the site. The site is a Dashboard that will be on an ipad and computer. What I need to do is take my design and design a template for them to use. They require HTML4 and up with some coding (not a fan of coding, I am strictly a designer, and before you guys critize about why I took the job when I don't know coding, it's a side project they are having me do for them while the main design project is being evaluated and I'm on contract so I don't have a choice, still would like to learn how to achieve what I need) but I still want to maintain the animation I have planned for the log in, very simple nothing special. Basically what I want is when you log in and click in the "text" box the background image will go from the clear image to the blur image.
    What I've done so far,
    I built the log-in page as a test to see if it would work (didn't take long since I saved as a PSD and imporated the files). I've attached an imagw to show a visual of what I am trying to do. The animation works fgreat for what i need, but now I want the box I click in to be writtable inside and work with the animation. I can't seem to figure out how to make the box's I created typable to type in for a "Username" and "Password" in other word interative. I used the boxes provided in edge because they are HTML boxes, but I want them to become text boxes to enter the Username and Password (It doesn't have to be perfect just enough for me to type in to pass off to the programmers). I know you can make edge interative with muse and what not and I was hoping to achieve what I want for them so I can export it and pass it off to the programmers. Is there a way to add this in Edge? If not, I know you can export to Dreamweaver and  when I import the file to Dreamweaver I just see a grey box with the file I created (.oma I think) from Edge but not the content unless I "Preview it" in a browser.
    So is there a way to build what I want in edge without resorting to dreamweaver? If so and there is code to input can you guys provide step by step on how to put it in the program? And is there a way to export the project so I can pass the RAW code to the programmers to do there thing? Lastly, is there a way to incorporate Jquery mobile to Edge? For the Dashboard can I build the same thing in Edge? Example what will be in there are things like charts, Calendars, Dates, Etc, Etc.  If I need to resort to building it in dreamweaver I can provide the code for you guys to alter to change for what I need. Like I said I'm not a big fan of coding and a little stranger to it. I just know the basics and the fact I haven't touched dreamweaver since CS4 makes it even harder to use. Some tools I like are gone such as AP divs. However i like the new elements you can inject into the program such as the Jquery stuff, but for the simplist things I want to do such as moving them left or right or centering them is a different story.
    Please Help!
    Thanks!

    if you search on the forum you can find useful posts about creating a form in edge
    Zaxist

  • Performance issues with LOV bindings in 3-tier BC4J architecture

    We are running BC4J and JClient (Jdeveloper 9.0.3.4/9iAS 9.0.2) in a 3-tier architecture, and have problems with the performance.
    One of our problems are comboboxes with LOV bindings. The view objects that provides data for the LOV bindings contains simple queries from tables with only 4-10 rows, and there are no view links or entity objects to these views.
    To create the LOV binding and to set the model for the combobox takes about 1 second for each combobox.
    We have tried most of tips in http://otn.oracle.com/products/jdev/tips/muench/jclientperf/index.html, but they do not seem to help on our problem.
    The performance is OK (if not great) when the same code is running as 2-tier.
    Does anyone have any good suggestions?

    I can recommend that you look at the following two bugs in Metalink: Bug 2640945 and Bug 3621502
    They are related to the disabling of the TCP socket-level acknowledgement which slows down remote communications for EJB components using ORMI (the protocol used by Oracle OC4J) to communicate between remote EJB client and server.
    A BC4J Application Module deployed as an EJB suffers this same network latency penalty due to the TCP acknowledgement.
    A customer sent me information (that you'll see there as a part of Bug# 3621502) like this on a related issue:
    We found our application runs very slow in 3-Tier mode (JClient, BC4J deployed
    as EJB Session Bean on 9iAS server 9.0.2 enterprise edition). We spent a lot
    of time to tune up our codes but that helped very little. Eventually, we found
    the problem seemed to happen on TCP level. There is a 200ms delay in TCP
    level. After we read some documents about Nagle Algorithm,  we disabled a
    registry key (TcpDelAckTicks) in windows2000  on both client and server. This
    makes our program a lot faster.
    Anyway, we think we should provide our clients a better solution other than
    changing windows registry for them, for example, there may be a way to disable
    that Nagle's algorithm through java.net.Socket.setTcpNoDelay(true), in BC4J,
    or anywhere in our codes. We have not figured out yet.
    Bug 2640945 was fixed in Oracle Application Server 10g (v9.0.4) and it now disables this TCP Acknowledgement on the server side in that release. In the BugDB, I see backport patches available for earlier 9.0.3 and 9.0.2 releases of IAS as well.
    Bug 3621502 is requesting that that same disabling also be performed on the client side by the ORMI code. I have received a test patch from development to try out, but haven't had the chance yet.
    The customer's workaround in the interim was to disable this TCP Acknowledgement at the OS level by modifying a Windows registry setting as noted above.
    See Also http://support.microsoft.com/default.aspx?kbid=328890
    "New registry entry for controlling the TCP Acknowledgment (ACK) behavior in Windows XP and in Windows Server 2003" which documents that the registry entry to change disable this acknowledgement has a different name in Windows XP and Windows 2003.
    Hope this info helps. It would be useful to hear back from you on whether this helps your performance issue.

Maybe you are looking for