JPA....Duvida no uso CascadeType e FetchType?

uma duvida no objeto abaixo quando coloquei no atributo

as anotações abaixo funcionou beleza

cascade =javax.persistence.CascadeType.ALL,fetch=FetchType.EAGER)

mas quando coloquei no atributo documentos parou de rodar minha duvida como utilizar

as anotações CascadeType e FetchType ???
se alguém puder me ajudar agradeceria… abs


public class Usuario {
	@Id
	@GeneratedValue
	@Column(name = "ID")
	/** Identificador único */
	private Long id;
	@OneToMany(mappedBy = "user",cascade =javax.persistence.CascadeType.ALL,fetch=FetchType.EAGER)
      private List<Marca> marcas = new ArrayList<Marca>();


	@OneToMany(mappedBy = "user",cascade =javax.persistence.CascadeType.AL,fetch=FetchType.EAGER)
	private List<Documento> documentos = new ArrayList<Documento>();

está rodando assim e funcionando mas está certo ???


public class Usuario {
	@Id
	@GeneratedValue
	@Column(name = "ID")
	/** Identificador único */
	private Long id;
	@OneToMany(mappedBy = "user",cascade =javax.persistence.CascadeType.ALL,fetch=FetchType.EAGER)
      private List<Marca> marcas = new ArrayList<Marca>();


	@OneToMany(mappedBy = "user",cascade =javax.persistence.CascadeType.AL)
	private List<Documento> documentos = new ArrayList<Documento>();