在尝试将Richfaces集成到JSF2项目中时,我收到了警告。
Warning: The page /template/template.xhtml declares namespace http://richfaces.org/a4j and uses the tag a4j:region , but no TagLibrary associated to namespace.
我没有使用maven所以我手动制作了一切。 我做了以下事情来整合它: 在罐子之后放入EAR部署组装:
richfaces-components-api-4.3.0.Final.jar
richfaces-components-ui-4.3.0.Final.jar
richfaces-core-api-4.3.0.Final.jar
richfaces-core-impl-4.3.0.Final.jar
sac-1.3.jar
guava-11.0.2.jar
cssparser-0.9.5.jar
将其添加到WAR的清单中。
这是Page-Snippet:
<ui:composition
xmlns="http://www.w3.org/1999/xhtml"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:t="http://myfaces.apache.org/tomahawk"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:a4j="http://richfaces.org/a4j"
id="TemplateView">
...
<h:form id="templateForm">
<a4j:region>
<a4j:jsFunction name="refreshSession">
<a4j:actionparam name="refresh" assignTo="#{ilapAdapter.refreshSession}"/>
</a4j:jsFunction>
</a4j:region>
</h:form>
...
我错过了什么吗?为什么我收到这个警告?根据“入门”指南,不需要在faces-config.xml或web.xml中进行其他配置。
我只需要Richfaces的Ajax功能。
PS。在WEB-INF.lib中放置richfaces-core-api-4.3.0.Final.jar,richfaces-core-impl-4.3.0.Final.jar也不起作用。
Richfaces相关的SystemOut:
[08.02.13 14:18:26:398 CET] 00000022 DefaultFacesC I Reading config : wsjar:file:/C:/projects/folab/workspace/FOLAB-WAS8/installedApps/CE02110Node02Cell/Dialog_Common_EAR.ear/richfaces-core-impl-4.3.0.Final.jar!/META-INF/faces-config.xml
[08.02.13 14:18:26:949 CET] 00000022 Config W org.richfaces.application.DefaultModule configure There was no service org.richfaces.focus.FocusManager found
[08.02.13 14:18:26:956 CET] 00000022 Cache I org.richfaces.cache.CacheManager getCacheFactory Selected fallback cache factory
[08.02.13 14:18:26:959 CET] 00000022 Cache I org.richfaces.cache.lru.LRUMapCacheFactory createCache Creating LRUMap cache instance using parameters: {com.ibm.ws.jsf.JSP_UPDATE_CHECK=true, javax.faces.STATE_SAVING_METHOD=server, javax.faces.PROJECT_STAGE=Development, com.ibm.ws.jsf.LOAD_FACES_CONFIG_AT_STARTUP=true, javax.faces.CONFIG_FILES=/WEB-INF/faces-navigation.xml, javax.faces.DEFAULT_SUFFIX=.xhtml}
[08.02.13 14:18:26:969 CET] 00000022 Cache I org.richfaces.cache.lru.LRUMapCacheFactory createCache Creating LRUMap cache instance of 512 items capacity
[08.02.13 14:18:26:985 CET] 00000022 Application I org.richfaces.application.InitializationListener onStart by , version
[08.02.13 14:18:26:989 CET] 00000022 Application W org.richfaces.application.InitializationListener logWarningWhenConnectionFactoryPresent JMS API was found on the classpath; if you want to enable RichFaces Push JMS integration, set context-param 'org.richfaces.push.jms.enabled' in web.xml
答案 0 :(得分:0)
尤里卡!
问题是myfaces的实施错误。 Richfaces 4.3至少需要myfaces 2.1.5我一直在使用2.0.8。不知何故,我第一次阅读要求时错过了这些信息。
第二个问题是缺少richfaces-components-ui-4.3.0.Final.jar(但是根据自述文件和开发指南,它不是a4j所必需的)。 希望将来有人帮助。