Subrelatorio no ireport direto do java

vou postar aqui um exemplo

tenho 2 entidades

public class entidade {
private String nomedomeio;
private String nomedepois;
public String getNomedomeio() {
	return nomedomeio;
}
public void setNomedomeio(String nomedomeio) {
	this.nomedomeio = nomedomeio;
}
public String getNomedepois() {
	return nomedepois;
}
public void setNomedepois(String nomedepois) {
	this.nomedepois = nomedepois;
}


}
import java.util.List;


public class entidadenome {

	private String nome;
	List<entidade> nomes;
	
	public String getNome() {
		return nome;
	}
	public void setNome(String nome) {
		this.nome = nome;
	}
	public List<entidade> getNomes() {
		return nomes;
	}
	public void setNomes(List<entidade> nomes) {
		this.nomes = nomes;
	}
	
	
	
}

como podem ver a classe entidade nome tem um list de entidadenome .

por exemplo na main eu crio uma lista de entidadenome .

então essa lista vai ter uma sublista por causa da List<entidade> nomes; que se encontra na classe entidadenome .

como faço para listar no ireport ?

tipo assim:

Nome: ----
vem a sub list

Nome do meio:----
Nome Depois:----

ai volta novamente
Nome: ----
vem a sub list

Nome do meio: ----
Nome Depois: —