2016-08-18 21 views
0

Ich habe die folgende Klasse, aber ich kann meine Liste nicht füllen zu füllen. Ich bekomme keine Fehler oder sogar Nullzeigerausnahmen. Es läuft einfach durch und gibt mir alle meine Daten außer meiner Liste. Könnte mir jemand helfen zu verstehen, was ich falsch gemacht habe?Wie füge ich meine Liste zu meiner Klasse hinzu?

import java.util.List; 
 

 
public class SSRSReports { 
 

 
    public static class Report { 
 

 
    private String reportName; 
 
    private String lastRunTime; 
 
    private String lastStatus; 
 
    private String deliveryExt; 
 
    private String path; 
 
    private String subscriptionId; 
 
    private String jobId; 
 
    private List <ReportSchedule> schedule; 
 

 
    public Report(String reportName, String lastRunTime, String lastStatus, String deliveryExt, String path, String subscriptionId, String jobId, List <ReportSchedule> schedule) { 
 
     this.setReportName(reportName); 
 
     this.setLastRunTime(lastRunTime); 
 
     this.setLastStatus(lastStatus); 
 
     this.setDeliveryExt(deliveryExt); 
 
     this.setPath(path); 
 
     this.setSubscriptionId(subscriptionId); 
 
     this.setJobId(jobId); 
 
     this.setSchedule(schedule); 
 
    } 
 

 
    //Getters and Setters 
 
    public List <ReportSchedule> getSchedule() { 
 
     return schedule; 
 
    } 
 

 
    public void setSchedule(List <ReportSchedule> schedule) { 
 
     this.schedule = schedule; 
 
     } 
 
     //The rest of Getters and Setters 
 

 
    } 
 

 
    public static class ReportSchedule { 
 

 
    private String location; 
 
    private String status; 
 
    private String path; 
 
    private String fileName; 
 
    private String format; 
 
    private String writeMode; 
 
    private String site; 
 

 
    public ReportSchedule(String location, String status, String path, String fileName, String format, String writeMode, String site) { 
 

 
     this.setLocation(location); 
 
     this.setStatus(status); 
 
     this.setPath(path); 
 
     this.setFileName(fileName); 
 
     this.setFormat(format); 
 
     this.setWriteMode(writeMode); 
 
     this.setSite(site); 
 
    } 
 

 
    //Getters and Setters 
 

 
    } 
 

 

 

 
}

Hier sind die Objekte und die Methoden, die ich sie zu füllen verwenden.

List <Report> scheduledReports = new ArrayList <Report>(); 
 
List <ReportSchedule> reportSchedule = new ArrayList <ReportSchedule>(); 
 

 
//Do stuff to get data 
 

 
reportSchedule.add(new ReportSchedule(location, status, subPath, fileName, format, writeMode, site)); 
 

 
scheduledReports.add(new Report(reportName, lastRunTime, lastStatus, deliveryExt, path, subscriptionId, jobId, reportSchedule));

Dank!

+0

Wo versuchen Sie tatsächlich Ihre Liste zu füllen? Und wie verifizierst du seine Abwesenheit? – Marvin

+1

Ich glaube, du Zeitplan Variable zu setzen vergessen, , nachdem Sie Ihre Liste zu füllen: 'schedule = scheduleReports;' oder wenn seine außerhalb dieser Klasse: 'setSchedule (scheduledReports)' – msumera

+0

Unrelated, aber eine Liste der Dinge, sollte benannt werden als Plural, nicht als Singular. (Es sei denn, du nennst es singularThingList, was mir persönlich egal ist.) –

Antwort

0

Ich konnte es bekommen. Ich habe vergessen, dass eine andere Ergebnismenge referenziert wurde, die verhindert hat, dass Daten in die Liste gelangen, aber ich musste auch tun, was Msumera vorgeschlagen hat. Ich musste das Objekt einstellen.

Report sch = new Report(jobId, jobId, jobId, jobId, jobId, jobId, jobId, reportSchedule); 
 

 
scheduledReports.add(new Report(reportName, lastRunTime, lastStatus, deliveryExt, path, subscriptionId, jobId, sch.setSchedule(reportSchedule)));

Verwandte Themen