1.1 --- a/logger/uihandlerserver/src/java/org/netbeans/server/uihandler/DbInsertion.java Thu Feb 15 03:53:49 2007 +0000
1.2 +++ b/logger/uihandlerserver/src/java/org/netbeans/server/uihandler/DbInsertion.java Thu Feb 15 15:41:44 2007 +0000
1.3 @@ -35,6 +35,7 @@
1.4 */
1.5 public class DbInsertion implements Runnable{
1.6 private static final String GUEST_USER = "GUEST";
1.7 + private static final String UNKNOWN = "unknown";
1.8 private static final int MAXUsrName = 30;
1.9 private static final int MAXMethodName = 100;
1.10 private static final int MAXMessage = 100;
1.11 @@ -136,13 +137,18 @@
1.12 }
1.13 // adding issue
1.14 Component comp = Matcher.getDefault().match(thrown.getStackTrace());
1.15 + String component=UNKNOWN, subComponent=UNKNOWN;
1.16 + if (comp != null){
1.17 + component = comp.getComponent();
1.18 + subComponent = comp.getSubComponent();
1.19 + }
1.20 pStmt = getConnection().prepareStatement(INSERT_ISSUE);
1.21 pStmt.setInt(1, issueId);
1.22 pStmt.setString(2, params[summary_idx]);
1.23 pStmt.setString(3, params[vm_idx]);
1.24 pStmt.setString(4, params[version_idx]);
1.25 - pStmt.setString(5, comp.getComponent());
1.26 - pStmt.setString(6, comp.getSubComponent());
1.27 + pStmt.setString(5, component);
1.28 + pStmt.setString(6, subComponent);
1.29 pStmt.setString(7, "");//assign to
1.30 pStmt.setString(8, params[os_idx]);
1.31 pStmt.setInt(9, 0);
2.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
2.2 +++ b/logger/uihandlerserver/test/org/netbeans/server/uihandler/3.log Thu Feb 15 15:41:44 2007 +0000
2.3 @@ -0,0 +1,174 @@
2.4 +<record>
2.5 + <date>2007-02-14T13:30:05</date>
2.6 + <millis>1171456205690</millis>
2.7 + <sequence>810</sequence>
2.8 + <level>CONFIG</level>
2.9 + <thread>11</thread>
2.10 + <message>The operating system is Linux, 2.6.13-15.13-smp, i386, virtual machine Java HotSpot(TM) Client VM, 1.6.0-rc-b102, NetBeans version NetBeans IDE Dev (Build 200702071900) and user name .</message>
2.11 + <key>UI_USER_CONFIGURATION</key>
2.12 + <catalog><null></catalog>
2.13 + <param>Linux, 2.6.13-15.13-smp, i386</param>
2.14 + <param>Java HotSpot(TM) Client VM, 1.6.0-rc-b102</param>
2.15 + <param>NetBeans IDE Dev (Build 200702071900)</param>
2.16 + <param></param>
2.17 + <param>NullPointerException</param>
2.18 + <param></param>
2.19 +</record>
2.20 +<record>
2.21 + <date>2007-02-14T13:26:01</date>
2.22 + <millis>1171455961943</millis>
2.23 + <sequence>797</sequence>
2.24 + <logger>org.netbeans.ui.actions</logger>
2.25 + <level>FINER</level>
2.26 + <thread>11</thread>
2.27 + <message>Invoking &Undo implemented as org.openide.actions.UndoAction thru org.openide.awt.Actions$ToolbarButton</message>
2.28 + <key>UI_ACTION_BUTTON_PRESS</key>
2.29 + <catalog><null></catalog>
2.30 + <param>org.openide.awt.Actions$ToolbarButton[,119,4,36x36,alignmentX=0.0,alignmentY=0.5,border=javax.swing.border.CompoundBorder@1a38f6d,flags=16777504,maximumSize=,minimumSize=,preferredSize=,defaultIcon=javax.swing.ImageIcon@194b554,disabledIcon=,disabledSelectedIcon=,margin=javax.swing.plaf.InsetsUIResource[top=2,left=14,bottom=2,right=14],paintBorder=false,paintFocus=true,pressedIcon=,rolloverEnabled=true,rolloverIcon=,rolloverSelectedIcon=,selectedIcon=,text=,defaultCapable=false]</param>
2.31 + <param>org.openide.awt.Actions$ToolbarButton</param>
2.32 + <param>org.openide.actions.UndoAction@b38dba</param>
2.33 + <param>org.openide.actions.UndoAction</param>
2.34 + <param>&Undo </param>
2.35 +</record>
2.36 +<record>
2.37 + <date>2007-02-14T13:27:20</date>
2.38 + <millis>1171456040534</millis>
2.39 + <sequence>800</sequence>
2.40 + <logger>sun.awt.X11.XToolkit</logger>
2.41 + <level>WARNING</level>
2.42 + <thread>52</thread>
2.43 + <message>Exception on Toolkit thread</message>
2.44 + <exception>
2.45 + <message>java.lang.NullPointerException</message>
2.46 + <frame>
2.47 + <class>sun.awt.X11.XSelection</class>
2.48 + <method>checkChange</method>
2.49 + <line>749</line>
2.50 + </frame>
2.51 + <frame>
2.52 + <class>sun.awt.X11.XSelection</class>
2.53 + <method>access$200</method>
2.54 + <line>30</line>
2.55 + </frame>
2.56 + <frame>
2.57 + <class>sun.awt.X11.XSelection$SelectionEventHandler</class>
2.58 + <method>dispatchEvent</method>
2.59 + <line>758</line>
2.60 + </frame>
2.61 + <frame>
2.62 + <class>sun.awt.X11.XToolkit</class>
2.63 + <method>dispatchEvent</method>
2.64 + <line>482</line>
2.65 + </frame>
2.66 + <frame>
2.67 + <class>sun.awt.X11.XToolkit</class>
2.68 + <method>run</method>
2.69 + <line>626</line>
2.70 + </frame>
2.71 + <frame>
2.72 + <class>sun.awt.X11.XToolkit</class>
2.73 + <method>run</method>
2.74 + <line>560</line>
2.75 + </frame>
2.76 + <frame>
2.77 + <class>java.lang.Thread</class>
2.78 + <method>run</method>
2.79 + <line>619</line>
2.80 + </frame>
2.81 + </exception>
2.82 +</record>
2.83 +<record>
2.84 + <date>2007-02-14T13:27:25</date>
2.85 + <millis>1171456045122</millis>
2.86 + <sequence>802</sequence>
2.87 + <logger>org.netbeans.ui.actions</logger>
2.88 + <level>FINER</level>
2.89 + <thread>11</thread>
2.90 + <message>Invoking &Undo implemented as org.openide.actions.UndoAction thru org.openide.awt.Actions$ToolbarButton</message>
2.91 + <key>UI_ACTION_BUTTON_PRESS</key>
2.92 + <catalog><null></catalog>
2.93 + <param>org.openide.awt.Actions$ToolbarButton[,119,4,36x36,alignmentX=0.0,alignmentY=0.5,border=javax.swing.border.CompoundBorder@1a38f6d,flags=16777504,maximumSize=,minimumSize=,preferredSize=,defaultIcon=javax.swing.ImageIcon@194b554,disabledIcon=,disabledSelectedIcon=,margin=javax.swing.plaf.InsetsUIResource[top=2,left=14,bottom=2,right=14],paintBorder=false,paintFocus=true,pressedIcon=,rolloverEnabled=true,rolloverIcon=,rolloverSelectedIcon=,selectedIcon=,text=,defaultCapable=false]</param>
2.94 + <param>org.openide.awt.Actions$ToolbarButton</param>
2.95 + <param>org.openide.actions.UndoAction@b38dba</param>
2.96 + <param>org.openide.actions.UndoAction</param>
2.97 + <param>&Undo </param>
2.98 +</record>
2.99 +<record>
2.100 + <date>2007-02-14T13:27:30</date>
2.101 + <millis>1171456050242</millis>
2.102 + <sequence>804</sequence>
2.103 + <logger>org.netbeans.ui.actions</logger>
2.104 + <level>FINER</level>
2.105 + <thread>11</thread>
2.106 + <message>Invoking &Undo implemented as org.openide.actions.UndoAction thru org.openide.awt.Actions$ToolbarButton</message>
2.107 + <key>UI_ACTION_BUTTON_PRESS</key>
2.108 + <catalog><null></catalog>
2.109 + <param>org.openide.awt.Actions$ToolbarButton[,119,4,36x36,alignmentX=0.0,alignmentY=0.5,border=javax.swing.border.CompoundBorder@1a38f6d,flags=16777504,maximumSize=,minimumSize=,preferredSize=,defaultIcon=javax.swing.ImageIcon@194b554,disabledIcon=,disabledSelectedIcon=,margin=javax.swing.plaf.InsetsUIResource[top=2,left=14,bottom=2,right=14],paintBorder=false,paintFocus=true,pressedIcon=,rolloverEnabled=true,rolloverIcon=,rolloverSelectedIcon=,selectedIcon=,text=,defaultCapable=false]</param>
2.110 + <param>org.openide.awt.Actions$ToolbarButton</param>
2.111 + <param>org.openide.actions.UndoAction@b38dba</param>
2.112 + <param>org.openide.actions.UndoAction</param>
2.113 + <param>&Undo </param>
2.114 +</record>
2.115 +<record>
2.116 + <date>2007-02-14T13:28:15</date>
2.117 + <millis>1171456095590</millis>
2.118 + <sequence>806</sequence>
2.119 + <logger>org.netbeans.ui.actions</logger>
2.120 + <level>FINER</level>
2.121 + <thread>11</thread>
2.122 + <message>Invoking &Delete implemented as org.openide.util.actions.CallbackSystemAction$DelegateAction thru org.openide.awt.Actions$MenuItem</message>
2.123 + <key>UI_ACTION_BUTTON_PRESS</key>
2.124 + <catalog><null></catalog>
2.125 + <param>org.openide.awt.Actions$MenuItem[,1,194,203x19,alignmentX=0.0,alignmentY=0.0,border=javax.swing.plaf.metal.MetalBorders$MenuItemBorder@a21ac2,flags=392,maximumSize=,minimumSize=,preferredSize=,defaultIcon=,disabledIcon=,disabledSelectedIcon=,margin=javax.swing.plaf.InsetsUIResource[top=2,left=2,bottom=2,right=2],paintBorder=true,paintFocus=false,pressedIcon=,rolloverEnabled=false,rolloverIcon=,rolloverSelectedIcon=,selectedIcon=,text=Delete]</param>
2.126 + <param>org.openide.awt.Actions$MenuItem</param>
2.127 + <param>org.openide.util.actions.CallbackSystemAction$DelegateAction@1679b3a[delegate=org.openide.actions.DeleteAction@7262b6]</param>
2.128 + <param>org.openide.util.actions.CallbackSystemAction$DelegateAction</param>
2.129 + <param>&Delete</param>
2.130 +</record>
2.131 +<record>
2.132 + <date>2007-02-14T13:29:56</date>
2.133 + <millis>1171456196868</millis>
2.134 + <sequence>808</sequence>
2.135 + <logger>sun.awt.X11.XToolkit</logger>
2.136 + <level>WARNING</level>
2.137 + <thread>52</thread>
2.138 + <message>Exception on Toolkit thread</message>
2.139 + <exception>
2.140 + <message>java.lang.NullPointerException</message>
2.141 + <frame>
2.142 + <class>sun.awt.X11.XSelection</class>
2.143 + <method>checkChange</method>
2.144 + <line>749</line>
2.145 + </frame>
2.146 + <frame>
2.147 + <class>sun.awt.X11.XSelection</class>
2.148 + <method>access$200</method>
2.149 + <line>30</line>
2.150 + </frame>
2.151 + <frame>
2.152 + <class>sun.awt.X11.XSelection$SelectionEventHandler</class>
2.153 + <method>dispatchEvent</method>
2.154 + <line>758</line>
2.155 + </frame>
2.156 + <frame>
2.157 + <class>sun.awt.X11.XToolkit</class>
2.158 + <method>dispatchEvent</method>
2.159 + <line>482</line>
2.160 + </frame>
2.161 + <frame>
2.162 + <class>sun.awt.X11.XToolkit</class>
2.163 + <method>run</method>
2.164 + <line>626</line>
2.165 + </frame>
2.166 + <frame>
2.167 + <class>sun.awt.X11.XToolkit</class>
2.168 + <method>run</method>
2.169 + <line>560</line>
2.170 + </frame>
2.171 + <frame>
2.172 + <class>java.lang.Thread</class>
2.173 + <method>run</method>
2.174 + <line>619</line>
2.175 + </frame>
2.176 + </exception>
2.177 +</record>
3.1 --- a/logger/uihandlerserver/test/org/netbeans/server/uihandler/ExceptionsTest.java Thu Feb 15 03:53:49 2007 +0000
3.2 +++ b/logger/uihandlerserver/test/org/netbeans/server/uihandler/ExceptionsTest.java Thu Feb 15 15:41:44 2007 +0000
3.3 @@ -20,6 +20,8 @@
3.4 package org.netbeans.server.uihandler;
3.5
3.6 import java.io.File;
3.7 +import java.sql.ResultSet;
3.8 +import java.sql.Statement;
3.9 import java.util.Map;
3.10 import java.util.logging.Level;
3.11 import java.util.logging.LogRecord;
3.12 @@ -81,14 +83,35 @@
3.13
3.14 log = LogsManagerTest.extractResourceAs(data, "1.log", "log4442.2");
3.15 logsManager.addLog(log);
3.16 -
3.17 logsManager.preparePageContext(page, "log4442");
3.18 + // wait for database to insert LOG 2
3.19 + Thread.currentThread().sleep(1000);
3.20 mapa = (Map<Integer, LogRecord>) page.getAttribute("lastExceptions");
3.21 assertNotNull("MAPA SHOULD BE NOT NULL", mapa);
3.22 assertNotNull("MORE SESSIONS ARE ALREADY LOGGED", mapa.get(2));
3.23 issueId = Integer.parseInt(mapa.get(2).getMessage());
3.24 assertEquals("THIS IS NOT AN ERROR REPORT", -2, issueId);
3.25
3.26 + /** test issue #95540 */
3.27 + log = LogsManagerTest.extractResourceAs(data, "3.log", "log4445.1");
3.28 + logsManager.addLog(log);
3.29 + logsManager.preparePageContext(page, "log4445");
3.30 + // wait for database to insert LOG 3
3.31 + Thread.currentThread().sleep(1000);
3.32 + mapa = (Map<Integer, LogRecord>) page.getAttribute("lastExceptions");
3.33 + assertNotNull("MAPA SHOULD BE NOT NULL", mapa);
3.34 + assertNotNull("ONE SESSION IS ALREADY LOGGED", mapa.get(2));
3.35 + issueId = Integer.parseInt(mapa.get(2).getMessage());
3.36 + assertEquals("THIS SHOULD BE INSERTED AS A NEW ISSUE", -1, issueId);
3.37 +
3.38 + Statement statement = Utils.getConnection().createStatement();
3.39 + ResultSet result = statement.executeQuery("SELECT * FROM ISSUE");
3.40 + assertTrue("THERE MUST BE TWO ISSUES", result.next());
3.41 + assertTrue("THERE MUST BE TWO ISSUES", result.next());
3.42 + assertFalse("THERE MUST BE TWO ISSUES", result.next());
3.43 + result.close();
3.44 + statement.close();
3.45 +
3.46 Utils.closeConnection();
3.47 }
3.48