Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 排序h:数据表_Java_Sorting_Jsf - Fatal编程技术网

Java 排序h:数据表

Java 排序h:数据表,java,sorting,jsf,Java,Sorting,Jsf,我正在使用Seam和Java创建一个h:dataTable,其中包含来自填充有对象的ArrayList的信息。我的问题是,有没有办法通过单击其中一个标题对表进行排序。我现在有一些代码,它所做的就是以与以前相同的方式重新加载表 这是我的一些代码。如果您需要更多信息,请告诉我: 表: 地址 排序: 公共字符串sortByAddress(){ 对于(int i=0;i

我正在使用Seam和Java创建一个h:dataTable,其中包含来自填充有对象的ArrayList的信息。我的问题是,有没有办法通过单击其中一个标题对表进行排序。我现在有一些代码,它所做的就是以与以前相同的方式重新加载表

这是我的一些代码。如果您需要更多信息,请告诉我: 表:


地址
排序:

公共字符串sortByAddress(){
对于(int i=0;i例如(int j=i+1;jRichfaces中的dataTable支持通过单击列进行排序。

您可以获得更多关于dataTable的信息,包括排序,以及JSF专家提供的更多信息

<h:dataTable value="#{deliveryPort.getWholeDeliveryList()}" var="delivery" rules="rows">
                    <h:column>
                        <div class="setWidth">
                            <div class="white">
                            <f:facet name="header">
                                <h:outputLink style="color:#FFFFFF" action="#{deliveryPort.sortByAddress()}">
                                    Address
                                </h:outputLink>
                            </f:facet>
                            </div>
                            <h:outputText value="#{delivery.address}" />
                        </div>
                    </h:column>
    public String sortByAddress(){
    for(int i = 0; i < wholeDeliveryList.size(); i++){
        for(int j= i+1; j<wholeDeliveryList.size(); j++){
            if(wholeDeliveryList.get(i).getAddress().compareTo(wholeDeliveryList.get(j).getAddress())<1){
                FlowerStoreDelivery temp = wholeDeliveryList.get(i);
                wholeDeliveryList.set(i, wholeDeliveryList.get(j));
                wholeDeliveryList.set(j, temp);
            }
        }
    }
    return "deliveryList.seam";
}
    public List<FlowerStoreDelivery> getWholeDeliveryList(){
wholeDeliveryList = new ArrayList<FlowerStoreDelivery>();
wholeDeliveryList.addAll(entityManager.createQuery("SELECT e FROM FlowerStoreDelivery e").getResultList());
    return wholeDeliveryList;
}