Web Imagens Vídeos Mapas Notícias Orkut Gmail mais »
Grupos visitados recentemente | Ajuda | Acessar
Página inicial dos Grupos do Google
Mensagem sobre o tópico Exception acidentalmente suprimida
O grupo no qual você está postando é um grupo da Usenet. As mensagens postadas neste grupo farão com que o seu e-mail fique visível para qualquer pessoa na internet.
Sua resposta não foi enviada.
Postagem publicada
 
De:
Para:
Cc:
Encaminhar para
Adicionar Cc | Adicionar Encaminhar para | Editar Assunto
Assunto:
Validação:
Com o objetivo de verificação, digite os caracteres que você vê na figura abaixo ou os números que ouvir ao clicar no ícone de acessibilidade. Ouça e digite os números que ouvir
 
Klaus Wuestefeld  
Ver perfil   Traduzir para Traduzido (ver original)
 Mais opções 6 jul, 02:51
De: Klaus Wuestefeld <klauswuestef...@gmail.com>
Data: Mon, 6 Jul 2009 02:51:10 -0300
Local: Seg 6 jul 2009 02:51
Assunto: Re: Exception acidentalmente suprimida
Sandro, por favor mude o ExceptionLoggerImpl para o abaixo. Nao
comitei pq meu git server vai estar desligado enquanto viajo.

Klaus.

package sneer.bricks.hardware.io.log.exceptions.impl;

import static sneer.foundation.environments.Environments.my;

import java.lang.Thread.UncaughtExceptionHandler;

import sneer.bricks.hardware.io.log.Logger;
import sneer.bricks.hardware.io.log.exceptions.ExceptionLogger;
import sneer.foundation.environments.Environment;
import sneer.foundation.environments.Environments;

class ExceptionLoggerImpl implements ExceptionLogger, UncaughtExceptionHandler{

        private final Environment _environment = my(Environment.class);

        {
                Thread.setDefaultUncaughtExceptionHandler(this);
        }

        @Override
        public void uncaughtException(Thread ignored, final Throwable t1) {
                try {
                        Environments.runWith(_environment, new Runnable() { @Override
public void run() {
                                my(Logger.class).log(t1);
                        }});
                } catch (Throwable t2) {
                        t2.printStackTrace();
                        System.err.println("The above was thrown while trying to log this
throwable:");
                        t1.printStackTrace();
                }
        }

}

2009/7/4 Célio Cidral Junior <ccidral....@gmail.com>:

> Estava com problemas em rodar meu brick e não conseguia descobrir
> porque.  A exception que acontecia era essa:

> [2009-07-04 10:29:39] Contact Dummy is online.
>>>> chunk #0 bytes read: 10240
> java.lang.IllegalStateException: Thread
> Thread[AWT-EventQueue-2,6,main] is not running in an environment.
>        at sneer.foundation.environments.Environments.my(Environments.java:20)
>        at sneer.bricks.snapps.system.log.gui.impl.LogConsoleImpl$WidgetLogger$1.consu me(LogConsoleImpl.java:213)
>        at sneer.bricks.snapps.system.log.gui.impl.LogConsoleImpl$WidgetLogger$1.consu me(LogConsoleImpl.java:1)
>        at sneer.bricks.pulp.reactive.impl.ReceiversImpl$1.consume(ReceiversImpl.java: 30)
>        at sneer.bricks.pulp.events.impl.EventNotifierImpl.notify(EventNotifierImpl.ja va:47)
>        at sneer.bricks.pulp.events.impl.EventNotifierImpl.notifyReceivers(EventNotifi erImpl.java:32)
>        at sneer.bricks.hardware.io.log.workers.notifier.impl.LogNotifierImpl.notifyEn try(LogNotifierImpl.java:30)
>        at sneer.bricks.hardware.io.log.workers.notifier.impl.LogNotifierImpl.access$1 (LogNotifierImpl.java:28)
>        at sneer.bricks.hardware.io.log.workers.notifier.impl.LogNotifierImpl$1.log(Lo gNotifierImpl.java:23)
>        at sneer.bricks.hardware.io.log.impl.LoggerImpl.log(LoggerImpl.java:30)
>        at sneer.bricks.hardware.io.log.exceptions.impl.ExceptionLoggerImpl.uncaughtEx ception(ExceptionLoggerImpl.java:24)
>        at java.lang.ThreadGroup.uncaughtException(Unknown Source)
>        at java.lang.ThreadGroup.uncaughtException(Unknown Source)
>        at java.lang.Thread.dispatchUncaughtException(Unknown Source)

> Então fui até o ExceptionLoggerImpl e mandei imprimir o stack trace
> antes de logar a exception:

>        public void uncaughtException(Thread ignored, Throwable t1) {
>                System.out.println("\n===================================================") ;
>                t1.printStackTrace();
>                System.out.println("\n===================================================") ;
>                try {
>                        _logger.log(t1);
>                } catch (Throwable t2) {
>                        t2.printStackTrace();
>                }
>        }

> Isso revelou o problema:

> [2009-07-04 10:27:06] Tuple received: Heartbeat from: Dummy
> [2009-07-04 10:27:08] Tuple published: Heartbeat
>>>> chunk #0 bytes read: 10240

> ===================================================
> java.lang.IllegalStateException: All fields in a Tuple should be
> public and not static. This was not the case with: class
> celio.bricks.filetransfer.FileChunk._isLast Also, tuple classes
> declared as inner classes dont work.
>        at sneer.foundation.brickness.Tuple.getFieldValue(Tuple.java:83)
>        at sneer.foundation.brickness.Tuple.hashCode(Tuple.java:28)
>        at java.util.HashMap.put(Unknown Source)
>        at java.util.HashSet.add(Unknown Source)
>        at sneer.bricks.pulp.tuples.impl.TupleSpaceImpl.acquire(TupleSpaceImpl.java:18 9)
>        at sneer.bricks.pulp.tuples.impl.TupleSpaceImpl.publish(TupleSpaceImpl.java:18 1)
>        at celio.bricks.filetransfer.impl.FileSenderImpl.send(FileSenderImpl.java:30)
>        at celio.snapps.filetransfer.impl.FileSenderGuiImpl.chooseFileAndSend(FileSend erGuiImpl.java:31)
>        at celio.snapps.filetransfer.impl.FileSenderGuiImpl.access$0(FileSenderGuiImpl .java:26)
>        at celio.snapps.filetransfer.impl.FileSenderGuiImpl$1.run(FileSenderGuiImpl.ja va:21)
>        at sneer.bricks.snapps.contacts.gui.impl.SwingActionAdapter.actionPerformed(Sw ingActionAdapter.java:20)
>        at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
>        at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
>        at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
>        at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
>        at javax.swing.AbstractButton.doClick(Unknown Source)
>        at javax.swing.plaf.basic.BasicMenuItemUI.doClick(Unknown Source)
>        at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(Unknown Source)
>        at java.awt.Component.processMouseEvent(Unknown Source)
>        at javax.swing.JComponent.processMouseEvent(Unknown Source)
>        at java.awt.Component.processEvent(Unknown Source)
>        at java.awt.Container.processEvent(Unknown Source)
>        at java.awt.Component.dispatchEventImpl(Unknown Source)
>        at java.awt.Container.dispatchEventImpl(Unknown Source)
>        at java.awt.Component.dispatchEvent(Unknown Source)
>        at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
>        at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
>        at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
>        at java.awt.Container.dispatchEventImpl(Unknown Source)
>        at java.awt.Window.dispatchEventImpl(Unknown Source)
>        at java.awt.Component.dispatchEvent(Unknown Source)
>        at java.awt.EventQueue.dispatchEvent(Unknown Source)
>        at sneer.bricks.hardware.gui.timebox.impl.TimeboxedEventQueueImpl.access$2(Tim eboxedEventQueueImpl.java:1)
>        at sneer.bricks.hardware.gui.timebox.impl.TimeboxedEventQueueImpl.superDispatc hEvent(TimeboxedEventQueueImpl.java:62)
>        at sneer.bricks.hardware.gui.timebox.impl.TimeboxedEventQueueImpl.access$0(Tim eboxedEventQueueImpl.java:61)
>        at sneer.bricks.hardware.gui.timebox.impl.TimeboxedEventQueueImpl$1.run(Timebo xedEventQueueImpl.java:51)
>        at sneer.bricks.hardware.cpu.timebox.impl.TimeboxRunner.tryToRun(TimeboxRunner .java:65)
>        at sneer.bricks.hardware.cpu.timebox.impl.TimeboxRunner.<init>(TimeboxRunner.j ava:41)
>        at sneer.bricks.hardware.cpu.timebox.impl.TimeboxImpl.run(TimeboxImpl.java:16)
>        at sneer.bricks.hardware.cpu.timebox.impl.TimeboxImpl$1.run(TimeboxImpl.java:1 0)
>        at sneer.foundation.environments.Environments.runWith(Environments.java:11)
>        at sneer.bricks.hardware.gui.timebox.impl.TimeboxedEventQueueImpl.dispatchEven t(TimeboxedEventQueueImpl.java:58)
>        at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
>        at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
>        at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
>        at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
>        at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
>        at java.awt.EventDispatchThread.run(Unknown Source)
> Caused by: java.lang.IllegalAccessException: Class
> sneer.foundation.brickness.Tuple can not access a member of class
> celio.bricks.filetransfer.FileChunk with modifiers "private"
>        at sun.reflect.Reflection.ensureMemberAccess(Unknown Source)
>        at java.lang.reflect.Field.doSecurityCheck(Unknown Source)
>        at java.lang.reflect.Field.getFieldAccessor(Unknown Source)
>        at java.lang.reflect.Field.get(Unknown Source)
>        at sneer.foundation.brickness.Tuple.getFieldValue(Tuple.java:81)
>        ... 47 more
> java.lang.IllegalStateException: Thread
> Thread[AWT-EventQueue-2,6,main] is not running in an environment.
>        at sneer.foundation.environments.Environments.my(Environments.java:20)
>        at sneer.bricks.snapps.system.log.gui.impl.LogConsoleImpl$WidgetLogger$1.consu me(LogConsoleImpl.java:213)
>        at sneer.bricks.snapps.system.log.gui.impl.LogConsoleImpl$WidgetLogger$1.consu me(LogConsoleImpl.java:1)
> ===================================================

>        at sneer.bricks.pulp.reactive.impl.ReceiversImpl$1.consume(ReceiversImpl.java: 30)
>        at sneer.bricks.pulp.events.impl.EventNotifierImpl.notify(EventNotifierImpl.ja va:47)
>        at sneer.bricks.pulp.events.impl.EventNotifierImpl.notifyReceivers(EventNotifi erImpl.java:32)
>        at sneer.bricks.hardware.io.log.workers.notifier.impl.LogNotifierImpl.notifyEn try(LogNotifierImpl.java:30)
>        at sneer.bricks.hardware.io.log.workers.notifier.impl.LogNotifierImpl.access$1 (LogNotifierImpl.java:28)
>        at sneer.bricks.hardware.io.log.workers.notifier.impl.LogNotifierImpl$1.log(Lo gNotifierImpl.java:23)
>        at sneer.bricks.hardware.io.log.impl.LoggerImpl.log(LoggerImpl.java:30)
>        at sneer.bricks.hardware.io.log.exceptions.impl.ExceptionLoggerImpl.uncaughtEx ception(ExceptionLoggerImpl.java:24)
>        at java.lang.ThreadGroup.uncaughtException(Unknown Source)
>        at java.lang.ThreadGroup.uncaughtException(Unknown Source)
>        at java.lang.Thread.dispatchUncaughtException(Unknown Source)

> ===================================================
> java.lang.IllegalStateException: Should NOT be running in the GUI thread.
>        at sneer.bricks.hardware.gui.guithread.impl.GuiThreadImpl.assertNotInGuiThread (GuiThreadImpl.java:53)
>        at sneer.bricks.hardware.gui.guithread.impl.GuiThreadImpl.invokeLater(GuiThrea dImpl.java:42)
>        at sneer.bricks.snapps.system.blinkinglights.gui.impl.BlinkingLightsGuiImpl$Al ertWindowSupport.placeScrollAtTheBegining(BlinkingLightsGuiImpl.java:219)
>        at sneer.bricks.snapps.system.blinkinglights.gui.impl.BlinkingLightsGuiImpl$Al ertWindowSupport.show(BlinkingLightsGuiImpl.java:206)
>        at sneer.bricks.snapps.system.blinkinglights.gui.impl.BlinkingLightsGuiImpl$Al ertWindowSupport.access$2(BlinkingLightsGuiImpl.java:200)
>        at sneer.bricks.snapps.system.blinkinglights.gui.impl.BlinkingLightsGuiImpl$Al ertWindowSupport$3.mouseReleased(BlinkingLightsGuiImpl.java:190)
>        at java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
>        at java.awt.Component.processMouseEvent(Unknown Source)
>        at javax.swing.JComponent.processMouseEvent(Unknown Source)
>        at java.awt.Component.processEvent(Unknown Source)
>        at java.awt.Container.processEvent(Unknown Source)
>        at java.awt.Component.dispatchEventImpl(Unknown Source)
>        at java.awt.Container.dispatchEventImpl(Unknown Source)
>        at java.awt.Component.dispatchEvent(Unknown Source)
>        at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
>        at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
>        at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
>        at java.awt.Container.dispatchEventImpl(Unknown Source)
>        at java.awt.Window.dispatchEventImpl(Unknown Source)
>        at java.awt.Component.dispatchEvent(Unknown Source)
>        at java.awt.EventQueue.dispatchEvent(Unknown Source)
>        at sneer.bricks.hardware.gui.timebox.impl.TimeboxedEventQueueImpl.access$2(Tim eboxedEventQueueImpl.java:1)
>        at sneer.bricks.hardware.gui.timebox.impl.TimeboxedEventQueueImpl.superDispatc hEvent(TimeboxedEventQueueImpl.java:62)
>        at sneer.bricks.hardware.gui.timebox.impl.TimeboxedEventQueueImpl.access$0(Tim eboxedEventQueueImpl.java:61)
>        at sneer.bricks.hardware.gui.timebox.impl.TimeboxedEventQueueImpl$1.run(Timebo xedEventQueueImpl.java:51)
>        at sneer.bricks.hardware.cpu.timebox.impl.TimeboxRunner.tryToRun(TimeboxRunner .java:65)
>        at sneer.bricks.hardware.cpu.timebox.impl.TimeboxRunner.<init>(TimeboxRunner.j ava:41)
>        at sneer.bricks.hardware.cpu.timebox.impl.TimeboxImpl.run(TimeboxImpl.java:16)
>        at sneer.bricks.hardware.cpu.timebox.impl.TimeboxImpl$1.run(TimeboxImpl.java:1 0)
>        at sneer.foundation.environments.Environments.runWith(Environments.java:11)
>        at sneer.bricks.hardware.gui.timebox.impl.TimeboxedEventQueueImpl.dispatchEven t(TimeboxedEventQueueImpl.java:58)
>        at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
>        at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
>        at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
>        at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
>        at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
>        at java.awt.EventDispatchThread.run(Unknown Source)
> java.lang.IllegalStateException: Thread
> Thread[AWT-EventQueue-2,6,main] is not running in an environment.
>        at sneer.foundation.environments.Environments.my(Environments.java:20)
> ===================================================

>        at sneer.bricks.snapps.system.log.gui.impl.LogConsoleImpl$WidgetLogger$1.consu me(LogConsoleImpl.java:213)
>        at sneer.bricks.snapps.system.log.gui.impl.LogConsoleImpl$WidgetLogger$1.consu me(LogConsoleImpl.java:1)
>        at sneer.bricks.pulp.reactive.impl.ReceiversImpl$1.consume(ReceiversImpl.java: 30)
>        at sneer.bricks.pulp.events.impl.EventNotifierImpl.notify(EventNotifierImpl.ja va:47)
>        at sneer.bricks.pulp.events.impl.EventNotifierImpl.notifyReceivers(EventNotifi erImpl.java:32)
>        at sneer.bricks.hardware.io.log.workers.notifier.impl.LogNotifierImpl.notifyEn try(LogNotifierImpl.java:30)
>        at sneer.bricks.hardware.io.log.workers.notifier.impl.LogNotifierImpl.access$1 (LogNotifierImpl.java:28)
>        at sneer.bricks.hardware.io.log.workers.notifier.impl.LogNotifierImpl$1.log(Lo gNotifierImpl.java:23)
>        at sneer.bricks.hardware.io.log.impl.LoggerImpl.log(LoggerImpl.java:30)
>        at sneer.bricks.hardware.io.log.exceptions.impl.ExceptionLoggerImpl.uncaughtEx ception(ExceptionLoggerImpl.java:24)
>        at java.lang.ThreadGroup.uncaughtException(Unknown Source)
>        at java.lang.ThreadGroup.uncaughtException(Unknown Source)
>        at java.lang.Thread.dispatchUncaughtException(Unknown Source)
> [2009-07-04 10:27:16] Tuple received: Heartbeat from: Dummy
> [2009-07-04 10:27:18] Tuple published: Heartbeat
> [2009-07-04 10:27:26] Tuple received: Heartbeat from: Dummy
> [2009-07-04 10:27:28] Tuple published: Heartbeat
> [2009-07-04 10:27:36] Tuple received: Heartbeat from: Dummy
> [2009-07-04 10:27:38] Tuple published: Heartbeat


    Responder ao autor    Encaminhar  
É necessário Acessar antes de postar mensagens.
Para postar uma mensagem você precisa primeiro participar deste grupo.
Atualize seu apelido na página de configurações da inscrição antes de postar.
Você não tem a permissão necessária para postar.

Criar um grupo - Grupos do Google - Página inicial do Google - Termos de Uso - Política de Privacidade
©2009 Google