Java 为什么不是';t列表视图重复列表<;字符串>;在边门?

Java 为什么不是';t列表视图重复列表<;字符串>;在边门?,java,wicket,Java,Wicket,当我调试列表时,间接列表没有实例化。但我觉得在JPA里很懒。它不在Listview中呈现,但应该有节点。我错过什么了吗 //.....code...... private ListView<String> reqs; // Requirements private Label lblreqs; //Label for repeat requirements //...code... final LigaBaseball lbb = LigaBBServ.buscarPorI

当我调试列表时,间接列表没有实例化。但我觉得在JPA里很懒。它不在Listview中呈现,但应该有节点。我错过什么了吗

//.....code......
private ListView<String> reqs; // Requirements
private Label lblreqs;  //Label for repeat requirements
//...code...
    final LigaBaseball lbb = LigaBBServ.buscarPorID(Integer
            .parseInt(idLiga)); //Get Baseball league from database

    if (lbb == null || pageParameters == null
            || pageParameters.get("idLiga") == null)
        throw new RestartResponseException(VerLigas.class); //If null redirect.
//...code...

    add(reqs = new ListView<String>("reqs", new ListModel<String>(lbb.getRequisitos()))//LAZYly get List from LigaBaseball(BaseballLeague) {
        @Override
        protected void populateItem(ListItem<String> item) {
        /*When I debug item is null
*/
            item.add(lblreqs = new Label("lblreqs", (item.getModelObject())));
        }
    });

//...code...
/../code。。。。。。
私有ListView需求;//要求
自有品牌LBLREQ//重复要求标签
//…代码。。。
最终lbb=LigaBBServ.buscarPorID(整数
.parseInt(idLiga))//从数据库中获取棒球联赛
如果(lbb==null | | pageParameters==null
||pageParameters.get(“idLiga”)==null)
抛出新的RestartResponseException(VerLigas.class)//如果为空,则重定向。
//…代码。。。
添加(reqs=new ListView(“reqs”,new ListModel(lbb.getRequisitos())//LAZYly从棒球联盟(BaseballLeague)获取列表){
@凌驾
受保护的void populateItem(列表项){
/*当我调试项为空时
*/
add(lblreqs=新标签(“lblreqs”,(item.getModelObject()));
}
});
//…代码。。。
嗯。。。根据您发布的代码创建的这个(相当简单的)单元测试,确实如此,但可能我没有抓住要点

package net.unbewaff;

public class DemoTestCase {

    private WicketTester tester = new WicketTester();
    private Panel panel = new MyPanel("panel");

    @Test
    public void testIt() {
        tester.startComponentInPage(panel);
        tester.assertComponent("panel", Panel.class);
        tester.assertComponent("panel:reqs", ListView.class);
        tester.assertComponent("panel:reqs:0", ListItem.class);
        tester.assertLabel("panel:reqs:0:lblreqs", "1");
        tester.assertComponent("panel:reqs:1", ListItem.class);
        tester.assertLabel("panel:reqs:1:lblreqs", "2");
        tester.assertComponent("panel:reqs:2", ListItem.class);
        tester.assertLabel("panel:reqs:2:lblreqs", "3");
        tester.assertComponent("panel:reqs:3", ListItem.class);
        tester.assertLabel("panel:reqs:3:lblreqs", "4");
    }

    private final class MyPanel extends Panel {

        private MyPanel(String id) {
            super(id);
        }

        public void onInitialize() {
            ListView<String> reqs;

            final LigaBaseball lbb = new LigaBaseball();

            reqs = new ListView<String>("reqs", new ListModel<String>(lbb.getRequisitos())) {

                protected void populateItem(ListItem<String> item) {
                    item.add(new Label("lblreqs", (item.getModelObject())));
                }
            };

            add(reqs);

            super.onInitialize();
        }
    }

    class LigaBaseball {

        public List<String> getRequisitos() {
            String[] a = { "1", "2", "3", "4" };
            return Arrays.asList(a);
        }
    }
}
package net.unbewaff;
公共类降级案例{
专用WicketTester测试器=新WicketTester();
私人面板=新MyPanel(“面板”);
@试验
公开无效测试(){
测试仪启动组件页面(面板);
tester.assertComponent(“panel”,panel.class);
tester.assertComponent(“面板:需求”,ListView.class);
tester.assertComponent(“面板:需求:0”,ListItem.class);
测试仪资产标签(“面板:需求:0:lblreqs”,“1”);
tester.assertComponent(“面板:需求:1”,ListItem.class);
测试仪资产标签(“面板:需求:1:lblreqs”、“2”);
tester.assertComponent(“面板:需求:2”,ListItem.class);
测试仪资产标签(“面板:需求:2:lblreqs”、“3”);
tester.assertComponent(“面板:需求:3”,ListItem.class);
测试仪资产标签(“面板:需求:3:lblreqs”、“4”);
}
私有最终类MyPanel扩展了Panel{
私有MyPanel(字符串id){
超级(id);
}
公共无效初始化(){
列表视图需求;
最终连胜棒球lbb=新连胜棒球();
reqs=新列表视图(“reqs”,新列表模型(lbb.getRequisitos()){
受保护的void populateItem(列表项){
添加(新标签(“lblreqs”),(item.getModelObject());
}
};
增加(需求);
super.onInitialize();
}
}
职业棒球{
公共列表getRequisitos(){
字符串[]a={“1”、“2”、“3”、“4”};
返回数组。asList(a);
}
}
}

测试集:net.unbewaff.DemoTestCase 测试运行:1,失败:0,错误:0,跳过:0,运行时间:0.032秒。。。根据您发布的代码创建的这个(相当简单的)单元测试,确实如此,但可能我没有抓住要点

package net.unbewaff;

public class DemoTestCase {

    private WicketTester tester = new WicketTester();
    private Panel panel = new MyPanel("panel");

    @Test
    public void testIt() {
        tester.startComponentInPage(panel);
        tester.assertComponent("panel", Panel.class);
        tester.assertComponent("panel:reqs", ListView.class);
        tester.assertComponent("panel:reqs:0", ListItem.class);
        tester.assertLabel("panel:reqs:0:lblreqs", "1");
        tester.assertComponent("panel:reqs:1", ListItem.class);
        tester.assertLabel("panel:reqs:1:lblreqs", "2");
        tester.assertComponent("panel:reqs:2", ListItem.class);
        tester.assertLabel("panel:reqs:2:lblreqs", "3");
        tester.assertComponent("panel:reqs:3", ListItem.class);
        tester.assertLabel("panel:reqs:3:lblreqs", "4");
    }

    private final class MyPanel extends Panel {

        private MyPanel(String id) {
            super(id);
        }

        public void onInitialize() {
            ListView<String> reqs;

            final LigaBaseball lbb = new LigaBaseball();

            reqs = new ListView<String>("reqs", new ListModel<String>(lbb.getRequisitos())) {

                protected void populateItem(ListItem<String> item) {
                    item.add(new Label("lblreqs", (item.getModelObject())));
                }
            };

            add(reqs);

            super.onInitialize();
        }
    }

    class LigaBaseball {

        public List<String> getRequisitos() {
            String[] a = { "1", "2", "3", "4" };
            return Arrays.asList(a);
        }
    }
}
package net.unbewaff;
公共类降级案例{
专用WicketTester测试器=新WicketTester();
私人面板=新MyPanel(“面板”);
@试验
公开无效测试(){
测试仪启动组件页面(面板);
tester.assertComponent(“panel”,panel.class);
tester.assertComponent(“面板:需求”,ListView.class);
tester.assertComponent(“面板:需求:0”,ListItem.class);
测试仪资产标签(“面板:需求:0:lblreqs”,“1”);
tester.assertComponent(“面板:需求:1”,ListItem.class);
测试仪资产标签(“面板:需求:1:lblreqs”、“2”);
tester.assertComponent(“面板:需求:2”,ListItem.class);
测试仪资产标签(“面板:需求:2:lblreqs”、“3”);
tester.assertComponent(“面板:需求:3”,ListItem.class);
测试仪资产标签(“面板:需求:3:lblreqs”、“4”);
}
私有最终类MyPanel扩展了Panel{
私有MyPanel(字符串id){
超级(id);
}
公共无效初始化(){
列表视图需求;
最终连胜棒球lbb=新连胜棒球();
reqs=新列表视图(“reqs”,新列表模型(lbb.getRequisitos()){
受保护的void populateItem(列表项){
添加(新标签(“lblreqs”),(item.getModelObject());
}
};
增加(需求);
super.onInitialize();
}
}
职业棒球{
公共列表getRequisitos(){
字符串[]a={“1”、“2”、“3”、“4”};
返回数组。asList(a);
}
}
}

测试集:net.unbewaff.DemoTestCase
测试运行:1,失败:0,错误:0,跳过:0,经过的时间:0.032秒

您可以删除不重要的部分吗?您是指导入吗?将代码剥离为仅包含与您的问题直接相关的行。此外,请尝试仅用英语编写代码,很难将代码置于上下文中,因为我们不理解您的代码对语言的意义。现在已编辑。我将检查lbb.getRequisitos()得到了什么。如果不知道更多信息,我们无法帮助您。您能删除不重要的部分吗?您是指导入吗?请将代码剥离为仅包含与您的问题直接相关的行。此外,请尝试仅用英语编写代码,很难将代码置于上下文中,因为我们不理解您的代码对语言的意义。现在已编辑。我将检查lbb.getRequisitos()得到了什么。如果不知道更多信息,我们将无法帮助您。将此作为答案发布,因为它太渴望评论。我有2个错误,编辑页面将列表设置为另一个实体,因为代码错误。其次,标记隐藏了结果。我用了div,在其他元素后面用z索引,我用了一个表,现在没问题了。我把它作为一个答案发布,因为它太长了,需要一个注释。我有两个错误,编辑页面将列表设置为另一个实体,因为代码错误。第二,第