0

我的要求是这样的,

当我选择诸如考试之类的模板时,考试页面将生成具有考试字段(已尊重POJO的),并且选择游戏页面时,一个页面将与其字段生成,

我怎样才能实现这种类型的要求。主要目标是,bean 无需担心选择哪个模板。它是完全独立的。

4

1 回答 1

0

我没有得到整个问题,但我会尽力提供帮助。
您可以Template Method为您的 bean 类使用设计模式,并且在您的 JSF 页面中,您可以调用抽象类方法。像这样的东西:

public abstract class AbstractBean {

    public void templateMethod(){
         //Same code for all children;
         foo();
         //Same code for all children;
    }

    protected abstract void foo();
}

public class Bean extends AbstractBean {

    protected void foo(){
        //Your specific code here;
    }
}

然后,在您的 JSF 页面中,您可以调用#{abstractBean.templateMethod()}. 但我不确定如何将子类注入#{abstractBean}变量。

虽然,有一个 Facelet 标签可以通过另一种方式帮助您:ui:param. 看看这个:http ://www.oracle.com/technetwork/articles/java/facelets-454361.html 。与前面的代码无关,这是另一种解决方案。我自己已经用过了。ui:define您可以ui:param在模板页面(然后你打电话#{definedVariable.someMethod()}我认为这些是标签,我不确定。

希望我能帮上忙。

于 2013-02-22T11:18:23.537 回答