我正在使用 .tag 文件创建自定义标记库。一切都很好,除了我同时加载 2 个页面。似乎每个请求都会重新编译 .tag 文件,并且并发导致编译失败。
这是 .tag 文件的正常行为吗?我本来希望它们只编译一次。有什么方法可以防止重新编译吗?
.tag 文件位于一个 jar 文件中,该文件包含在我的 war 文件的 lib 目录中。我正在部署到 JBoss 4.2.1,如果这很重要的话。
谢谢。
你怎么知道 JBoss 正在重新编译每个请求的标签?您是否有任何直接证据,或者只是并发问题?这是什么并发问题?堆栈跟踪?如果是这样,请发布它。
当 JBoss 编译 JSP 或标记文件时,它会将编译器版本保存在其 tmp/ 或 work/ 目录中(不记得是哪个)。看看那里是否可以找到它(它将是一个 .class 文件,其名称看起来类似于标记文件)。如果确实每次都重新编译标签,则每次都会刷新该文件。如果 yoy 根本找不到 class 文件,可能是 JBoss 无法创建临时编译版本(可能是文件权限问题),所以每次都强制重新编译。