Блог

Ошибка: «Версия загружаемого Jasper файла не актуальна. Актуальная версия 6.12.2» — что делать

Самый простой способ решить проблему — подготовить шаблон через EasyJasper.

EasyJasper — это онлайн-редактор шаблонов этикеток для Честного Знака. В нём не нужно устанавливать Jaspersoft Studio, искать подходящую версию 6.12.2, вручную компилировать .jrxml в .jasper и разбираться с ошибками загрузки. Вы можете открыть шаблон, изменить размер этикетки, добавить нужные поля, Data Matrix, текст, логотип или штрихкод, а затем скачать готовый .jasper для загрузки в Честный Знак.

Это особенно удобно, если вы столкнулись с ошибкой:

«Версия загружаемого Jasper файла не актуальна. Актуальная версия 6.12.2»

Во многих случаях такая ошибка связана не только с версией Jasper Studio, а с содержимым самого шаблона: неправильной структурой, размерами, картинками, штрихкодами, полями или некорректной компиляцией файла.

Если вы хотите быстро подготовить рабочий шаблон без ручной настройки Jasper Studio, используйте EasyJasper. А ниже разберём, почему возникает эта ошибка и что проверить, если вы всё-таки редактируете шаблон вручную.

«Версия загружаемого Jasper файла не актуальна. Актуальная версия 6.12.2»

На первый взгляд кажется, что проблема именно в версии Jaspersoft Studio. Пользователь устанавливает Jasper Studio 6.12.2, заново сохраняет шаблон, снова загружает файл в СУЗ — и получает ту же ошибку. В обсуждениях на сайте Честного Знака пользователи прямо пишут, что работают в нужной версии, но портал всё равно не принимает файл.

На практике эта ошибка не всегда означает, что файл создан в неправильной версии Jasper Studio. Часто причина находится внутри самого шаблона: в структуре JRXML, в логике элементов, в картинках, штрихкодах, размерах области печати или в неправильной компиляции файла.

Что на самом деле означает ошибка

Представитель Честного Знака объяснял, что ошибка «Версия загружаемого файла не актуальна. Актуальная версия 6.12.2» может возникать не из-за версии программы, а из-за нарушения синтаксиса JRXML или логических ошибок в шаблоне. Например, когда данные указаны не в том элементе, динамические значения размещены в статическом поле или в элемент передаётся больше символов, чем он способен корректно обработать. В таких случаях СУЗ не может корректно обработать содержимое загружаемого файла.

То есть сообщение про версию может быть не точной причиной, а общей ошибкой обработки Jasper-шаблона.

Первое, что нужно проверить

Сначала убедитесь, что вы загружаете именно скомпилированный файл .jasper, а не файл .jrxml, который просто переименовали.

Это частая ошибка: пользователь редактирует шаблон, получает JRXML-файл, меняет расширение с .jrxml на .jasper и пытается загрузить его в Честный Знак. Но .jrxml и .jasper — это разные файлы.

JRXML — исходный файл шаблона. Его можно открыть и редактировать.

Jasper — скомпилированный файл, который должен загружаться в Честный Знак.

Простой способ проверки: откройте файл через обычный текстовый редактор. Если внутри виден читаемый XML-текст, значит это, скорее всего, не настоящий .jasper, а JRXML-файл или неправильно подготовленный файл. В обсуждениях Честного Знака пользователи также указывали, что часто проблема возникает именно из-за переименования JRXML в Jasper.

Проверьте, что шаблон действительно скомпилирован

В Jasper Studio недостаточно просто сохранить проект. Нужно именно скомпилировать отчет.

Обычно логика такая:

  1. Открыть .jrxml в Jasper Studio.
  2. Внести изменения.
  3. Выполнить компиляцию отчета.
  4. Получить файл .jasper.
  5. Загрузить в СУЗ именно .jasper.

Если после сохранения у вас появился только .jrxml, Честный Знак такой файл как готовый шаблон не примет.

Проверьте элементы Report, Detail и Frame

В официальном ответе на сайте Честного Знака рекомендуют поочерёдно удалять элементы шаблона, чтобы найти проблемный элемент, а также проверить параметры элементов Report, Detail и Frame.

Это важный пункт, потому что шаблон этикетки обычно состоит не просто из отдельных текстов и штрихкодов. В Jasper есть структура отчета: страница, поля, detail band, frame, элементы внутри frame. Если размеры или вложенность элементов нарушены, СУЗ может не принять файл.

Что стоит проверить:

Проверьте размер этикетки

Другая похожая ошибка при загрузке шаблона — «Не удаётся определить размеры этикетки». Она часто встречается рядом с ошибкой про версию Jasper, особенно когда пользователь меняет шаблон или добавляет изображение. В одном из обсуждений пользователь пишет, что без изображения шаблон загружается, а с изображением появляются ошибки: либо про неактуальную версию Jasper, либо про невозможность определить размеры этикетки.

Проверьте:

Например, если этикетка должна быть 58×40 мм, в шаблоне не должно случайно получиться 77×53 мм из-за неправильного коэффициента, DPI или единиц измерения.

Проверьте изображения и логотипы

Изображения — одна из частых причин проблем. Пользователи в обсуждениях Честного Знака пишут, что шаблон без картинки загружается, а после добавления логотипа или изображения появляется ошибка про версию Jasper. В одном из комментариев описывается обходной вариант: кодировать изображение в Base64 и вставлять его в шаблон как данные, а не как внешний файл.

Что проверить:

Для этикеток Честного Знака лучше использовать простые изображения: PNG, чёрно-белые или с минимальным количеством цветов, без лишнего фона и без большого размера файла.

Проверьте штрихкоды и Data Matrix

Если после добавления Data Matrix, EAN-13, Code-128 или другого штрихкода шаблон перестал загружаться, временно удалите штрихкод и попробуйте импортировать файл снова.

Если без штрихкода шаблон загружается, проблема может быть в выражении, типе штрихкода или значении, которое передается в элемент.

Проверьте:

Для Честного Знака важно не просто нарисовать квадрат Data Matrix, а передать в него корректное значение кода маркировки из данных СУЗ.

Проверьте текстовые поля

Ошибка может появляться из-за логической ошибки в элементах. Например, когда в поле передается слишком длинный текст, который не помещается в элемент, или когда динамические данные размещены там, где должен быть статический текст. Такая причина прямо приводится в официальном ответе Честного Знака.

Проверьте:

Пример динамического поля в Jasper обычно выглядит так:

$F{name}

А обычная надпись должна быть статическим текстом, например:

Наименование:

Не стоит вставлять $F{name} в обычный статический текстовый элемент, если этот элемент не предназначен для выражений.

Метод быстрой диагностики

Самый рабочий способ найти причину — удалять элементы по одному.

Порядок проверки:

  1. Сохраните копию шаблона.
  2. Удалите все изображения.
  3. Скомпилируйте .jasper.
  4. Попробуйте загрузить в Честный Знак.
  5. Если загрузилось — проблема была в изображении.
  6. Если не загрузилось — удалите штрихкоды.
  7. Потом проверьте текстовые поля.
  8. Затем проверьте frame, размеры и detail band.

Так можно быстро понять, какой элемент ломает импорт.

Частые причины ошибки

Самые вероятные причины:

Что делать пошагово

Шаг 1. Проверьте расширение файла

Убедитесь, что файл действительно .jasper.

Не переименовывайте .jrxml в .jasper. Это не компиляция.

Шаг 2. Скомпилируйте шаблон заново

Откройте исходный .jrxml в Jasper Studio и выполните компиляцию отчета. После этого загрузите полученный .jasper.

Шаг 3. Уберите изображения

Если в шаблоне есть логотип, картинка или пиктограмма, временно удалите их и попробуйте загрузить шаблон без них.

Если без изображения файл загружается, значит проблема в способе вставки картинки.

Шаг 4. Проверьте размеры

Сравните размер этикетки в шаблоне с размером, который вы выбираете в Честном Знаке. Проверьте, что frame и detail не больше страницы.

Шаг 5. Проверьте Data Matrix

Убедитесь, что Data Matrix использует правильное поле с кодом маркировки, а не GTIN или произвольный текст.

Шаг 6. Проверьте текстовые поля

Уберите длинные поля или увеличьте область текста. Особенно это важно для полного наименования товара, состава, размера, цвета и других атрибутов.

Шаг 7. Найдите проблемный элемент

Удаляйте элементы по одному и каждый раз пробуйте загрузить шаблон. Это самый надёжный способ найти, какой именно объект мешает импорту.

Можно ли решить проблему установкой другой версии Jasper Studio?

Иногда — да. Но не всегда.

В обсуждениях пользователи пишут, что пробовали разные версии Jasper Studio, включая 6.12.2 и 6.20.x, но ошибка сохранялась. При этом представитель Честного Знака объяснял, что сообщение может быть связано не с версией программы, а с содержимым файла.

Поэтому установка другой версии — не первое решение. Сначала стоит проверить структуру шаблона, изображения, штрихкоды, поля и компиляцию.

Как избежать ошибки

Лучше всего не редактировать Jasper-шаблон вручную без проверки.

Перед загрузкой в Честный Знак проверьте:

Краткий вывод

Ошибка «Версия загружаемого Jasper файла не актуальна. Актуальная версия 6.12.2» не всегда означает, что у вас неправильная версия Jasper Studio.

Чаще нужно искать проблему в самом шаблоне:

Самый быстрый путь — сделать копию шаблона, удалить изображения и сложные элементы, загрузить простую версию, а затем возвращать элементы по одному. Так можно найти, какой объект вызывает ошибку при импорте в Честный Знак.

FAQ

Почему Честный Знак пишет про версию 6.12.2, хотя файл сделан в 6.12.2?

Потому что ошибка может быть общей ошибкой обработки файла. В официальных ответах указывается, что причина может быть в синтаксисе JRXML или логических ошибках внутри шаблона, а не только в версии Jasper Studio.

Можно ли просто переименовать JRXML в Jasper?

Нет. .jrxml нужно скомпилировать в .jasper. Простое переименование расширения не создаёт корректный Jasper-файл.

Почему шаблон без картинки загружается, а с картинкой нет?

Вероятно, изображение вставлено способом, который СУЗ не может обработать: как внешний файл, с неправильным путём, слишком большим размером или некорректной ссылкой. В обсуждениях пользователи сообщали, что добавление изображения часто вызывает ошибку загрузки.

Что проверять в первую очередь?

Сначала проверьте, что у вас настоящий .jasper, затем уберите изображения, проверьте размеры этикетки, frame/detail и формулы штрихкодов.

Нужно ли обязательно использовать Jasper Studio?

Для ручной работы с исходными шаблонами Jasper Studio обычно используют, но основная сложность не только в программе, а в корректной подготовке файла под требования СУЗ. Поэтому удобнее использовать редактор, который сразу проверяет шаблон и экспортирует готовый .jasper для Честного Знака.