私はRESTfulなサービスを使ってプロジェクトを進めています。私はWeb層、ビジネス層などのモジュールを持っています。私は基本的なAPI層(ジャージーを使用して)を追加し、私は要求を得るための基本的な応答を取得します。今私はビジネス層にそれを接続する必要があります。私はグーグルではありましたが、私のプロジェクトに各ソリューションを実装する方法がわかりません。ビジネスレイヤーからのジャージーによる基本依存性注入
これは旅行のための私のリソースクラスである:
@Path("trip")
public class TripResource {
@Context
private UriInfo context;
@Inject
private AdminService adminService;
public TripResource() {
}
@GET
@Produces("text/plain")
public List<TripDTO> getText() {
return adminService.listAllTrips();
}
}
、これは私は、リソースクラスの追加のために使用します。
@javax.ws.rs.ApplicationPath("api")
public class ApplicationConfig extends Application {
@Override
public Set<Class<?>> getClasses() {
Set<Class<?>> resources = new java.util.HashSet<Class<?>>();
addRestResourceClasses(resources);
return resources;
}
private void addRestResourceClasses(Set<Class<?>> resources) {
resources.add(cz.infi.javatravelagency.ServiceResource.class);
resources.add(cz.infi.javatravelagency.TripResource.class);
}
}
私のpom.xml:
<name>JavaTravelAgency - Api module</name>
<dependencies>
<dependency>
<groupId>cz.infi</groupId>
<artifactId>javatravelagency-business</artifactId>
<version>1.0</version>
</dependency>
<dependency>
<groupId>org.glassfish.jersey.containers</groupId>
<artifactId>jersey-container-servlet</artifactId>
<version>2.4.1</version>
</dependency>
<dependency>
<groupId>org.glassfish.jersey.media</groupId>
<artifactId>jersey-media-moxy</artifactId>
<version>2.4.1</version>
</dependency>
<dependency>
<groupId>javax</groupId>
<artifactId>javaee-web-api</artifactId>
<version>7.0</version>
<type>jar</type>
</dependency>
</dependencies>
<build>
<plugins>
<!-- Java language version -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>6</source>
<target>6</target>
</configuration>
</plugin>
<!-- Servlet 3.0 without web.xml -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.1.1</version>
<configuration>
<failOnMissingWebXml>false</failOnMissingWebXml>
</configuration>
</plugin>
</plugins>
</build>
私がしようとしたがanswer in this linkに従ってください。そして、私はちょうど追加した:
public class MyApplicationBinder extends AbstractBinder {
@Override
protected void configure() {
bind(AdminServiceImpl.class).to(AdminService.class);
}
}
今私はつまらない。
このバインダーはどのように設定クラスに追加できますか? 他のテクノロジーを使用しないと最も簡単に実装できますか?