Đây là một ví dụ đơn giản cho một bean được quản lý như vậy.
Trước tiên hãy tạo một lớp Java. Tôi gọi nó là "Config". Nó đọc tài liệu đầu tiên trong khung nhìn "Config" và đặt vào thời điểm instantiation (= first call) các mục trong các trường java. Làm điều này bạn có thể tái chế các đối tượng domino sau khi đọc tất cả các mục và có các giá trị trong bộ nhớ sau đó.
package de.leonso;
import java.io.Serializable;
import lotus.domino.Database;
import lotus.domino.Document;
import lotus.domino.View;
import com.ibm.xsp.extlib.util.ExtLibUtil;
public class Config implements Serializable {
private static final long serialVersionUID = 1L;
private String applicationTitle;
// ... other private fields
public Config() throws NotesException {
Database db = ExtLibUtil.getCurrentSession().getCurrentDatabase();
View view = db.getView("Config");
Document doc = view.getFirstDocument();
applicationTitle = doc.getItemValueString("ApplicationTitle");
// ... read all other items and store them in private fields
doc.recycle();
view.recycle();
db.recycle();
}
public String getApplicationTitle() {
return applicationTitle;
}
// ... getters for other private fields
}
Tiếp theo xác định lớp Java này như một bean được quản lý trong file faces-config.xml:
<faces-config>
<managed-bean>
<managed-bean-name>config</managed-bean-name>
<managed-bean-class>de.leonso.Config</managed-bean-class>
<managed-bean-scope>application</managed-bean-scope>
</managed-bean>
</faces-config>
Bạn có thể sử dụng như là phạm vi "ứng dụng" (ví dụ mỗi máy chủ) hoặc "phiên" (ví dụ Mỗi người dùng).
Sau đó, bạn có thể sử dụng đậu config trong JavaScript:
#{javascript:var titel = config.applicationTitle; ...}
hoặc Expression Language:
#{config.applicationTitle}
Điều đó sẽ cung cấp cho bạn một điểm khởi đầu tốt để phát triển một phiên bản tiên tiến của một bean config.
Nguồn
2013-06-09 16:28:03
Câu trả lời này có vẻ thực sự tốt đối với tôi. Đối với một số thông tin thêm bây giờ có một số video trên notesjn9.com/XPages.tv trong này. Jeremy hodge đã giới thiệu 3 phần. Russ Maher có một số nội dung và tôi đã thực hiện một chương trình "Đậu Java". Tất cả đều hướng đến XPages. Tôi có một vài chương trình khác về chủ đề này sắp ra mắt. –