Spring JavaConfig, bean benutzerdefinierte Bereiche und Anmerkungen

Habe ich ein problem zu lösen:
1) unser Projekt mit Spring JavaConfig-Ansatz (also keine xml-Dateien)
2.) brauche ich zum erstellen von benutzerdefinierten Rahmen, beispielsweise in xml sieht wie folgt aus:

<bean class="org.springframework.beans.factory.config.CustomScopeConfigurer">
<property name="scopes">
    <map>
        <entry key="workflow">
            <bean
                class="com.amazonaws.services.simpleworkflow.flow.spring.WorkflowScope" />
        </entry>
    </map>
</property>

Habe ich es herausgefunden mit JavaConfig es sieht ungefähr so aus:

    @Bean
public CustomScopeConfigurer customScope () {
    CustomScopeConfigurer configurer = new CustomScopeConfigurer ();
    Map<String, Object> workflowScope = new HashMap<String, Object>();
    workflowScope.put("workflow", new WorkflowScope ());
    configurer.setScopes(workflowScope);

    return configurer;
}

Korrigiert mich wenn ich falsch mit meiner Annahme.

3) muss ich zum kommentieren meine Klasse etwas wie @Component (scope="workflow")
wieder xml-Konfiguration würde wie folgt Aussehen:

<bean id="activitiesClient" class="aws.flow.sample.MyActivitiesClientImpl" scope="workflow"/>

Also im Grunde die Frage - bin ich im Recht mit meiner Annahme auf die Verwendung von @ - Komponente (scope="workflow") oder es wird erwartet, dass in irgendeiner anderen Art und Weise?

Dank

  • Ich habe gerade die Warnung @Bean method getWorkflowScope is non-static and returns an object assignable to Spring's BeanFactoryPostProcessor interface. This will result in a failure to process annotations such as @Autowired, @Resource and @PostConstruct within the method's declaring @Configuration class. Add the 'static' modifier to this method to avoid these container lifecycle issues. Nur zur info, deine Methode sollte Lesen @Bean public static CustomScopeConfigurer
InformationsquelleAutor user2174470 | 2013-03-15
Schreibe einen Kommentar