Ciao a tutti. Sto imparando a usare Spring. Per ora sto provando lo spring "semplice" non Mvc. Fino ad ora ho provato esempi con il file Beans.xml, adesso sto iniziando con le annotazioni.
E' un programma molto semplice, eppure non mi funziona. Mi dà un errore. Metto qua il Programma. Spero nel vostro aiuto. Grazie
MAIN:
package marco.myexample.a_config;
import java.util.Scanner;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
public class Main {
public static void main(String [] args)
{
AnnotationConfigApplicationContext context= new AnnotationConfigApplicationContext();
context.register(HelloWorldConfig.class);
HelloWorld obj=(HelloWorld) context.getBean(HelloWorld.class);
System.out.println("INSERISCI LA PAROLA");
Scanner input=new Scanner(System.in);
String message=input.nextLine();
obj.setMessage(message);
obj.getMessage();
}
}
HELLOWORLD
package marco.myexample.a_config;
/* Classe HelloWorld, gli oggetti istanza di tale classe verranno registrati
* come bean nel contesto di Spring grazie alla classe HelloWorldConfig
*/
public class HelloWorld {
private String message;
public void getMessage() {
System.out.println("Il nome è: "+message);
}
public void setMessage(String message) {
this.message = message;
}
}
HelloWorldConfig
package marco.myexample.a_config;
import org.springframework.context.annotation.*;
/* La classe viene usata dal container di Spring come una sorgente di
* definizione di bean */
@Configuration
public class HelloWorldConfig {
/* Il metodo ritorna un oggetto che deve essere registrato come un
* bean nel contesto di Spring */
@Bean
public HelloWorld helloWorld()
{
return new HelloWorld();
}
}
L'errore che mi da è
Exception in thread "main" org.springframework.beans.factory.NoSuchBeanDefinitionException: No unique bean of type [marco.myexample.a_config.HelloWorld] is defined: expected single bean but found 0:
at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBean(DefaultListableBeanFactory.java:271)
at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1101)
at marco.myexample.a_config.Main.main(Main.java:17)
Grazie mille per l'aiuto