Ошибка при синхронизации с почтовым ящиком

Доброго дня!
Коллеги, подскажите в какую сторону копать?
У клиента возникает ошибка при работе назначенного задания по синхронизации с почтовым ящиком. У нас не воспроизводится.

стэктрейс
2025-02-24 14:51:00.881 ERROR 6328 --- [eduler_Worker-7] io.jmix.imap.impl.ImapSchedulerImpl      : Error on <***>@<***>.com[4dfc93f2-66c0-d035-c5d6-8a40d1b0af86] mailbox sync

java.util.concurrent.ExecutionException: java.lang.RuntimeException: java.lang.ClassNotFoundException: io.jmix.imap.sync.events.ImapStandardEventsGenerator$$EnhancerBySpringCGLIB$$f059dd48
	at java.base/java.util.concurrent.FutureTask.report(FutureTask.java:122) ~[na:na]
	at java.base/java.util.concurrent.FutureTask.get(FutureTask.java:191) ~[na:na]
	at io.jmix.imap.impl.ImapSchedulerImpl.lambda$syncImap$2(ImapSchedulerImpl.java:93) ~[jmix-imap-1.6.2.jar:na]
	at java.base/java.util.HashMap$KeySet.forEach(HashMap.java:928) ~[na:na]
	at io.jmix.imap.impl.ImapSchedulerImpl.syncImap(ImapSchedulerImpl.java:91) ~[jmix-imap-1.6.2.jar:na]
	at io.jmix.autoconfigure.imap.job.ImapSyncJob.execute(ImapSyncJob.java:38) ~[jmix-imap-starter-1.6.2.jar:na]
	at org.quartz.core.JobRunShell.run(JobRunShell.java:202) ~[quartz-2.3.2.jar:na]
	at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573) ~[quartz-2.3.2.jar:na]
Caused by: java.lang.RuntimeException: java.lang.ClassNotFoundException: io.jmix.imap.sync.events.ImapStandardEventsGenerator$$EnhancerBySpringCGLIB$$f059dd48
	at io.jmix.core.common.util.ReflectionHelper.getClass(ReflectionHelper.java:95) ~[jmix-core-1.6.2.jar:na]
	at io.jmix.imap.sync.events.ImapEvents.getEventsGenerator(ImapEvents.java:80) ~[jmix-imap-1.6.2.jar:na]
	at io.jmix.imap.sync.events.ImapEvents.handleNewMessages(ImapEvents.java:66) ~[jmix-imap-1.6.2.jar:na]
	at io.jmix.imap.impl.ImapSchedulerImpl.lambda$handleFolderMessages$3(ImapSchedulerImpl.java:120) ~[jmix-imap-1.6.2.jar:na]
	at java.base/java.util.ArrayList.forEach(ArrayList.java:1541) ~[na:na]
	at io.jmix.imap.impl.ImapSchedulerImpl.handleFolderMessages(ImapSchedulerImpl.java:119) ~[jmix-imap-1.6.2.jar:na]
	at io.jmix.imap.impl.ImapSchedulerImpl.syncMailBox(ImapSchedulerImpl.java:104) ~[jmix-imap-1.6.2.jar:na]
	at io.jmix.imap.impl.ImapSchedulerImpl.lambda$syncImap$0(ImapSchedulerImpl.java:84) ~[jmix-imap-1.6.2.jar:na]
	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) ~[na:na]
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[na:na]
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) ~[na:na]
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) ~[na:na]
	at java.base/java.lang.Thread.run(Thread.java:829) ~[na:na]
Caused by: java.lang.ClassNotFoundException: io.jmix.imap.sync.events.ImapStandardEventsGenerator$$EnhancerBySpringCGLIB$$f059dd48
	at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1365) ~[catalina.jar:9.0.38]
	at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1188) ~[catalina.jar:9.0.38]
	at io.jmix.core.common.util.ReflectionHelper.loadClass(ReflectionHelper.java:81) ~[jmix-core-1.6.2.jar:na]
	at io.jmix.core.common.util.ReflectionHelper.getClass(ReflectionHelper.java:93) ~[jmix-core-1.6.2.jar:na]
	... 12 common frames omitted

Почтовый адрес был замаскирован.

Обстановка:

  • Jmix version: 1.6.2
  • Jmix Studio Plugin Version: 2.5.0-243
  • IntelliJ version: IntelliJ IDEA 2024.3.2 (Community Edition)
  • WAR собирается в конвейере на Java 11 openJDK, а у клиента liberica-11 (этот образ у нас давно и ни каких проблем не доставлял)
  • Проект мигрирован с CUBA 7.2 и содержит аддон миграции
  • Актуальный jmix-imap (в зависимостях указан без версии)
  • Есть небольшой баг - вместе с quartz-задачей, работает старая scheduller-task по синхронизации. Кроме редких OptimisticLockExc ни каких нареканий не было.

Еще добавлю, что буквально пару недель назад клиент пользовался нашим приложением, в том числе функционалом jmix-imap, затем мы опубликовали обновленную версию нашего приложения, клиент обновился и синхронизация перестала работать. В обновлениях незначительные “косметические” изменения нашего проекта.

Добрый день, Сергей.

На данный момент трудно назвать причину.

  1. Были ли какие-то изменения зависимостей в рамках обновления, после которого появилась проблема?
  2. Входили ли в данное обновление какие-либо правки, связанные с кастомизацией кода фреймворка Jmix?
  3. Были ли какие-то инфраструктурные обновления (обновление web-сервера, например)?
  4. Предоставьте содержимое колонки EVENTS_GENERATOR_CLASS из таблицы IMAP_MAIL_BOX (можно просто перечень уникальных значений).

С уважением,
Иван

1 симпатия

Добрый день, Иван.

Спасибо за ответ!

  1. изменилась версия jmix 1.6.1 → 1.6.2;
  2. правки кода были “косметические” и только в нашем приложении.

Пошли от простого к сложному, а именно дали начальные рекомендации клиенту, чтобы проверил права пользователя ОС, под которым проводил установку, обновление и работу с приложением. Подразумеваем, что имеет вероятность возникновения ошибки по этой причине. Но после этого от клиента не поступало ни какой информации. Как будут какие-то детали от клиента - мы поделимся информацией, в том числе содержимым таблицы IMAP_MAIL_BOX, либо закроем тему :slight_smile: