Как получить доступ к классу неуправляемых компонентов на странице JSF? - PullRequest
1 голос
/ 30 марта 2010

Я использую Facelets. У меня есть один класс:

public class foo{
    public static String foofookoo() {
        return "tookoofoopoo";
    }
}

Как мне получить доступ к этому на моей странице JSF, потому что это простой POJO, а не управляемый бин?

1 Ответ

4 голосов
/ 30 марта 2010

Предполагая, что это действительно POJO и что ваш пример кода просто плох; единственный способ получить к нему доступ - это сделать его свойством существующего управляемого компонента:

@ManagedBean
public class Bean {
    private Pojo pojo;

    public Bean() {
        pojo = new Pojo(); // Create/load it somehow.
    }

    public Pojo getPojo() {
        return pojo;
    }
}

Затем на странице JSF, связанной с управляемым компонентом, просто выполните:

<h:outputText value="#{bean.pojo.property}" />

, что примерно соответствует pageContext.findAttribute("bean").getPojo().getProperty().

Но, с другой стороны, если это действительно служебный класс со статическими не получающими методами, то лучше всего заключить его в функцию EL. Вы можете найти пример, связанный с Facelets, в этом ответе .

...