首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Portlet-Bridge、Richfaces和ajax4jsf是如何协同工作的?

Portlet-Bridge、Richfaces和ajax4jsf是如何协同工作的?
EN

Stack Overflow用户
提问于 2010-10-01 22:21:14
回答 1查看 1.7K关注 0票数 0

我正在尝试通过使用JBoss Forumthe portlet bridge documentation中声明的配置来使Liferay6.0、JBoss portlet bridge 2.0和Richfaces 4.0.0协同工作。我的目标是在实现protlets时使用JSF 2.0。

我使用maven在Liferay中构建和部署portlet,并包含如下Richfaces依赖项:

代码语言:javascript
复制
<dependency>
  <groupId>javax.faces</groupId>
  <artifactId>jsf-impl</artifactId>
  <version>2.0.2-FCS</version>
</dependency>
<dependency>
  <groupId>org.jboss.portletbridge</groupId>
  <artifactId>portletbridge-api</artifactId>
  <version>2.0.0.CR1</version>
</dependency>
<dependency>
  <groupId>org.jboss.portletbridge</groupId>
  <artifactId>portletbridge-impl</artifactId>
  <version>2.0.0.CR1</version>
</dependency>
        <dependency>
            <groupId>org.richfaces</groupId>
            <artifactId>richfaces-bom</artifactId>
            <version>4.0.0.20100826-M2</version>
            <scope>import</scope>
            <type>pom</type>
        </dependency>
<dependency>
  <groupId>com.sun.facelets</groupId>
  <artifactId>jsf-facelets</artifactId>
  <version>1.1.15.B1</version>
</dependency>

但是当我使用这个配置时,我得到了以下错误:

代码语言:javascript
复制
 SEVERE: Exception starting filter ajax4jsf
 java.lang.ClassNotFoundException: org.ajax4jsf.Filter
  at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1516)
  at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1361)
  at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:269)
  at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:422)
  at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:115)
  at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3838)
[...]
  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  at java.lang.reflect.Method.invoke(Method.java:597)
  at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
  at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)

所以我再次查看了论坛,找到了this post,在我看来,ajax4jsf不再需要在web.xml和portlet.xml中进行任何配置。所以我丢弃了它,并得到了以下错误:

代码语言:javascript
复制
[TomcatInstrumentableClassLoader@1738d88] error can't determine annotations of missing type org.ajax4jsf.renderkit.AjaxViewRootRenderer

现在我很困惑:我必须在web.xml中配置ajax4jsf吗?为什么Liferay找不到呢?那么这个模块到底有什么好处呢,是JSF2.0实现,还是富脸专有功能?

EN

回答 1

Stack Overflow用户

发布于 2010-10-01 23:03:09

支持JSF2的JBoss Portlet Bridge的唯一版本是alpha here。您可以使用2.0.0.FINAL api jar将jar放入lib文件夹中。此外,在svn中也有一些基于maven的示例,它们有一个Liferay配置文件"mvn package -Pliferay“。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3840038

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档