Auf Thema antworten

Ich versuche eine Liste von Resourcen mit Lazy zu autowiren. Dabei wird eine leere Liste autowired.

Mit dem gleichen Mechanismus wird eine Liste von String korrekt autowired und befüllt.  Hier der Code dazu.

Gibt es einen Grund weswegen die Resource Liste nicht befült wird? Ich habe es auch mit ArrayList probiert, aber erfolglos.  Vielen Dank


[CODE lang="java" title="Klasse A"]

@Component

public class A{


      @Lazy

      @Bean

      public List<String> stringtest()

      {

          final List<String> l = Arrays.asList(new String[] { "a", "b" });

          return l;

      }

    

    @Lazy

    @Bean

    public List<Resource> resourceslistinspringcontext()

    {

        final List<Resource> resourceListe = new ArrayList<>();

        final List<String> liste = Arrays.asList(new String[] { "a", "b" });


        for (final String pfad : liste)

        {

            resourceListe.add(new FileSystemResourceLoader().getResource(pfad.toString()));

        }

      

        return resourceListe;

    }



}

[/CODE]


[CODE lang="java" title="Klasse B"]



@Component

public class B{


// befüllt

      @Lazy

      @Autowired

      List<String> liste;


// leer

    @Lazy

    @Autowired

    ArrayList<Resource> resourceListe;


}

[/CODE]



Oben