DataTableコンポーネントでconvertDateTimeタグを使用しています。タイムゾーン属性にマネージドBeanプロパティを接続しました。この状況では、すべてのAjaxがManaged Beanの再作成を要求します。DataTableコンポーネントでconvertDateTimeタグを使用し、すべてのAjaxリクエストがマネージドBeanを再作成する
マネージドBeanスコープは、ビュースコープです。
<h:column>
<f:facet name="header">
<h:outputLabel value="Date"/>
</f:facet>
<h:outputText value="#{item.date}">
<f:convertDateTime timeZone="#{myBean.timezone}" locale="tr" pattern="dd.MM.yyyy"/>
</h:outputText>
</h:column>
@ManagedBean(name="myBean")
@ViewScoped
public class MyBean {
@PostConstruct
public void initBeanMethod(){
System.out.println("PostConstruct method is called...");
}
private TimeZone timezone = TimeZone.getDefault();
public TimeZone getTimezone() {
return timezone;
}
public void setTimezone(TimeZone timezone) {
this.timezone = timezone;
}
は、それぞれのAjaxリクエストの後に、次の出力を示しています。「PostConstructメソッドが呼び出された...」
あなたが要求ごとに豆の再作成についての考えを持っていますか?
注:私は私の悪い英語のために謝罪:)
Hi BalusCあなたの啓発のお返事ありがとうございます。私は既にcontextパラメータを使用していますが、これでは正確な結果が得られません。あなたの共有リンクは慎重に読む予定です。ありがとうございました... – hakdogan