我在primefaces 5.0上使用datatable的filterFunction方法.我想按列标题上的日期范围过滤生日.
在浏览器控制台上,我收到此错误:
<?xml version="1.0"
encoding="utf-8"?><partial-response><error><error-name>java.lang.ClassCastException</error-name><error-message><![CDATA[javax.faces.component.UIPanel
cannot be cast to
javax.faces.component.ValueHolder]]></error-message></error></partial-response>
Run Code Online (Sandbox Code Playgroud)
数据表:
<p:dataTable var="person" value="#{testDateRange.persons}"
id="personTable" paginator="true" styleClass="customTableStyle" editable="true"
rows="10" resizableColumns="true"
emptyMessage="No persons"
filteredValue="#{testDateRange.filteredPersons}"
widgetVar="dateRangeWidget" >
<p:column id="nameId" filterBy="name" sortBy="name" filterMatchMode="contains" headerText="Name">
<h:outputText value="#{person.name}" />
</p:column>
<p:column id="birthdayId" headerText="birthday" filterBy="birthday" filterFunction="#{testDateRange.filterByDate}">
<f:facet name="filter">
<p:calendar id="from" value="#{testDateRange.dateFrom}" styleClass="customCalendar" pattern="dd/MM/yyyy">
<p:ajax event="dateSelect" oncomplete="PF('dateRangeWidget').filter()" update="personTable"/>
</p:calendar>
<p:calendar id="to" value="#{testDateRange.dateTo}" styleClass="customCalendar" pattern="dd/MM/yyyy">
<p:ajax event="dateSelect" oncomplete="PF('dateRangeWidget').filter()" update="personTable"/>
</p:calendar>
</f:facet>
<h:outputText value="#{person.birthday}" >
<f:convertDateTime pattern="dd/MM/yyyy"/>
</h:outputText>
</p:column>
</p:dataTable>
Run Code Online (Sandbox Code Playgroud)
豆:
@Component("testDateRange")
@Scope("session")
public class TestDateRangeBean {
private …Run Code Online (Sandbox Code Playgroud) 我有一个通过xml-rpc发送字典的简单示例:
class CTest(object):
def __init__(self):
self.node1 = {'data':'zek', 'parent':{}, 'children':[]}
self.node2 = {'data':'bill', 'parent':{}, 'children':[]}
self.node1['children'].append(self.node2)
self.node2['parent'] = self.node1
def getNode(self):
return self.node1
Run Code Online (Sandbox Code Playgroud)
我有两个字典:node2是node1的子节点,同时node2将node1的引用作为父变量.所以它是一个递归字典.当我尝试通过XML-RPC发送node1时,我得到了以下异常:
#Command to execute xml-rpc dump method for serialization
test = CTest()
xmlrpclib.dumps((test,), 'Node Object')
#Exception
raise TypeError, "cannot marshal recursive dictionaries"
Run Code Online (Sandbox Code Playgroud)
是否可以通过XML-RPC发送node1(不更改字典结构)?
谢谢.
datatable ×1
dictionary ×1
jsf-2 ×1
marshalling ×1
primefaces ×1
python ×1
recursion ×1
xml-rpc ×1