Than you for your report. The code doesn't even get to James. It crashes in Phoenix, which gets the exception from Xerces. I agree that we want Phoenix to be rather more graceful about its exception reports. Xerces is correctly throwing the exception, since your characters were malformed.
I am cc'ing avalon-dev@ on this message. If you do not hear back from them, please take a moment to generate a bugzilla report against Phoenix. --- Noel -----Original Message----- From: Randahl Fink Isaksen [mailto:[EMAIL PROTECTED]] Sent: Thursday, February 06, 2003 3:20 To: 'James Users List' Subject: Found a James bug (reproducable) - RE: How to make James send error notification to postmaster I did some more testing on the NotifyPostmaster mailet. It turns out that the reason for the crash was that I accidently used Danish characters in the notice parameter - they should of course have been escaped with sequences like "æ", "œ", and "å". However, I really consider it a bug for James to crash on a simple thing like this. In my opinion, it would be proper for it to show some of the parser's messages like "Illegal character encountered. Line 82, character 23". Other popular open source products like JBoss output similar messages. Below you will find the stack trace which was all I got on the console. The message it provides simply states that somewhere in the config file there is an error - that certainly could be more specific, if you ask me. Yours Randahl Phoenix 4.0.1 There was an uncaught exception: --------------------------------------------------------- --- Message --- Error building configuration from file:/C:/james-2.1/apps/james/SAR-INF/config.x ml. --- Stack Trace --- org.apache.avalon.phoenix.interfaces.DeploymentException: Error building configu ration from file:/C:/james-2.1/apps/james/SAR-INF/config.xml. at org.apache.avalon.phoenix.components.deployer.DefaultDeployer.getConf igurationFor(DefaultDeployer.java:499) at org.apache.avalon.phoenix.components.deployer.DefaultDeployer.deploy( DefaultDeployer.java:325) at org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.deployF ile(DefaultEmbeddor.java:498) at org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.deployF ile(DefaultEmbeddor.java:491) at org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.deployF iles(DefaultEmbeddor.java:476) at org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.deployD efaultApplications(DefaultEmbeddor.java:466) at org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.execute (DefaultEmbeddor.java:224) at org.apache.avalon.phoenix.frontends.CLIMain.run(CLIMain.java:158) at org.apache.avalon.phoenix.frontends.CLIMain.execute(CLIMain.java:144) at org.apache.avalon.phoenix.frontends.CLIMain.main(CLIMain.java:102) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl. java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces sorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at org.apache.avalon.phoenix.launcher.Main.startup(Main.java:94) at org.apache.avalon.phoenix.launcher.Main.main(Main.java:46) Caused by: java.io.UTFDataFormatException: invalid byte 2 of 3-byte UTF-8 sequen ce (0xf8) at org.apache.xerces.impl.io.UTF8Reader.invalidByte(UTF8Reader.java:678) at org.apache.xerces.impl.io.UTF8Reader.read(UTF8Reader.java:389) at org.apache.xerces.impl.XMLEntityManager$EntityScanner.load(XMLEntityM anager.java:3257) at org.apache.xerces.impl.XMLEntityManager$EntityScanner.scanContent(XML EntityManager.java:2371) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanContent(XML DocumentFragmentScannerImpl.java:829) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContent Dispatcher.dispatch(XMLDocumentFragmentScannerImpl.java:1387) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(XM LDocumentFragmentScannerImpl.java:333) at org.apache.xerces.parsers.DTDConfiguration.parse(DTDConfiguration.jav a:524) at org.apache.xerces.parsers.DTDConfiguration.parse(DTDConfiguration.jav a:580) at org.apache.xerces.parsers.XMLParser.parse(XMLParser.java:152) at org.apache.xerces.parsers.AbstractSAXParser.parse(AbstractSAXParser.j ava:1169) at org.apache.avalon.phoenix.tools.configuration.ConfigurationBuilder.bu ild(ConfigurationBuilder.java:129) at org.apache.avalon.phoenix.tools.configuration.ConfigurationBuilder.bu ild(ConfigurationBuilder.java:116) at org.apache.avalon.phoenix.tools.configuration.ConfigurationBuilder.bu ild(ConfigurationBuilder.java:97) at org.apache.avalon.phoenix.components.deployer.DefaultDeployer.getConf igurationFor(DefaultDeployer.java:493) ... 15 more rethrown from java.io.UTFDataFormatException: invalid byte 2 of 3-byte UTF-8 sequence (0xf8) at org.apache.xerces.impl.io.UTF8Reader.invalidByte(UTF8Reader.java:678) at org.apache.xerces.impl.io.UTF8Reader.read(UTF8Reader.java:389) at org.apache.xerces.impl.XMLEntityManager$EntityScanner.load(XMLEntityM anager.java:3257) at org.apache.xerces.impl.XMLEntityManager$EntityScanner.scanContent(XML EntityManager.java:2371) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanContent(XML DocumentFragmentScannerImpl.java:829) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContent Dispatcher.dispatch(XMLDocumentFragmentScannerImpl.java:1387) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(XM LDocumentFragmentScannerImpl.java:333) at org.apache.xerces.parsers.DTDConfiguration.parse(DTDConfiguration.jav a:524) at org.apache.xerces.parsers.DTDConfiguration.parse(DTDConfiguration.jav a:580) at org.apache.xerces.parsers.XMLParser.parse(XMLParser.java:152) at org.apache.xerces.parsers.AbstractSAXParser.parse(AbstractSAXParser.j ava:1169) at org.apache.avalon.phoenix.tools.configuration.ConfigurationBuilder.bu ild(ConfigurationBuilder.java:129) at org.apache.avalon.phoenix.tools.configuration.ConfigurationBuilder.bu ild(ConfigurationBuilder.java:116) at org.apache.avalon.phoenix.tools.configuration.ConfigurationBuilder.bu ild(ConfigurationBuilder.java:97) at org.apache.avalon.phoenix.components.deployer.DefaultDeployer.getConf igurationFor(DefaultDeployer.java:493) at org.apache.avalon.phoenix.components.deployer.DefaultDeployer.deploy( DefaultDeployer.java:325) at org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.deployF ile(DefaultEmbeddor.java:498) at org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.deployF ile(DefaultEmbeddor.java:491) at org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.deployF iles(DefaultEmbeddor.java:476) at org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.deployD efaultApplications(DefaultEmbeddor.java:466) at org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.execute (DefaultEmbeddor.java:224) at org.apache.avalon.phoenix.frontends.CLIMain.run(CLIMain.java:158) at org.apache.avalon.phoenix.frontends.CLIMain.execute(CLIMain.java:144) at org.apache.avalon.phoenix.frontends.CLIMain.main(CLIMain.java:102) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl. java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces sorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at org.apache.avalon.phoenix.launcher.Main.startup(Main.java:94) at org.apache.avalon.phoenix.launcher.Main.main(Main.java:46) --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]