Вот подробная ситуация:
У меня есть два отдельных JAR-файла:
- JAR A содержит методprocessData(String input), которому во время выполнения требуется некоторое значение конфигурации для преобразования поля базы данных, и он напрямую используется в файлах INET rpt.
- JAR B отвечает за подготовку этой конфигурации. значение перед запуском отчета, поскольку этот jar-файл имеет соединение с БД.
Отчеты выполняются, и у меня нет четкого привязки для начала или окончания выполнения отчета. Несколько отчетов могут выполняться одновременно, каждый из которых использует свою собственную базу данных.
Моя цель — сделать значение конфигурации (значение поступает из БД) доступным для метода в JAR A во время выполнения отчета и гарантировать, что:
- Каждый отчет использует свою собственную конфигурацию, специфичную для базы данных.
- Отчеты не мешают друг другу, если они выполняются одновременно.
- Ни одно постоянное глобальное состояние не является общим для всех отчеты.
При таком сценарии, каковы безопасные подходы к тому, чтобы сделать конфигурацию для каждого отчета доступной в двух отдельных JAR-файлах? Как я могу обеспечить изоляцию между перекрывающимися отчетами в разных базах данных, если я не могу контролировать жизненный цикл отчета?
Мне нужно решение, которое не требует изменения существующих отчетов и может обрабатывать несколько перекрывающихся отчетов в одной JVM.
Для справки INET: https://www.inetsoftware.de/en/i-net-clear-reports/
Подробнее здесь: https://stackoverflow.com/questions/798 ... -in-inet-r
Мобильная версия