Hey.,, Finally I have done it.. Actually datasourse was not going in subreport.. so i have changed the property of when no data to all sections,no data... then i have passed the collection variable where i have fetched the subreport records.. by using parameters.put("shape_data_all",allShape_Caliberation); then i have created a parameter in main report.. and changed its class to java.Util.Collection.. then in subreport property, connection type= Use a datasource expression Data Source Expression new net.sf.jasperreports.engine.data.JRBeanCollectionDataSource($P{shape_data_all}) Then added the fields in the subreport same as i am having the bean properties.. Thank you..