24.2.2. Seam.Component

The Seam.Component JavaScript object provides a number of client-side methods for working with your Seam components. The two main methods, newInstance() and getInstance() are documented more thoroughly in the sections following. The main difference between them is that newInstance() will always create a new instance of a component type, and getInstance() will return a singleton instance.

24.2.2.1. Seam.Component.newInstance()

Use this method to create a new instance of an entity or JavaBean component. The object returned will have the same getter/setter methods as its server-side counterpart. You can also access its fields directly. For example:
@Name("customer")
@Entity
public class Customer implements Serializable
{
    private Integer customerId;
    private String firstName;
    private String lastName;
    
    @Column public Integer getCustomerId() { 
        return customerId; 
    }
    
    public void setCustomerId(Integer customerId} { 
        this.customerId = customerId; 
    }
    
    @Column public String getFirstName() { 
        return firstName; 
    }
    
    public void setFirstName(String firstName) {
        this.firstName = firstName; 
    }
    
    @Column public String getLastName() {
        return lastName;
    }
    
    public void setLastName(String lastName) {
        this.lastName = lastName;
    }
}
To create a client-side Customer you would write the following code:
var customer = Seam.Component.newInstance("customer");
From here, you can set the fields of the customer object.
customer.setFirstName("John"); // Or you can set the fields directly 
// customer.lastName = "Smith";