0

データベースからレコードをフェッチし、json 形式でデータを返す Eclipse で動的 Web プロジェクト (JAX-RS) を使用しています。

今、私はこのプロジェクトを 2 つに分割しようとしています。

1. CompDB  //Project stores database handlers classes

src
  database
    ComponentContext.java
    ComponentViewable.java //Interface
  database.uat
    ComponentUATView.java  //Implements ComponentViewable
  META-INF
    persistance.xml
WebContent
    WEB-INF
      beans.xml
       web.xml

jar ファイルを作成し、以下のようにプロジェクト 2 の WEB-INF/lib にコピーします。

2. CompRS //Project stores JAX-RS client classes
src
  compreport
    ComponentData.java
  META-INF
    persistance.xml
WebContent
    WEB-INF
             lib
                CompDB.jar
     beans.xml
             web.xml

glssfish 3.1 で CompRS を実行すると、以下のエラーが発生します

INFO: WEB0671: Loading application [CompRS] at [/CompRS] SEVERE: Exception while loading the app

INFO: file:/C:/Program Files/glassfish-3.1.2.2/glassfish/domains/domain1/eclipseApps/CompRS/WEB-       INF/lib/CompDB.jar_ci logout successful

SEVERE: Exception while loading the app : WELD-001408 Unsatisfied dependencies for type 
[ComponentViewable] with qualifiers [@ComponentContext] at injection point [[field] @Inject @ComponentContext compreport.ComponentData.componentdata]

ここにコードがあります

ComponentData.java

@Path("component")
@RequestScoped
public class ComponentData {
@Inject @ComponentContext ComponentViewable  componentdata;
@GET
@Path("latest")
@Produces("application/json")
    ....
}

ComponentContext.java

@Target({TYPE,METHOD,PARAMETER,FIELD})
@Retention(RUNTIME) @Documented @Qualifier
public @interface ComponentContext{}

複数のjarファイルを作成して統合するのは初めてです。これが正しい方法でない場合は、同じことを達成するように私を導いてください。

4

1 に答える 1