日期:2014-05-18  浏览次数:20735 次

JSF中backingbean参数传递问题
问题是这样的:
一个页面:采用frameset分成两部分,左边采用tomahark的tree2组件,当点击叶结点的时候,右边显示不同的页面,同时需要由tree2组件的backingbean的同一个属性向右边页面的backingbean传递不同的参数。因为不希望每次点击tree2的叶结点都要重新读取数据库的tree2配置信息,所以tree2的backingbean的范围设成session的,右边页面的backingbean是request范围的。现在的问题是,当我点击左边的叶结点的时候,参数传递到了右面;然后我在点击另一个叶结点,参数也传递了过去;这时候,当我后退刷新时,第一次点击传递的参数也变了。我参数传递的方式是采用managed-property,请问怎样我才能实现自己想要的功能,也就是使用一个bean的同一个属性向多个bean传递不同的参数,并且这些参数之间不发生冲突。

------解决方案--------------------
facesContext.getApplication().createValueBinding( "#{xxx} ").setValue();
上面的方法可以将任何的backBean赋值