Пользовательский файл taglib - .tag перекомпилируется при каждом запросе. Это нормально? - PullRequest
1 голос
/ 01 августа 2009

Я создаю пользовательский taglib с файлами .tag. Все отлично работает, кроме случаев, когда я загружаю 2 страницы одновременно. Кажется, что файлы .tag перекомпилируются при каждом запросе, и параллелизм приводит к сбою компиляции.

Это нормальное поведение для файлов .tag? Я ожидал, что они будут скомпилированы только один раз. Есть ли способ предотвратить повторную компиляцию?

Файлы .tag находятся в jar-файле, который включен в каталог lib моего war-файла. Я развертываю на JBoss 4.2.1, если это имеет значение.

Спасибо.

1 Ответ

1 голос
/ 01 августа 2009

Откуда вы знаете, что JBoss перекомпилирует тег при каждом запросе? Есть ли у вас какие-либо прямые доказательства или проблема с параллелизмом? Что это за проблема параллелизма? Трассировка стека? Если это так, пожалуйста, напишите это.

Когда JBoss компилирует JSP или файл тегов, он сохраняет версию компилятора в своем каталоге tmp / или work / (не могу вспомнить, какой именно). Посмотрите вокруг, чтобы увидеть, сможете ли вы найти его (это будет файл .class с именем, похожим на файл тегов). Если тег действительно перекомпилируется каждый раз, этот файл будет обновляться каждый раз. Если yoy вообще не может найти файл класса, возможно, JBoss не сможет создать временную скомпилированную версию (возможно, из-за проблемы с правами доступа к файлу), и поэтому вынужден каждый раз перекомпилировать.

...