По моему опыту, я использую, как показано ниже.
Просто создайте пустой объект Laptop
в методе @Postconstract
для инициализации состояния.
ПРИМЕЧАНИЕ: создать конструктор по умолчанию в классе Laptop. Ваш бин
@ManagedBean( name = "laptopBean" )
@RequestScoped
public class LaptopBean {
private Laptop laptop;
private List<Laptop> laptops;
//getter and setter
@PostConstruct
public void init() {
this.Laptop = new Laptop(); /// NOTE : create default constructor in Laptop class.
this.laptops = new ArrayList( );
}
public void addToList() {
laptops.add(laptop);
}
}
на вашей странице, вы можете указать созданный объект ноутбука, как показано ниже
....
<h:inputText id="name" value="#{laptopBean.laptop.name}"></h:inputText>
<br/>
<h:outputLabel>Quantity:</h:outputLabel>
<h:inputText id="quantity" value="#{laptopBean.laptop.quantity}"></h:inputText>
<br/>
<h:outputLabel>Price:</h:outputLabel>
<h:inputText id="price" value="#{laptopBean.laptop.price}"></h:inputText>
...
В моей системе (Debian lenny) в/usr/lib/python2.5/mimetypes.py в списке knownfiles
можно предоставить собственные файлы для init()
функция.
mimetypes модуль использует mime.types файлы, поскольку они распространены в системах Linux/Unix. Если Вы посмотрите в mimetypes.knownfiles, то Вы найдете список файлов, к которым Python пытается получить доступ для загрузки данных. Можно также указать собственный файл для добавления новых типов путем добавления его к тому списку.