Oki, What happened is that the matcher tried to get the content of an attached object (a .gif) to write it decoded to a temp file to have the antivirus later scan it; the javax.mail.internet.MimeBodyPart.getContent(MimeBodyPart), for doing that, tried a path that for any reason threw an exception, which could be ignored (a .gif is not a virus).
Which is the Specification-Version and Implementation-Version in the manifest file of the it.praxis.james.jar? Until 1.1.5/15 the exceptions were ignored, and the matcher was simply logging to the mailet.log (look at it and let me know) and not matching; since 1.1.6/16, 2003-06-16, the matcher is logging to mailet.log and then throwing up a MessagingException that embeds the original exception, and JamesSpoolManager until James 2.1.n receives it and sends the message to the error processor. Since James 2.2.0a6 you can trap it in your config.xml coding: <mailet match='IsInfected=" ......... ' class="ToProcessor" onMatchException="noMatch"> <processor> virus </processor> </mailet> or <mailet match='IsInfected=" ......... ' class="ToProcessor" onMatchException="matchall"> <processor> virus </processor> </mailet> Strangely, the it.praxis.james.matchers.IsInfected.dumpPart(IsInfected.java:418) entry in the stack trace should be 416 instead of 418. Let me know if it is consistent with your case. Vincenzo > -----Original Message----- > From: Oki DZ [mailto:[EMAIL PROTECTED] > Sent: giovedi 19 giugno 2003 2.20 > To: James Users List > Subject: Matchers & X Window > > > Hi, > > Recently I installed the IsInfected matcher (from www.mailet.org), and > yesterday had the following error: > 18/06/03 23:01:24 ERROR spoolmanager: Exception in > JamesSpoolManager.run null > java.lang.NoClassDefFoundError > at java.lang.Class.forName0(Native Method) > at java.lang.Class.forName(Class.java:140) > at java.awt.Toolkit$2.run(Toolkit.java:712) > at java.security.AccessController.doPrivileged(Native Method) > at java.awt.Toolkit.getDefaultToolkit(Toolkit.java:703) > at > com.sun.mail.handlers.image_gif.getContent(image_gif.java:76) > at > javax.activation.DataSourceDataContentHandler.getContent(DataHandl > er.java:745) > at > javax.activation.DataHandler.getContent(DataHandler.java:501) > at > javax.mail.internet.MimeBodyPart.getContent(MimeBodyPart.java:564) > at > it.praxis.james.matchers.IsInfected.dumpPart(IsInfected.java:418) > at > it.praxis.james.matchers.IsInfected.match(IsInfected.java:250) > at > org.apache.james.transport.LinearProcessor.service(LinearProcessor > .java:369) > at > org.apache.james.transport.JamesSpoolManager.process(JamesSpoolMan > ager.java:440) > at > org.apache.james.transport.JamesSpoolManager.run(JamesSpoolManager > .java:370) > at > org.apache.james.util.thread.ExecutableRunnable.execute(Executable > Runnable.java:89) > at > org.apache.james.util.thread.WorkerThread.run(WorkerThread.java:125) > 18/06/03 23:01:24 ERROR spoolmanager: Exception in > JamesSpoolManager.run Can't connect to X11 window server using ':0.0' > as the value of the DISPLAY variable.java.lang.InternalError: Can't > connect to X11 window server using ':0.0' as the value of the DISPLAY > variable. > at sun.awt.X11GraphicsEnvironment.initDisplay(Native Method) > at > sun.awt.X11GraphicsEnvironment.<clinit>(X11GraphicsEnvironment.java:125) > at java.lang.Class.forName0(Native Method) > at java.lang.Class.forName(Class.java:140) > at > java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment(GraphicsE > nvironment.java:62) > at sun.awt.motif.MToolkit.<clinit>(MToolkit.java:72) > at java.lang.Class.forName0(Native Method) > at java.lang.Class.forName(Class.java:140) > at java.awt.Toolkit$2.run(Toolkit.java:712) > at java.security.AccessController.doPrivileged(Native Method) > at java.awt.Toolkit.getDefaultToolkit(Toolkit.java:703) > at > com.sun.mail.handlers.image_gif.getContent(image_gif.java:76) > at > javax.activation.DataSourceDataContentHandler.getContent(DataHandl > er.java:745) > at > javax.activation.DataHandler.getContent(DataHandler.java:501) > at > javax.mail.internet.MimeBodyPart.getContent(MimeBodyPart.java:564) > at > it.praxis.james.matchers.IsInfected.dumpPart(IsInfected.java:418) > at > it.praxis.james.matchers.IsInfected.match(IsInfected.java:250) > at > org.apache.james.transport.LinearProcessor.service(LinearProcessor > .java:369) > at > org.apache.james.transport.JamesSpoolManager.process(JamesSpoolMan > ager.java:440) > at > org.apache.james.transport.JamesSpoolManager.run(JamesSpoolManager > .java:370) > at > org.apache.james.util.thread.ExecutableRunnable.execute(Executable > Runnable.java:89) > at > org.apache.james.util.thread.WorkerThread.run(WorkerThread.java:125) > > Question is, why James asked for a connection to the X window server? > > Thanks in advance, > Oki > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]