New Date().getTime() is returning a negative number

f I trace new Date().toUTCString() I get something like: Fri Aug 12 07:14:06 2011 UTC. perfect. If I trace new Date().getTime() I get some long negative number which is decreasing as I continue to trace it. This is totally unexpected. Obviously my system clock is OK. What gives?

hey @kglad, thanks for sticking with this question. At the top of the post I traced: `new Date().toUTCString()` and got: `Fri Aug 12 07:14:06 2011 UTC` My system time is good. Flash is getting the right UTC time. I have restarted since then but have not yet been back in that particular project to see whether the date is tracing something different or still a negative number. I think the next thing to do is to wait until I'm back in there (tongight) and check again.
I'll update this post!

Similar Messages

  • New Date() -- getYear() & getMonth() return strange/wrong values

    Hi,
    I am writing this Javascript under a text field initialize event of Livecycle:
    var date = new Date();
    xfa.host.messageBox("year "+date.getYear(),"Message",3);
    xfa.host.messageBox("month "+date.getMonth(),"Message",3);
    I get "113" for the first messageBox and "5" for the second.
    Shouldn't they be 13 (or 2013) and 6 as we are in June 2013 now??
    Thanks

    Apparently solved, sorry for rush-asking the forum. I am using date.getFullYear() to have 2013 and I found that months are 0-indexed. Therefore, January is 0.
    Thanks anyway

  • Anyway to get Date.getTime() to return back in seconds?

    according to javadocs, getTime() returns in miliseconds. I need it in seconds. Without doing any conversion to String and String manipulation, is there an easy way to get this to return in seconds to get it in seconds?

    just keeping u on your toes...Riiiiight. A response more like D'oh! would be more appropriate.

  • Data in New Data in ODS

    Hello,
    I am trying to load data from r/3 into the ODS.
    When i check in the monitor its saying that
    07:37:12 ( 549741 from 549741 Records )
    But its not turning green.Its still yellow.
    I checked the new data in the ODS. The number of entries in it is 0.

    Hi
    You can view the data in ODS only after the status is green.
    Check if it is showing any error in the description.
    If not then wait for some time. we can't do anything as is it showing yellow(in process) status
    Cheers
    SM

  • Problem defining partition for storing value 0 with new data

    Hi forumers,
    I've a problem with partitioning and need some advices.
    I've a table that will be partitioned by column Process_N which have values from 0 to 50000:
    Process_N between 1 and 29999 represents old data;
    Process_N >= 30000 represents new data;
    Process_N = 0 means the row is not processed yet and so these value represents new data too.
    Can I have a partition for old values (from 1 to 29999) and another partition to store new values (0 + values >= 30000) ? Hou can I define that ?
    Thank you in advance.
    Best Regards,
    Helena

    Helena,
    What's your oracle version? I think it will be better to create 3 partitions usign RANGE partitions (< 1, 2-29999, >=30000 <=50000). Is there a specific reason you want to include 0 and values greater than 29000 in one partition? What the significant difference between 0 and 30000 specially as both represent new data?
    CREATE TABLE my_part_table (
       process_n NUMBER NULL,
       my_data VARCHAR2 (1 BYTE) NULL,
       my_other_data VARCHAR2 (30 BYTE) NULL,
       data_state NUMBER NULL
    TABLESPACE test_data
    PARTITION BY RANGE (process_n)
       (PARTITION partition_0
           VALUES LESS THAN (1)
           TABLESPACE test_data,
       PARTITION partition_2_29999
          VALUES LESS THAN (30000)
          TABLESPACE test_data,
       PARTITION partition_30000
          VALUES LESS THAN (50001)
          TABLESPACE test_data);Regards

  • IOS Show negative number as zero

    Hi,
    I am creating a table in numbers for iPad and what I am trying to do is when a formula returns a negative number to get the cell to display 0 rather than the actual negative value but then display the positive numbers normally.
    Any ideas?
    Thanks

    If cell A1 has a value, then you can place this formula in cell B1:
    B1=if(A1<0, 0, A1)
    said in plain English.... if A1 is less than 0 return 0 otherwise return the value in A1.

  • Insert new dates

    Hi all,
    I have one table tableA(ID number, F1 varchar2(100), F2 varchar2(100))
    with 100 dates.
    Problem is how insert 10 news dates from other tables tableB (ID1 number, FF1 varchar2(100),FF2 varchar2(100)) with pl procedure? Where can found any example procedure for inserting dates into existing tables?
    thanks all

    You can use sql to do this
    insert into tableA
    select id1,ff1,ff2 from tableB
    where <condition for 10 new dates>

  • New table without statistics returns invalid number of rows

    Hi,
    I've been searching for a while now for an explanation for the following "problem"
    We have an Oracle 11.1.0.7 database on AIX5.3
    In this database we have two tables, called KRT_PRODUCTS_INFO and KRT_STRUCTURES_INFO ( the table name don't really matter ).
    The scenario is as following:
    If we recreate these tables like:
    CREATE TABLE KRT_PRODUCT_INFO_BUP AS SELECT * FROM KRT_PRODUCT_INFO;
    DROP TABLE KRT_PRODUCT_INFO CASCADE CONSTRAINTS;
    CREATE TABLE KRT_PRODUCT_INFO (...) TABLESPACE PIM_DATA NOLOGGING NOCOMPRESS NOCACHE NOPARALLEL MONITORING;
    CREATE INDEX KRT_PRODUCT_INFO_X1 ON KRT_PRODUCT_INFO (PRODUCT_NUMBER) NOLOGGING TABLESPACE PIM_DATA NOPARALLEL;
    CREATE INDEX KRT_PRODUCT_INFO_X2 ON KRT_PRODUCT_INFO (PIM_ARTICLEREVISIONID) NOLOGGING TABLESPACE PIM_DATA NOPARALLEL;
    INSERT INTO KRT_PRODUCT_INFO (SELECT * FROM KRT_PRODUCT_INFO_BUP);
    COMMIT;
    CREATE TABLE KRT_STRUCTURE_INFO_BUP AS SELECT * FROM KRT_STRUCTURE_INFO;
    DROP TABLE KRT_STRUCTURE_INFO CASCADE CONSTRAINTS;
    CREATE TABLE KRT_STRUCTURE_INFO (...) TABLESPACE PIM_DATA NOLOGGING NOCOMPRESS NOCACHE NOPARALLEL MONITORING;
    CREATE INDEX KRT_STRUCTURES_X1 ON KRT_STRUCTURE_INFO (STRUCTURE_GRP_REV_ID) NOLOGGING TABLESPACE PIM_DATA NOPARALLEL;
    CREATE INDEX KRT_STRUCTURES_X2 ON KRT_STRUCTURE_INFO (STRUCTURE_GRP_IDENTIFIER) NOLOGGING TABLESPACE PIM_DATA NOPARALLEL;
    CREATE INDEX KRT_STRUCTURES_X3 ON KRT_STRUCTURE_INFO (STRUCTURE_GRP_ID) NOLOGGING TABLESPACE PIM_DATA NOPARALLEL;
    INSERT INTO KRT_STRUCTURE_INFO (SELECT * FROM KRT_STRUCTURE_INFO_BUP);
    COMMIT;
    and we run a complex query with these two tables, this query only return a couple of rows ( exactly 24 !!! )
    If we however generate statistics on these tables after creation, the correct number of rows is returned, being 1.167.991 rows
    The statistics are gathered using:
    BEGIN
    SYS.DBMS_STATS.GATHER_TABLE_STATS (
    OwnName => 'PIM_KRG'
    ,TabName => 'KRT_PRODUCT_INFO'
    ,Estimate_Percent => NULL
    ,Method_Opt => 'FOR ALL COLUMNS SIZE REPEAT '
    ,Degree => NULL
    ,Cascade => TRUE
    ,No_Invalidate => FALSE);
    END;
    BEGIN
    SYS.DBMS_STATS.GATHER_TABLE_STATS (
    OwnName => 'PIM_KRG'
    ,TabName => 'KRT_STRUCTURE_INFO'
    ,Estimate_Percent => NULL
    ,Method_Opt => 'FOR ALL COLUMNS SIZE REPEAT '
    ,Degree => NULL
    ,Cascade => TRUE
    ,No_Invalidate => FALSE);
    END;
    /I can imagine that the 'plan' for the query used is wrong because of missing statistics.
    But I can't imagine that it would actually return an incorrect number of rows.
    I tested this behaviour in Toad and sqlplus ( first thought it was Toad ), and both behave the same.
    Another fact is, that the "problem" is NOT reproducable on our TEST environment, that runs on Oracle 11.1.0.7 on Windows2008
    Just to be sure this is the "complex" query used. It is not developed by me, and I think it looks somewhat strange but that shouldn't matter:
    SELECT sr."Identifier" STRUCTURE_IDENTIFIER
    , ar_i."Identifier" ITEM_NUMBER
    , SUM (REPLACE (NVL (s.HIDE_LE10, 0) + NVL (p.HIDE_LE10, 0), 2, 1))
    hide_le10
    , SUM (REPLACE (NVL (s.HIDE_LE30, 0) + NVL (p.HIDE_LE30, 0), 2, 1))
    hide_le30
    , SUM (REPLACE (NVL (s.HIDE_LE40, 0) + NVL (p.HIDE_LE40, 0), 2, 1))
    hide_le40
    , SUM (REPLACE (NVL (s.HIDE_LE50, 0) + NVL (p.HIDE_LE50, 0), 2, 1))
    hide_le50
    , SUM (REPLACE (NVL (s.HIDE_LE55, 0) + NVL (p.HIDE_LE55, 0), 2, 1))
    hide_le55
    , SUM (REPLACE (NVL (s.HIDE_LE60, 0) + NVL (p.HIDE_LE60, 0), 2, 1))
    hide_le60
    , SUM (REPLACE (NVL (s.HIDE_LE70, 0) + NVL (p.HIDE_LE70, 0), 2, 1))
    hide_le70
    , SUM (REPLACE (NVL (s.HIDE_LE75, 0) + NVL (p.HIDE_LE75, 0), 2, 1))
    hide_le75
    , SUM (REPLACE (NVL (s.HIDE_LE58, 0) + NVL (p.HIDE_LE58, 0), 2, 1))
    hide_le58
    , SUM (REPLACE (NVL (s.HIDE_LE80, 0) + NVL (p.HIDE_LE80, 0), 2, 1))
    hide_le80
    , SUM (REPLACE (NVL (s.HIDE_LE90, 0) + NVL (p.HIDE_LE90, 0), 2, 1))
    hide_le90
    , SUM (REPLACE (NVL (s.HIDE_LE92, 0) + NVL (p.HIDE_LE92, 0), 2, 1))
    hide_le92
    , SUM (REPLACE (NVL (s.HIDE_LE94, 0) + NVL (p.HIDE_LE94, 0), 2, 1))
    hide_le94
    , SUM (REPLACE (NVL (s.HIDE_LE96, 0) + NVL (p.HIDE_LE96, 0), 2, 1))
    hide_le96
    , COUNT (*) cnt
    FROM KRAMP_HPM_MAIN."StructureRevision" sr
    , KRAMP_HPM_MAIN."StructureGroupRevision" sgr
    , KRAMP_HPM_MASTER."ArticleStructureMap" asm
    , KRAMP_HPM_MASTER."ArticleRevision" ar_p
    , KRAMP_HPM_MASTER."ArticleDetail" ad_p
    , KRAMP_HPM_MASTER."ArticleRevision" ar_i
    , KRAMP_HPM_MASTER."ArticleDetail" ad_i
    , KRAMP_HPM_MASTER."ArticleReference" ar
    , KRT_STRUCTURE_INFO s
    , KRT_PRODUCT_INFO p
    WHERE sr."StructureID" = sgr."StructureID"
    AND sgr."StructureGroupID" = asm."StructureGroupID"
    AND ar_p."ID" = asm."ArticleRevisionID"
    AND ar_p."ID" = ad_p."ArticleRevisionID"
    AND ad_p."Res_Text100_02" = 'PRODUCT'
    AND ar_i."ID" = ad_i."ArticleRevisionID"
    AND ad_i."Res_Text100_02" = 'ARTICLE'
    AND ar."ArticleRevisionID" = ar_p."ID"
    AND ar."ReferencedSupplierAID" = ar_i."Identifier"
    AND s.STRUCTURE_GRP_REV_ID = sgr."ID"
    AND p.PIM_ARTICLEREVISIONID = ar_p."ID"
    GROUP BY sr."Identifier", ar_i."Identifier";Any ideas are welcome..
    Thanks
    FJFranken

    Hemant K Chitale wrote:
    These two tables are in the PIM_KRG schema while the other tables in the query are distributed across two other schemas "KRAMP_HPM_MAIN" and "KRAMP_HPM_MASTER" ?
    Do you happen to have the same table names occurring in multiple schemas - the query is then referencing the data in the wrong schema ?
    Hemant K ChitaleHi,
    This is not the case. The KRAMP_HPM schema's are application dedicated schema's
    And this also then does not explain why the results are correct after generating statistics.
    Anyway thanks for the tip.
    FJFranken

  • Trying to change the APN on my iPad for a new data provider.  Each time it returns to the original. Any suggestions?

    trying to change the APN on my iPad for a new data provider.  Each time it returns to the original. Any suggestions?

    Hi Canberabomber,
    If you are having issues setting or changing the APN on your iPad, you may find the following article helpful (apologies if you have already seen it):
    iOS: About cellular data network settings (viewing or editing the APN)
    http://support.apple.com/kb/ht2283
    Regards,
    - Brenden

  • CFAbsoluteTime returns negative number

    how come I get a negative number when I do
    CFAbsoluteTime absTime = CFAbsoluteTimeGetCurrent();
    dolog(@"absTime: %0.f",absTime);
    I get: absTime: -29506973
    This befuddles me

    nevermind, my iPhone was set to before the epoch

  • Adding new data to a notification

    Hi everyone,
    I have a requirement to modify an approval notification and add some new data to it. On the internet I have found examples of how to embed an OA Framework region into a workflow notification. For example here - http://www.oraclearea51.com/oracle-technical-articles/64-oaf-beginners-guide/232-oaf-and-workflow-jrad-notification-oaf-region-embedded-in-notification.html.
    The truth is, my knowledge of OA Framework is very sketchy but I hear there is a method to do this using PL/SQL. I think I will be more comfortable with that for now.
    Is there a tutorial on the net to do this or can anyone point me to a way to achieving this in my workflow notification?
    Many thanks

    Hi,
    You need to use a PL/SQL document if you don't want to use an OA framework region.
    1 - define an item attribute of type document. Set this to PLSQL:<code to call>/<document ID>, or PLSQLCLOB:<code to call>/<document ID> depending on whether you are going to return up to 32k of text or more than that.
    Typically, the document ID is set to <item type>:<item key> so that you can programatically split it into the type and key to link back to the Workflow process and retrieve any attributes that you want to using the standard APIs.
    2 - Define the code, according to the standard signature for document APIs
    procedure <procedure name> (document_id in varchar2,
    display_type in varchar2,
    document in out varchar2,
    document_type in out varchar2)
    or
    procedure <procedure name> (document_id in varchar2,
    display_type in varchar2,
    document in out clob,
    document_type in out varchar2)
    3 - In your code, build the content that you want to, either as text or HTML depending on the display type that is passed in. Add that to the document variable that you are returning.
    For more information, look in the Oracle Workflow Developer's Guide, Release 2.6.3.5 - Part Number B12161-02 which can be found here: http://download.oracle.com/docs/cd/B14099_19/integrate.1012/b12161/deffa04.htm
    HTH,
    Matt
    WorkflowFAQ.com - the ONLY independent resource for Oracle Workflow development
    Alpha review chapters from my book "Developing With Oracle Workflow" are available via my website http://www.workflowfaq.com
    Have you read the blog at http://www.workflowfaq.com/blog ?
    WorkflowFAQ support forum: http://forum.workflowfaq.com

  • How to enter a new Date and Time each day in a Numbers Spreadsheet...

    Hi... I have finally decided to move away from Excel and really give Numbers a shot... I have an application where each day I first enter the current date and time into a particular cell of a new row and then I enter some data in cells adjacent (in the same row) as that entered date-time. Then the next day I want to again enter the (new) current date and time and add more data next to that new date-time and so forth day after day... You can't use something as simple as =NOW() because then everyday, ALL of the date-times would change to the current time... Nope, now what I want... I just want to be able to EASILY and QUICKLY enter the current date-time value in one call and then have that specific value stay there forever... In Excel, this is accomplished with the keyboard shortcuts of
    <cntl> followed by a semicolon (;) for the date
    then enter a single space (for separation of date versus time) followed last by
    <command> followed again by a semicolon...
    So all together that is,
    <cntl><;><sp><command><;>
    and that puts something like
    4/10/2010 9:49:00 AM
    in a single cell...
    That's what I now want to be able to do in Numbers...
    How do I do that??? Do I use the menubar item "Insert Date and Time" and if so, how exactly do I get the current time to show up in the chosen cell??? With formatting??? Is there a keyboard shortcut method like the one I mentioned that works for Excel?? I've perused the manual and though I found lots on date-time, I didn't see how to do specifically what I want to do... I likely just missed it as surely it must be easy to do...
    Any feedback would be much appreciated... thanks... bob...

    Badunit wrote:
    The result of running that script is "UI Enabled = TRUE".
    I have cells named by the header values.
    This may be the problem.
    The script is an old one which deciphered only the letter+digit cell references.
    Here is a new version which works with every kind of cell reference.
    --[SCRIPT insertDateTime]
    Enregistrer le script en tant que Script : insertDateTime.scpt
    déplacer l'application créée dans le dossier
    <VolumeDeDémarrage>:Users:<votreCompte>:Library:Scripts:Applications:Numbers:
    Il vous faudra peut-être créer le dossier Numbers et peut-être même le dossier Applications.
    Placez le curseur dans la cellule qui doit recevoir la date_heure
    menu Scripts > Numbers > insertDateTime
    La cellule pointée reçoit la date_heure.
    L'aide du Finder explique:
    L'Utilitaire AppleScript permet d'activer le Menu des scripts :
    Ouvrez l'Utilitaire AppleScript situé dans le dossier Applications/AppleScript.
    Cochez la case "Afficher le menu des scripts dans la barre de menus".
    +++++++
    Save the script as a Script : insertDateTime.scpt
    Move the newly created application into the folder:
    <startup Volume>:Users:<yourAccount>:Library:Scripts:Applications:Numbers:
    Maybe you would have to create the folder Numbers and even the folder Applications by yourself.
    Put the cursor in the cell which must receive the date_time.
    menu Scripts > Numbers > insertDateTime
    The pointed cell receives the current date_time.
    The Finder's Help explains:
    To make the Script menu appear:
    Open the AppleScript utility located in Applications/AppleScript.
    Select the "Show Script Menu in menu bar" checkbox.
    Yvan KOENIG (VALLAURIS, France)
    2009/03/01
    2010/04/11 is now able to treat every kind of cell references
    property theApp : "Numbers"
    --=====
    on run
    set {dName, sName, tName, rname, rowNum1, colNum1, rowNum2, colNum2} to my getSelParams()
    my doYourDuty(colNum1, rowNum1, tName, sName, dName)
    end run
    --=====
    on doYourDuty(c, r, t, s, d) (*
    c = columnIndex
    r = rowIndex
    t = table's name
    s = sheet's name
    d = document's name *)
    local cdt
    set cdt to my cleanThisDate(current date) (* the new date_time as a clean date_time *)
    tell application "Numbers" to tell document d to tell sheet s to tell table t
    set value of cell r of column c to cdt as text
    end tell -- application …
    end doYourDuty
    --=====
    on cleanThisDate(dt)
    (* ugly code but once I got date_time with milliseconds so if necessary, I drop them *)
    local l
    set l to my decoupe(dt as text, ":")
    if (count of l) > 3 then set dt to date (my recolle(items 1 thru 3 of l, ":"))
    return dt
    end cleanThisDate
    --=====
    on getSelParams()
    local r_Name, t_Name, s_Name, d_Name, col_Num1, row_Num1, col_Num2, row_Num2
    set {d_Name, s_Name, t_Name, r_Name} to my getSelection()
    if r_Name is missing value then
    if my parleAnglais() then
    error "No selected cells"
    else
    error "Il n'y a pas de cellule sélectionnée !"
    end if
    end if
    set two_Names to my decoupe(r_Name, ":")
    set {row_Num1, col_Num1} to my decipher(item 1 of two_Names, d_Name, s_Name, t_Name)
    if item 2 of two_Names = item 1 of two_Names then
    set {row_Num2, col_Num2} to {row_Num1, col_Num1}
    else
    set {row_Num2, col_Num2} to my decipher(item 2 of two_Names, d_Name, s_Name, t_Name)
    end if
    return {d_Name, s_Name, t_Name, r_Name, row_Num1, col_Num1, row_Num2, col_Num2}
    end getSelParams
    --=====
    set {rowNumber, columnNumber} to my decipher(cellRef,docName,sheetName,tableName)
    apply to named row or named column !
    on decipher(n, d, s, t)
    tell application "Numbers" to tell document d to tell sheet s to tell table t to return {address of row of cell n, address of column of cell n}
    end decipher
    --=====
    set { d_Name, s_Name, t_Name, r_Name} to my getSelection()
    on getSelection()
    local _, theRange, theTable, theSheet, theDoc, errMsg, errNum
    tell application "Numbers" to tell document 1
    repeat with i from 1 to the count of sheets
    tell sheet i
    set x to the count of tables
    if x > 0 then
    repeat with y from 1 to x
    try
    (selection range of table y) as text
    on error errMsg number errNum
    set {_, theRange, _, theTable, _, theSheet, _, theDoc} to my decoupe(errMsg, quote)
    return {theDoc, theSheet, theTable, theRange}
    end try
    end repeat -- y
    end if -- x>0
    end tell -- sheet
    end repeat -- i
    end tell -- document
    return {missing value, missing value, missing value, missing value}
    end getSelection
    --=====
    on decoupe(t, d)
    local l
    set AppleScript's text item delimiters to d
    set l to text items of t
    set AppleScript's text item delimiters to ""
    return l
    end decoupe
    --=====
    on parleAnglais()
    local z
    try
    tell application theApp to set z to localized string "Cancel"
    on error
    set z to "Cancel"
    end try
    return (z is not "Annuler")
    end parleAnglais
    --=====
    --[/SCRIPT]
    It's available on my idisk :
    <http://public.me.com/koenigyvan>
    Download :
    For_iWork:iWork '09:for_Numbers09:insertDateTime.zip
    Yvan KOENIG (VALLAURIS, France) dimanche 11 avril 2010 14:16:41

  • A serious problem with JTable to update with new data.

    I am customizing a JTable. In the table 3 rows and row wise same data presents. After every 30 sec table will be update with new data. But a exception is coming like: ArrayIndexOutofBound 4>=0. Exception is not coming so frequently some time it comes within 1 min or after 1 hour of program running and each time *4>=0* is varies with different number.
    Here is the model i am using and to update table i am calling setTableData( ) with updated vector as a argument.
    public class MyModel extends AbstractTableModel {
              protected Vector m_vector;          
              public MyModel(Vector m_vector) {     this.m_vector = m_vector;     }
              public int getColumnCount() {          
                   return m_vector==null ? 0 : m_vector.size();           
              public int getRowCount() {     return 3;          }
              public String getColumnName(int col) {     return null;     }
              public Object getValueAt(int row, int col) {
                       if (col < 0 || col>=getColumnCount())
                      return null;
                  try{
                  MyData column = (MyData)m_vector.elementAt(col);               
                  switch (row) {
                      case 0: return column.gate;
                      case 1: return column.time;
                      case 2: return column.status;            
                  }}catch(Exception e){
                        System.out.println("Error is here");
                        e.printStackTrace();
                  return null;               
              public Class getColumnClass(int c) {return getValueAt(0, c).getClass();     }
              public boolean isCellEditable(int row, int col) {
                   if (row == 1) { return false; } else { return true; }
              public void setTableData( Vector mData)
                         this.m_vector = new Vector(mData);                    
                         fireTableStructureChanged();
         }Please help me out.

    This is the exception:
    java.lang.ArrayIndexOutOfBoundsException: 4 >= 3
         at java.util.Vector.elementAt(Vector.java:431)
         at javax.swing.table.DefaultTableColumnModel.getColumn(DefaultTableColumnModel.java:277)
         at javax.swing.plaf.basic.BasicTableUI.paintCells(BasicTableUI.java:1047)
         at javax.swing.plaf.basic.BasicTableUI.paint(BasicTableUI.java:974)
         at javax.swing.plaf.ComponentUI.update(ComponentUI.java:142)
         at javax.swing.JComponent.paintComponent(JComponent.java:541)
         at javax.swing.JComponent.paint(JComponent.java:808)
         at javax.swing.JComponent.paintChildren(JComponent.java:647)
         at javax.swing.JComponent.paint(JComponent.java:817)
         at javax.swing.JViewport.paint(JViewport.java:722)
         at javax.swing.JComponent.paintChildren(JComponent.java:647)
         at javax.swing.JComponent.paint(JComponent.java:817)
         at javax.swing.JComponent.paintWithOffscreenBuffer(JComponent.java:4787)
         at javax.swing.JComponent.paintDoubleBuffered(JComponent.java:4740)
         at javax.swing.JComponent._paintImmediately(JComponent.java:4685)
         at javax.swing.JComponent.paintImmediately(JComponent.java:4488)
         at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:410)
         at javax.swing.SystemEventQueueUtilities$ComponentWorkRequest.run(SystemEventQueueUtilities.java:117)
         at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:178)
         at java.awt.EventQueue.dispatchEvent(EventQueue.java:454)
         at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:201)
         at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151)
         at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:145)
         at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:137)
         at java.awt.EventDispatchThread.run(EventDispatchThread.java:100)and Column may increase/decrease depending upon data retrieved.

  • Returns wrong row number with ENTER key in JTable...

    I am having a problem to get exact row number ofJTable when ENTER key is pressed.
    table.getSelectedRow() always retuns one more value when ENTER key is pressed(fired). like
    if i have 5 rows in a table and when my focus is on 1st row and then i press enter key focus moves to next row and it returns 1 instead of 0 for the 1st row.
    I have written a code bellow, please check it out and tell me why it happens. Please click on Add Row button for creating rows in table.
    import javax.swing.*;
       import javax.swing.table.*;
       import java.awt.*;
       import java.awt.event.*;
       import java.util.Vector;
       class TableTest extends JFrame {
         MyTableModel myModel;
         JTable table;
         JButton button;
         JButton buttonQuery;
         int count = 0;
         public TableTest() {
           myModel = new MyTableModel();
           table = new JTable(myModel);
           table.setPreferredScrollableViewportSize(new Dimension(500, 200));
           JScrollPane scrollPane = new JScrollPane(table);
          table.addKeyListener(new KeyAdapter(){
              public void keyTyped(KeyEvent ke)
                if(ke.getKeyChar() == ke.VK_ENTER){
                  System.out.println(table.getSelectedRow());
           getContentPane().add(scrollPane, BorderLayout.CENTER);
           getContentPane().add(button = new JButton("Add Row"),
           BorderLayout.SOUTH);
           getContentPane().add(buttonQuery = new JButton("Query"), BorderLayout.NORTH);
           button.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {
          Object [] aRow = new Object [8];
         String aRow1;
         for (int i=0; i<5; i++) {}
         myModel.addRow(aRow);
       buttonQuery.addActionListener(new ActionListener() {
         public void actionPerformed(ActionEvent e) {
           System.out.println(myModel.getRowCount());
           System.out.println(myModel.getValueAt(1, 3));
       addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent e) {
           System.exit(0);
       class MyTableModel extends AbstractTableModel {
       protected final String[] headers =
       { "No", "Vehicle No", "Date of Loss", "Image Type", "Image Description", "Claim Type", "Scan Date", "User Id" };
       Vector data;
       MyTableModel() {
        data = new Vector();
       public int getColumnCount() {
         return headers.length;
       public int getRowCount() {
        return data.size();
       public Object getValueAt(int row, int col) {
       if (row < data.size() && col < 8) {
         Object [] aRow = (Object []) data.elementAt(row);
       return aRow[col];
       } else {
         return null;
       public void addRow(Object [] aRow) {
         data.addElement(aRow);
        fireTableRowsInserted(data.size()-1, data.size()-1);
       public static void main(String[] args) {
       TableTest frame = new TableTest();
       frame.pack();
       frame.setVisible(true);
       }Regards..
    jaya

    Dear Jaya,
    I have a look at your code. And modified a bit as well to really check the getSelectedRow(). Here's the modified code: I think when key event fired, the table row is changed and then is displays the get selected row. You can check this, if you are on the last row, and you press enter, it displays 0, it means first it changes the row and then displays the selected row which is obviously rowNumber+1.
    Hope it helps.
    import javax.swing.*;
    import javax.swing.table.*;
    import java.awt.*;
    import java.awt.event.*;
    import java.util.Vector;
    class TableTest
        extends JFrame {
      MyTableModel myModel;
      JTable table;
      JButton button;
      JButton buttonQuery;
      JButton buttonSelectedRow;
      int count = 0;
      public TableTest() {
        myModel = new MyTableModel();
        table = new JTable(myModel);
        table.setPreferredScrollableViewportSize
            (new Dimension(500, 200));
        JScrollPane scrollPane = new JScrollPane(table);
        table.addKeyListener(new KeyAdapter() {
          public void keyTyped(KeyEvent ke) {
            if (ke.getKeyChar() == ke.VK_ENTER) {
              System.out.println(table.getSelectedRow());
        getContentPane().add(scrollPane, BorderLayout.CENTER);
        getContentPane().add(button = new JButton("Add Row"), BorderLayout.SOUTH);
        getContentPane().add(buttonQuery = new JButton("Query"), BorderLayout.NORTH);
        getContentPane().add(buttonSelectedRow = new JButton("Get Selected Row Number"), BorderLayout.NORTH);
        button.addActionListener(new ActionListener() {
          public void actionPerformed(ActionEvent e) {
            Object[] aRow = new Object[8];
            String
                aRow1;
            for (int i = 0; i < 5; i++) {}
            myModel.addRow(aRow);
        buttonSelectedRow.addActionListener(new ActionListener() {
          public void actionPerformed(ActionEvent e) {
            System.out.println("Selected Row is: " + table.getSelectedRow());
        buttonQuery.addActionListener(new ActionListener() {
          public void actionPerformed(ActionEvent e) {
            System.out.println(myModel.getRowCount());
            System.out.println(myModel.getValueAt(1, 3));
        addWindowListener(new WindowAdapter() {
          public void windowClosing(WindowEvent e) {
            System.exit(0);
      class MyTableModel
          extends AbstractTableModel {
        protected final String[] headers = {
            "No", "Vehicle No", "Date of Loss", "Image Type", "Image Description",
            "Claim Type", "Scan Date", "User Id"};
        Vector data;
        MyTableModel() {
          data = new Vector();
        public int getColumnCount() {
          return headers.length;
        public int getRowCount() {
          return data.size();
        public Object getValueAt(int row, int col) {
          if (row < data.size() && col < 8) {
            Object[] aRow = (Object[]) data.elementAt(row);
            return aRow[col];
          else {
            return null;
        public void addRow(Object[] aRow) {
          data.addElement(aRow);
          fireTableRowsInserted(data.size() - 1, data.size() - 1);
      public static void main(String[] args) {
        TableTest frame = new TableTest();
        frame.pack();
        frame.setVisible(true);

  • Date.getTime() with very early Dates

    Hi,
    I has a problem with Date.getTime(). If I want the milliseconds from an very early date (like 01.01.1970 00:01:00) I get an negative value from Date.getTime() (in this case -354000). I need this because I want to add a short time (not really date) to a date.
    I has played with different Timezone settings but this doesnt help.
    Has anyone an idea?
    Thank you.
    Bye

    Hmmm, I spotted that there was something wierd like this a few days ago. Consider the following:
    import java.text.*;
    import java.util.*;
    public class Test {
        public static void main(String[] argv)
                throws Exception {
            String dateFormat = "dd.MM.yyyy HH:mm:ss";
            String dateString = "01.01.1970 00:00:00";
            DateFormat df = new SimpleDateFormat(dateFormat);
            Date date = df.parse(dateString);
            System.out.println(date);
            System.out.println(DateFormat.getDateTimeInstance(DateFormat.LONG, DateFormat.LONG).format(date));
            System.out.println(date.getTime());      
            System.out.println();
            Calendar cal = new GregorianCalendar(TimeZone.getTimeZone("GMT"));
            cal.setTime(date);
            System.out.println(cal.getTime());
            System.out.println(cal.getTimeInMillis());
            System.out.println();
            Date date2 = new Date(0);
            System.out.println(date2);
            System.out.println(date2.getTime());             
    }The output is:
    Thu Jan 01 00:00:00 GMT 1970
    01 January 1970 00:00:00 GMT
    -3600000
    Thu Jan 01 00:00:00 GMT 1970
    -3600000
    Thu Jan 01 01:00:00 GMT 1970
    0I get the same results using both IBM and Sun JVMs.
    Any ideas?

Maybe you are looking for

  • How to install P1102w Printer on win server 2003 without connecting the printer

    Hi guys, i have to insatall p1102w printer on my server 2003  to print from my client pc witch the p1002w locally connected when i use remote desktop connection. does anyone knows how to.

  • Fireworks Crashes / Freezes When Using the Text Tool

    Mac Octocore > OSX 10.6.1 Master Collection > Fireworks CS4 First I noticed the text box shift.Then Fireworks CS4 would freeze during any of the following: • Resize grouped text • Move text box • Click on text box to edit with type tool • Double-clic

  • AS2 Drag and Drop Interaction help

    I am trying to create a reusable template for a drag and drop interaction. There are 7 drag objects, 7 targets. Based on a scenario we develop (which of the 7 services [drag objects] are the best solution, for example), I would like to create interac

  • AU not counting toward AAoA Equifax FICO score!!

    I recently pulled my Equifax FICO score and report. The Equifax FICO score usually indicates the oldest account that was opened and average age of accounts. I have a AAoA calculator which when populated with all the accounts on my credit report produ

  • Plots start at zero in plot legend

    I have a graph that plots measurements from 14 different sensors. However, the graph legend starts numbering the plots at zero. I would like this to start at 1 rather than zero, but cannot find an option for this. This should be simple, so perhaps I