0

リストに追加して、そのリストを以下の関数にスローします。

 List<ItemBean> itemList;

        for (Object bean : beans)
        {
            if (!bean.getItem().isActive())
            {
                itemList.add(bean.getItem().getId());
            }
       }

       if (!itemList.isEmpty())
       {
        // Source of Supply List
        buildItemList( request, commonDAO, false );
       }
       else{
           buildItemFilterList( request, commonDAO, itemList);

       }

しかし、ここで「配列またはjava.lang.Iterableのインスタンスに対してのみ反復できます」というエラーが発生します。

 protected final List<ItemBean> buildItemFilterList( HttpServletRequest request,
                                                             CommonDAO dao,
                                                             ItemBean list
                                                            )
    throws Exception
{
    List<ItemBean> itemList = dao.getAllItems( false );
    ItemBean item;

    for (ItemBean s: list )  <<<<<-----ERROR!!!!!!!!!!!
    {
        item = dao.getItemById(s.getId());
        itemList.add(item);
    }

    Collections.sort( itemList );
    request.setAttribute("itemList", itemList);
    return itemList;
}
4

3 に答える 3

5

エラーは、引数「SourceOfSupplyBeanlist」がコレクションではないということです。

protected final List<ItemBean> buildItemFilterList( 
     HttpServletRequest request,
     CommonDAO dao,
     List<ItemBean> list
)
于 2012-04-04T20:09:24.357 に答える
0

どうやら、パラメータ'list'はのタイプでItemBeanあり、または配列ItemBeanのインスタンスではありません。Iterable

于 2012-04-04T20:09:42.963 に答える
0
protected final List<ItemBean> buildItemFilterList( HttpServletRequest request,
                                                             CommonDAO dao,
                                                             ItemBean list
                                                            )
    throws Exception
{
    List<ItemBean> itemList = dao.getAllItems( false );
    ItemBean item;

    for (ItemBean s: list )  <<<<<-----ERROR!!!!!!!!!!!
    {
        item = dao.getItemById(s.getId());
        itemList.add(item); <<< --real error is here.
    }

    Collections.sort( itemList );
    request.setAttribute("itemList", itemList);
    return itemList;
}

リストを繰り返し処理している間は、リストを変更することはできません。

于 2012-04-04T20:10:42.917 に答える