Componentes do Primefaces

Amigos,

Estou começando a trabalhar com primefaces e estou com algumas dúvidas…
Estou usando o componente “http://www.primefaces.org/showcase/ui/schedule.jsf”, porém, tenho dúvidas de como implementa-lo.
No site do Primefaces há código para colocar no arquivo .xhml e um código java.

Minha dúvida é se eu tenho que colocar esse código Java na minha aplicação ou esse código é interno do componente? Se for interno, como integrar o componente com as minhas classes de negócio? Eu criei uma classe Agendamentos com todos os atributos desse calendário e queria que ela recebesse os dados do formulário e gravasse no banco. Esse meu raciocínio está correto?

Obrigado.

Vinny, o código java não é interno do componente. Esse código deve ser declarado no managed bean (controller). Os valores preenchidos na tela são automaticamente preenchidos no managed bean, através dos métodos get/set.
Se você criou uma classe com os atributos do calendário, essa classe pode ser seu managed bean.

Exemplo:
No calendário tem um campo dataInicial. No seu managed bean, que receberá as requisições dessa página, você deve ter um campo Date com os métodos get/set.

página xhtml

<p:inputMask id="dataInicial" mask="99/99/9999"  value="#{seuManagedBean.dataInicial}" >  
<f:convertDateTime pattern="dd/MM/yyyy" />  
</p:inputMask>

Com os dados da tela preenchidos no managed bean você grava no banco.

Meu MB é o seguinte…

@ManagedBean
public class AgendamentoBean {

	private Agendamento agendamento;

	public void cadastrar(){
		DAO<Agendamento> dao = new DAO<Agendamento>(Agendamento.class);
		dao.adiciona(this.agendamento);
	}
	
	public void setAgendamento(Agendamento agendamento) {
		this.agendamento = agendamento;
	}

	public Agendamento getAgendamento() {
		return agendamento;
	}

}

… e tenho uma classe Agendamento.

@Entity
public class Agendamento {

	@Id @GeneratedValue
	private Long id;
	
	private String descricao;
	
	private Date dataInicio;
	
	private Date dataFim;
	
	private Boolean diaInteiro;
	

	
	
	
	
	/*
	 * Getters and Setters
	 */
	
	public String getDescricao() {
		return descricao;
	}

	public void setDescricao(String descricao) {
		this.descricao = descricao;
	}

	public Date getDataInicio() {
		return dataInicio;
	}

	public void setDataInicio(Date dataInicio) {
		this.dataInicio = dataInicio;
	}

	public Date getDataFim() {
		return dataFim;
	}

	public void setDataFim(Date dataFim) {
		this.dataFim = dataFim;
	}

	public Boolean getDiaInteiro() {
		return diaInteiro;
	}

	public void setDiaInteiro(Boolean diaInteiro) {
		this.diaInteiro = diaInteiro;
	}

	public void setId(Long id) {
		this.id = id;
	}

	public Long getId() {
		return id;
	}
	
	
	
}

O Raciocinio está correto? Na propriedade descricao do componente, eu coloquei #{agendamentoBean.agendamento.descricao}, mas n funcionou! Estou fazendo algo errado?