2011-12-08 14 views
0

Hibernateを使用したSpring MVCベースのWebアプリケーションがあります。 、DAO層使用して - - いくつかの抽象Javaドメイン用のファイル Spring-HibernateベースのWebアプリケーションからJARを作成する

  • COM/MyProjectと/ DAO/personsmodel/<オブジェクトが含まれてい

    • SRC
      • COM/MyProjectと/ abstractmodels/<:以下のディレクトリ構造でありますデータを取得するために休止状態
      • COM/MyProjectと/ DAO/anothermodel/
      • COM/MyProjectと/ドメイン/ personsmodel/< - Hibernateのマッピングのためのドメイン/のBusinessObjectsとHBMファイル
      • コム/ MyProjectと/ドメイン/ anothermodel/
      • COM/MyProjectと/サービス/ personsmodelservice < - サービス層会談DAO層へ
      • COM/MyProjectと/サービス/ anothermodelservice
      • COM/MyProjectと/コントローラ/ < - サーブレット、サービス層とWebプレゼンテーションのためのドメインオブジェクト(JSPファイル)
    • ウェブルート
      • WEB-INF
          を使用して
        • web.xml < - webアプリケーションとspringフレームワークを設定して、以下のxmlを使用してレイヤーを設定します。
        • 設定
          • services.xmlの<は - それはその実装とサービス・インターフェース接着剤である、サービスレイヤを設定し、DAO豆
          • hibernate.xml <が注入 - マッピング用のHBMファイルをhibernateを利用し、DAOを定義します豆
          • servlets.xml < - JSPファイル
        • - コントローラーおよびサービスのための豆豆は、それ
        • views.xml <に注入され、

    今私はサービス、DAO、ドメイン、およびAbstractModelsパッケージを使用してライブラリ(jarファイル)を作成する必要があります。基本的には、このjarファイルとデータベースを与えられたときに、自分自身のサーブレット/ユーザーインターフェイスを作成したり、冬眠、サービス、およびドメインオブジェクトを使用してWebサービスを作成することができます。サーブレットアウトで

    - com/myproject/abstractmodels/ 
    - com/myproject/dao/personsmodel/ 
    - com/myproject/dao/anothermodel/ 
    - com/myproject/domain/personsmodel/ 
    - com/myproject/domain/anothermodel/ 
    - com/myproject/service/personsmodelservice 
    - com/myproject/service/anothermodelservice 
    

    とWebアプリケーションのパスを構築するためにこれを追加しました:

    は、私は単純にディレクトリを含むjarファイルを作ってきました。プロジェクトがコンパイルされます。つまり、サーブレットはサービスBeanとドメインオブジェクトを検出できますが、実行されません。 services.xmlで定義されたBeanを作成できませんでした。私はjarファイルをチェックし、パッケージ構造が正しく、クラスファイルを含んでいます。しかし、実行すると、それでもこのエラーが発生します:

    Loading XML bean definitions from ServletContext resource [/WEB-INF/config/servlet.xml] 
    Loading XML bean definitions from ServletContext resource [/WEB-INF/config/services.xml] 
    Context initialization failed 
    org.springframework.beans.factory.BeanDefinitionStoreException: Unexpected exception parsing XML document from ServletContext resource [/WEB-INF/config/services.xml]; nested exception is org.springframework.beans.FatalBeanException: Unable to create DWR bean creator for 'com.myproject.abstractmodels.ModelConstants#0'.; nested exception is java.lang.ClassNotFoundException: com.myproject.abstractmodels.ModelConstants 
    

    この問題を解決するにはどうすればjarファイルを作成できますか? WEB-INFディレクトリをjarファイルに置く必要がありますか?いくつかの特別なマニフェスト設定が必要ですか?

  • 答えて

    0

    jarをプロジェクトのビルドパスに入れてはいけません。これは、WEB-INF/libフォルダに置かれなければならない、とEclipseは

    • は自動的
    • が、それはWebアプリケーションの中になり、Webアプリケーションの一部として、このjarファイルを展開ビルド・パスで、このjarファイルを配置しますサーブレットの仕様に従って、クラスパス。

    プロジェクトビルドパスにjarを入れると、プロジェクトはコンパイルされますが、jarはデプロイされたWebアプリケーションの一部にはなりません。

    関連する問題