Sealyu

--- 博客已迁移至: http://www.sealyu.com/blog

  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  618 随笔 :: 87 文章 :: 225 评论 :: 0 Trackbacks
这几天一直在用Richfaces, 现在使用的是3.3的版本,碰到不少问题,先一条条记录下来,以后逐步完善:
1.rich:scrollableDataTable 在Firefox中不能显示标题,这是richefaces的一个bug,还没有解决,只能暂时使用rich:extendedDataTable来代替以达到scrollalbe效果。
2.richfaces所带的drag-and-drop在jboss部署时可能碰到问题,需要将jboss-service.xml 中的UseJBossWebLoader设置为true。否则都会出现Method not found错误,提示找不到dropListener方法。 参考: http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4032847#4032847
3.使用rich:modalPanel时,如果要在弹出的panel中使用表单功能,一定要确保两点:
(1)<rich:modalPanel> 一定要放在主页面中form的外部。
(2)在
<rich:modalPanel>中要包含自己的form。
4.当你遇到 Property 'xxxx' not found on type org.javassist.tmp.java.lang.Object 时,请查看一下是否已经将该变量的setter和getter方法在local interface中定义。如果没有定义将会报类似这样的错误。
5.要使用richfaces,页面最好使用facelet实现。
6.在使用各个组件时,如果要在外围加div或panel,id一定注意最好不要用‘XXXContainer’,因为richfaces默认将一些组件解析成html的时候会加一些id类似这样的层。例如:
<rich:panel id="abcContainer" style="display:none;" rendered="true">
        <rich:modalPanel id="abc">
             afdsasdfs
        </rich:modalPanel>
</rich:panel>
这种情况下,这个modalPanel就不会显示出来,而是在原页面出现一个空框。原因就是richfaces自动生成一个id也为 abcContainer的层,跟外围的panel的id相同,所以modalPanle中的东西没有显示,只是将原来的panel显示出来了。

7.使用<a4j:status>时,如果一个页面内有多个status组件,就可能报错: “duplicate Id for a component _viewRoot“。
解决方法,将status组件的forceId设置为true. 例如:
<a4j:status forceId="true" id="xxStatus">
xxx
</a4j:status>
8.Property  'XXX' not found on type org.jboss.seam.jsf.ListDataModel.当使用一个DataModel时,如果引用其中的属性,可能会报这个错误。我是在使 用rich:tree的时候碰到这个问题的,但使用DataModel时,如果在tree里面因为节点的子属性就会报这个错误。
解决方法:将@DataModel改为@Out(required=false)并将对应的数据集合设置为一个@Factory.

posted on 2009-02-23 16:05 seal 阅读(1736) 评论(0)  编辑  收藏 所属分类: Seam

只有注册用户登录后才能发表评论。


网站导航: