我目前的开发环境是java 6,spring framework 3.2,weblogic 10.3.6以及使用Freemarker模板。在当前环境中一切正常,浏览页面时看不到任何运行时问题。
IDE:eclipse kepler 4.3,我正在从eclipse IDE运行weblogic服务器。我的部署程序集来自与kepler一起提供的m2e插件。
现在我正在升级到最新的Weblogic 12.1.2和java 7.我能够成功构建,部署和发布模块,但在访问页面时,我看到了freemarker模板的运行时问题。
在tomcat部署论坛中讨论了一个相关问题,其中解决方案是将spring-security-taglib添加到pom文件中,并将spring-security-taglibs.jar放在WEB-INF / lib文件夹中。但那对我不起作用。
非常感谢您解决此问题的任何帮助。我看到许多与freemarker模板异常相关的帖子,但没有解决方案。
以下是运行时错误,我看到了。
2013-09-23 14:16:30,696 [[ACTIVE] ExecuteThread:'0'表示队列:'weblogic.kernel.Default(self-tuning)']错误freemarker.runtime - 模板处理错误:“没有映射为http://www.springframework.org/tags“
定义有问题的指示:
freemarker.template.TemplateModelException:没有为http://www.springframework.org/tags定义映射
答案 0 :(得分:0)
听起来像FreeMarker的JSP扩展程序还没有发现包含<uri>http://www.springframework.org/tags</uri>
的TLD文件。它会在/WEB-INF/*.tld
和/WEB-INF/lib/*.{jar,zip}/META-INF/*.tld
下查找。如果它不存在且您不想将其放在那里,则可以使用web.xml
元素将该网址映射到taglib
中的TLD文件位置。
答案 1 :(得分:0)
此问题是否得到解决?如果我从WL管理控制台外部部署WAR,一切正常,没有freemarker模板错误。从Eclipse(Mars),Weblogic 12.2.1部署WAR时,我遇到了类似的错误。解决方法是将TLD复制到WEB-INF,然后从eclipse部署我没有错误。但是,不应该像在WEB-INF / lib下的JAR文件中那样复制这些TLD。