org.apache.jasper.JasperException: /JSP/BillingPayment.jsp(15,3) 没有标签“ajax”在以前缀“f”导入的标签库中定义
对 JSF 2 有一些疑问,我只想使用 JSF 2 的 ajax 功能,而不打算使用它的任何实现。
已从 http 获取 JSF 库: //download.java.net/maven/2/com/sun/faces/jsf-api/2.1.1-b03/
但这些仍然不支持我用来实现功能的ajax标签。
我收到错误 org.apache.jasper.JasperException: /JSP/BillingPayment.jsp(15,3) 在以前缀“f”导入的标签库中没有定义标签“ajax” 对于以下请求。
<%@ taglib prefix="f" uri="http://java.sun.com/jsf/core"%>
<%@ taglib prefix="h" uri="http://java.sun.com/jsf/html"%>
<html>
<body>
<h:form>
<h:panelGrid>
<h:inputText value="#{dataTableBean.sponsorID}">
<f:ajax event="keyup" />
</h:inputText>
<h:outputText id="text" value="#{dataTableBean.sponsorID}" />
</h:panelGrid>
</h:form>
</body>
</html>
为此,我认为我没有合适的库,请给我支持 ajax 的正确 JSF2 库。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您必须使用 Facelets 技术。 您的
sth.xhtml
将具有此形式如果您在创建 jsf 页面时使用 netbeans ide 7.1,则 ,请检查 faceletes 选项。
我有一个类似的问题
h:outputScript 未在库 h 中定义。
You have to use Facelets Technology. Your
sth.xhtml
will have this formIf you are using netbeans ide 7.1 when you are creating a jsf page check the faceletes option.
I had a similar question
h:outputScript not defined in library h.
您的链接指向 jsf-api.jar。您还需要 jsf-impl.jar,您可以在 此目录。
如果您的类路径中包含这两者,您应该能够访问 TLD。我认为没有 jsf-impl.jar 就无法使用 jsf。
此外,您必须使用
f:view
标记在页面上包含所有组件标记。所以你的页面应该具有以下结构:Your link points to the jsf-api.jar. You need jsf-impl.jar as well which you can find in this directory.
If you have both in your classpath, you should be able to access the TLDs. I think there's no way to use jsf without a jsf-impl.jar.
Furthermore, you have to include all components tags on your page with the
f:view
tag. So your page should have the following structure: