我们正在AEM 6.0中尝试一个示例吊带模型实施。在使用Sling模型时使用Sling的adaptTo方法时出现错误
吊索模型类不进口是这样的:
@Model(adaptables = Resource.class)
public class Header {
@Inject
private String link;
@Inject
private String text;
public String getLink() {
return link;
}
public String getText() {
return text;
}
}
吊索模型是使用下面的代码行被称为在jsp
<sling:adaptTo adaptable="${resource}" adaptTo="com.mysite.models.Header" var="model"/>
<h2>${model.link}</h2>
<h2>${model.text}</h2>
但是我们正在以下错误:
No tag "adaptTo" defined in tag library imported with prefix "sling"
我们使用以下语句导入了taglib:
<%@taglib prefix="sling" uri="http://sling.apache.org/taglibs/sling" %>
最初,出现了2.2版的Apache Sling JSP Tag Library包。我们也尝试上传2.2.4版本,但没有帮助。
有人请引导,如果其他东西需要adaptTo标签可用?
taglib声明是正确的。你能发布完整的JSP源代码吗?也许你正在包含其他的JSP,它会用旧版本'导入'这个导入 –
根据[documentation](https://sling.apache.org/documentation/bundles/sling-scripting-jsp-taglib.html), 'adaptTo'标签自版本_1.3_开始提供,所以我不希望这会成为问题。也许你正在用上面建议的其他东西遮蔽命名空间。或者,也许你在'/ var/classes'中缓存了一些令人讨厌的东西。您是否尝试强制AEM重新编译JSP? – toniedzwiedz