从Weblogic 9.x上的Spring容器中访问WAR打包的类路径资源

时间:2013-05-13 15:24:28

标签: java spring web-applications weblogic war

在Web应用程序内部,我使用了一些Spring计划任务(因此由Spring容器独立管理)。这些任务执行一些业务逻辑并需要访问StringTemplate资源,这些资源在部署后位于WEB-INF / classes中。我提供他们的目录为String(即"some/templates"),它在分解模式下工作正常,但在切换到WAR包装后,ST无法找到这些资源。 Project's page建议使用URL / URI(“泥潭”),但这对我来说有点不清楚。其他资源正常工作,唯一的问题是STGroupDir构造函数。

我应该如何构建URL / URI / Paths参数,以便WAR包装的Spring管理的计划任务可以访问这些资源?

1 个答案:

答案 0 :(得分:2)

Weblogic 9.x在打包的WAR中创建内部_wl_cls_gen.jar似乎是个问题,包含所有类路径(即WEB-INF / classes)资源。这会导致许多依赖getResource(path)方法(例如ClassLoader方法)的框架出现问题。因为StringTemplate无法访问组文件。我通过将模板从类路径移到WEB-INF位置,然后将路径注入StringTemplate的URL来解决问题。

我找到了有关此问题的更多信息herehere