Hallo!
Im Detail bin ich gerade dabei ein Projekt mit
-) Maven
-) JSF 2.0
-) Spring 3.0
-) Tomcat 6.0
aufzusetzen.
Maven und JSF 2.0 klappt mittlerweile jedoch schaffe ich es gerade nicht dass die Dependency Injection funktioniert mit Annotationen.
spring.config.xml (applicationContext.xml):
CustomerService.java
Customer (fundiert zu Testzwecken als Controller in der Hoffnung dass DI funktioniert = Fehlanzeige):
pom.xml - Dependencies
Im Detail bin ich gerade dabei ein Projekt mit
-) Maven
-) JSF 2.0
-) Spring 3.0
-) Tomcat 6.0
aufzusetzen.
Maven und JSF 2.0 klappt mittlerweile jedoch schaffe ich es gerade nicht dass die Dependency Injection funktioniert mit Annotationen.
spring.config.xml (applicationContext.xml):
Java:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans
[url]http://www.springframework.org/schema/beans/spring-beans-3.0.xsd[/url]
[url=http://www.springframework.org/schema/context]Index of /schema/context[/url]
http://www.springframework.org/schema/context/spring-context-3.0.xsd">
<!-- Scan classpath for Spring components starting at base-package. Automatically
inludes: - AutowiredAnnotationBeanPostProcessor - CommonAnnotationBeanPostProcessor -->
<context:component-scan base-package="at.mpf.mybudget" />
<context:annotation-config />
</beans>
CustomerService.java
Java:
@Service
public class CustomerService {
public String test() {
return "ruf mich an!";
}
}
Customer (fundiert zu Testzwecken als Controller in der Hoffnung dass DI funktioniert = Fehlanzeige):
Java:
@ManagedBean
@SessionScoped
@Controller
public class Customer {
private String firstName;
private String lastName;
private String test;
@Autowired // ist null..
private CustomerService customerService;
public String getTest() {
return this.customerService.test();
}
public void setCustomerService(CustomerService customerService) {
this.customerService = customerService;
}
public CustomerService getCustomerService() {
return customerService;
}
}
pom.xml - Dependencies
Java:
<properties>
<myfaces.version>2.0.2</myfaces.version>
<spring.version>3.0.4.RELEASE</spring.version>
</properties>
<!-- Project dependencies -->
<dependencies>
<dependency>
<groupId>org.apache.myfaces.core</groupId>
<artifactId>myfaces-api</artifactId>
<version>${myfaces.version}</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.apache.myfaces.core</groupId>
<artifactId>myfaces-impl</artifactId>
<version>${myfaces.version}</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.0</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.14</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>1.1.1</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
<version>4.0.2.GA</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.4.2</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.4.2</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>${spring.version}</version>
</dependency>
</dependencies>