9

エンタープライズアプリケーション開発のコースを受講しています。私はJSFを初めて使用します。JSFとNetbeansIDEを使用してGlassfish3.1を使用してアプリをデプロイしようとしています。

私が得るエラーは以下のとおりです。

Error occurred during deployment: Exception while preparing the app : Unable to load the EJB module. DeploymentContext does not contain any EJB. Check the archive to ensure correct packaging for F:\Seagate\docs backup\NetBeansProjects\ent-app-dev\Slamka_Project1\build\web. If you use EJB component annotations to define the EJB, and an ejb or web deployment descriptor is also used, please make sure that the deployment descriptor references a Java EE 5 or higher version schema, and that the metadata-complete attribute is not set to true, so the component annotations can be processed as expected. Please see server.log for more details.

以下は、私が作成したEJBへの参照です。

import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import javax.ejb.EJB;
@EJB

どんな助けでもいただければ幸いです。

編集:これはJavaWebアプリケーションです。

WARファイル構造ツリーを編集する

  • META-INF / MANIFEST.MF
  • WEB-INF/クラス
  • WEB-INF / lib / primefaces-2.1.1.jar
  • WEB-INF / web.xml
  • index.shtml

私のファイルには、xhtmlドキュメントにEJBタグがありません。以下にリストされているものがあります。

<html xmlns="http://www.w3.org/1999/xhtml" xmlns:h="http://java.sun.com/jsf/html" xmlns:c="http://java.sun.com/jsf/core">

4

3 に答える 3

6

web.xml web-app属性のバージョンを2.5以上に変更すると、この問題は解決しました。

web.xmlの更新された web-app 要素は、

<web-app xmlns="http://java.sun.com/xml/ns/javaee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.5"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
于 2012-12-04T21:45:30.457 に答える
1

つまり、Web アプリケーションがあります。これは ejb-jar ではなく、*.warアーカイブするためにパッケージ化する必要がある Web モジュールです。
構造は

  • *.war/META-INF/persistence.xml
  • *.war/META-INF/MANIFEST.MF
  • *.war/WEB-INF/sun-web.xml
  • *.war/WEB-INF/web.xml
  • *.war/WEB-INF/classes/ - パッケージ内のコンパイル済みクラス
  • *.war/WEB-INF/lib/ - ライブラリ
  • *.war/index.jsp - ホームページ

の例sun-web.xml

<!DOCTYPE sun-web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Application Server 9.0 Servlet 2.5//EN" "http://www.sun.com/software/appserver/dtds/sun-web-app_2_5-0.dtd">
<sun-web-app>
  <context-root>/app</context-root>
</sun-web-app>  

を使用している場合はMaven、使用できますmaven-war-plugin

于 2012-09-13T20:55:07.450 に答える
1

この問題は SQL ステートメント (1 と l [小文字の L]) のタイプミスであることがわかり、プロジェクトで「クリーン アンド ビルド」を実行する必要がありました。私の問題を解決するために尽力してくださった方々に感謝します。

于 2012-09-13T22:40:54.030 に答える