Я хотел использовать @PostConstruct
для инициализации bean-компонента в своем веб-приложении, но не могу заставить его работать.
Я воссоздал проблему в новом проекте, и она все равно не будет работать.
Я пропустил что-то очевидное здесь? Насколько я могу судить, мой метод init()
соответствует всем требованиям, перечисленным в справочнике по API @PostConstruct
.
MyBean.java
:
@ManagedBean
@RequestScoped
public class MyBean {
@ManagedProperty(value="15")
private int number = 10;
@PostConstruct
public void init(){
number = 20;
}
public int getNumber() {
return number;
}
public void setNumber(int number) {
this.number = number;
}
}
number.xhtml
:
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html">
<h:head>
<title>Simple JSF Facelets page</title>
</h:head>
<h:body>
Number = #{myBean.number}
</h:body>
</html>
Я ожидал Number = 20
, но получил Number = 15
.
init()
, чтобы узнать, вызывается ли он. - person unwichtich   schedule 24.01.2014