Как это может быть? Похоже, что как дневной свет исключение из сторонней библиотеки пропускает мой блок catch. Не знаете, с чего начать устранение неполадок. Это либо я, действительно, глупый, либо я не понимаю ничего тонкого в исключениях и Java.Исключение Java исключение
Моя консоль:
Exception: org.apache.james.mime4j.io.MaxLineLimitException: Maximum line length limit exceeded; stack: org.apache.james.mime4j.stream.MimeEntity.readRawField(MimeEntity.java:242); org.apache.james.mime4j.stream.MimeEntity.nextField(MimeEntity.java:258); org.apache.james.mime4j.stream.MimeEntity.advance(MimeEntity.java:296); org.apache.james.mime4j.stream.MimeTokenStream.next(MimeTokenStream.java:360); me.unroll.scanner.Scanner.<init>(Scanner.java:206); me.unroll.scanner.ScannerThread.run(ScannerThread.java:205); java.lang.Thread.run(Thread.java:722)
Проблема мой код выглядит следующим образом:
try {
//...
for(EntityState token = messageStream.getState();
token != EntityState.T_END_OF_STREAM;
token = messageStream.next()) { //this is Scanner.java:206
//...
catch(ScanComplete exc) { }
catch(MaxLineLimitException exc) { //line 282, matches "try" above
debug("Am I getting caught?"); //no, it's not
Я больше
Поместите также строку отладки в блок catch Scan Complete. –
Вы уверены, что уровень журнала достаточно высок, чтобы «debug» отображался? –
положил точку перерыва в строке 283 и посмотрел, попадет ли он. (строка отладки) – MeBigFatGuy