我需要创建一个富:dataTable(甚至扩展),具有以下功能:
我有一个类公司有一个Product对象的集合.我想显示下表:
我仍然没有弄清楚如何使用子表(在所有示例中,我发现subTable与主表具有完全相同的列).据推测,我需要在前两列中使用rowpans,但我仍然没有找到方法.
有人可以为此提供伪代码吗?
干杯!
更新1: 我尝试将左侧列的行间距设置为列表或产品的大小,然后:
不幸的是,这对我不起作用,因为a4j:repeat中的列根本没有出现 - 不是因为渲染的标记.循环是正确的,因为如果我打印标准文本,它会出现.
有没有办法实现行进,或者我是否在墙上敲我的头?
更新2: 该问题可能与本文有关,表明迭代组件(例如<a4j:repeat>)和标记<c:forEach>之间的差异.第一个在渲染时发生,而第二个在渲染时运行,当JSF组件放在页面的组件树上时.
我试图获得富人:a4j之外的列:重复并且它们被渲染(当然,不像预期的那样,但它们确实如此).
我试图从我的RichFaces项目中删除 jquery和prototype和Scriptaculous.我不想在那里使用这些库,因为我想在这个项目中使用最新版本的jQuery,并且拥有这些库的3个旧版本会让它变得困难.
我无法在网上找到任何说明RichFaces的哪些部分需要这些库的文档.事实上,我觉得他们决定在那里包括原型和jquery 似乎有点疯狂.
我试图在我的应用程序中调用JSF函数更具动态性.oncomplete
我不希望手动将回调函数写入事件的静态方法,而是将回调函数作为参数发送,并使其oncomplete
在函数内部事件中调用.这是一个例子:
<script type="text/javascript">
myFunc('myParamValue', function(){
doThis();
andDoThis();
});
</script>
<a4j:jsFunction name="myFunc" actionListener="#{...}" data="" oncomplete="">
<f:param name="myParam" />
<f:param name="callback" />
</a4j:jsFunction>
Run Code Online (Sandbox Code Playgroud)
我想问一下,使用data
属性是否可行a4j:jsFunction
?像这样的东西:
...
data="#{myBean.callback}"
oncomplete="if (typeof window[event.data] == 'function') window[event.data]();"
...
Run Code Online (Sandbox Code Playgroud) 在排序或更改实际数据后,ExtendedTableDataModel(在RichFaces库中)如何工作?我首先要求提供高质量的文档,但除此之外,还要提供自己的智能见解.
具体来说,重置方法如何工作以及为什么每次JSF/RichFaces渲染引擎获取数据模型时都要确保它被调用(如使用此数据模型的各种无法解释的代码示例中所示)?
很抱歉向Google寻求帮助,但这本身让我觉得它值得在这里提出问题.我能找到的最好的是RichFaces javadocs,它说:
public void reset()
Run Code Online (Sandbox Code Playgroud)
重置内部缓存数据.调用此方法可在首次访问数据时从数据提供程序重新加载数据.
这里有点奇怪的,我没有看到任何其他的报告,我们最近报告了IE11用户的一些UI错误,经过一些测试我意识到在执行reRender(我使用的是A4J)之后,IE11正在放置HTML错误的地方,例如.
<s:div id="parent" rendered="#{someCondition}">
<div id="brother"></div>
<div id="sister"></div>
</s:div>
Run Code Online (Sandbox Code Playgroud)
在重新渲染之后看起来像这样
<s:div id="parent" rendered="#{someCondition}">
<div id="brother">
<div id="sister"></div>
</div>
</s:div>
Run Code Online (Sandbox Code Playgroud)
这显然是对布局造成严重破坏
我混合JSF/HTML组件相当多,但不认为这应该导致问题?
可能导致这种情况的任何想法?
JSF 1.2 | RichFaces 3.3 | Facelets的
我有一个数据表,其中包含可变数量的列和数据滚动条.如何启用服务器端排序?我更喜欢用户单击列标题来触发它.
<rich:datascroller for="instanceList" actionListener="#{pageDataModel.pageChange}"/>
<rich:dataTable id="instanceList" rows="10" value="#{pageDataModel}"
var="fieldValues" rowKeyVar="rowKey">
<rich:columns value="#{pageDataModel.columnNames}" var="column" index="idx">
<f:facet name="header">
<h:outputText value="#{column}"/>
</f:facet>
<h:outputText value="#{classFieldValues[idx]}" />
</rich:columns>
</rich:dataTable>
Run Code Online (Sandbox Code Playgroud)
我已经在bean上有一个方法来执行排序.
public void sort(int column)
Run Code Online (Sandbox Code Playgroud) 我正在使用Richfaces的选项列表,我想用我的支持bean中的SelectItems列表填充右侧面板.
填充左侧不是支持bean的问题,但右侧是有问题的.
这就是我现在拥有的
<h:outputText value="Roles" />
<rich:pickList showButtonsLabel="false">
<f:selectItems value="#{Bean.allRoles}" />
</rich:pickList>
Run Code Online (Sandbox Code Playgroud)
编辑:
所以我有角色'a','b','c'和'd'.
用户具有角色'a'和'd',因此'a'和'd'应位于右侧面板上,'b'和'c'应位于左侧面板上.
编辑:
进一步说明.
我有三个用户列表.
所有列表都具有数据类型ArrayList<SelectItem>
.
我需要能够在列表编号1和列表编号2之间移动单个角色,然后保存新的角色集.我认为该选项列表将是该工作的最佳richfaces对象.
我已经使用RichFaces和JSF进行了一段时间的编程,并且像Facelets提供的功能(特别是作为JSF 2的一部分),但尚未使用它.RichFaces和Facelets之间是否存在任何需要注意或不兼容的问题?我作为RichFaces的一部分使用A4J ajax功能,所以我也很关心.
提前致谢.
使用JBoss 6.0.0.Final,Richfaces 3.3.3.Final,MyFaces 2.0.6,facelets 1.1.15.B1(RF 3的限制).
我正在进行遗留项目,其中包含数百个定义的bean faces-config.xml
.我想保留faces-config.xml中定义的那些,但是对新bean使用注释.但是,当我尝试这个时,我没有成功.由注释定义的bean即
@ManagedBean
@ViewScoped
public class Foobar implements Serializable {
// ...
}
Run Code Online (Sandbox Code Playgroud)
从我的JSF页面无法访问该bean.我相信我已经通过使用正确的标头在faces-config.xml中指定了2.0版本.
<faces-config
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd"
version="2.0">
Run Code Online (Sandbox Code Playgroud)
还有什么我需要做的,faces-config.xml
以允许注释也被使用?
我在加载JSF页面时遇到了下面提到的错误.页面成功加载,页面上的所需操作也已完成,但是出现此错误.
jsf页面包含选项卡面板,单击每个选项卡面板时出现错误.另外,我发现如果我将页面的某一部分保留为render = false,则错误不会出现,但该部分也不会被重新呈现.
我正在使用JSF2.0和JSP.和RF3.3
ERROR [[Faces Servlet]] Servlet.service() for servlet Faces Servlet threw exception
javax.faces.FacesException: Error decode resource data
at org.ajax4jsf.resource.ResourceBuilderImpl.decrypt(ResourceBuilderImpl.java:627)
at org.ajax4jsf.resource.ResourceBuilderImpl.getResourceDataForKey(ResourceBuilderImpl.java:371)
at org.ajax4jsf.resource.InternetResourceService.serviceResource(InternetResourceService.java:156)
at org.ajax4jsf.resource.InternetResourceService.serviceResource(InternetResourceService.java:141)
at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:508)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:235)
at org.apache.catalina.core.StandardContextValve.__invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:190)
at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:92)
at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.process(SecurityContextEstablishmentValve.java:126)
at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:70)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:158)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:330)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:829)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:601)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:662)
Caused by: java.util.zip.DataFormatException: incorrect data check
at java.util.zip.Inflater.inflateBytes(Native …
Run Code Online (Sandbox Code Playgroud)