0

Mongo Java Client 2-11.2 で Morphia 0.102 を実行しています。

これはクライアント/サーバー アプリです。現時点では、サーバー側を GlassFish でローカルにテストしています。

Mongo と Morphia を使用して、クライアントでコードを実行しても問題ありません。次に、サーバー側で何らかのコードが呼び出されると、サーバー上で Morphia をインスタンス化します。

        mongoClient = new MongoClient("199.00.000.000", 27017);
        morphia = new Morphia(); //exception thrown

例外:

Caused by: java.lang.NoClassDefFoundError: com/mongodb/DBObject  
    at com.google.code.morphia.Morphia.<init>(Morphia.java:48)  
    at com.google.code.morphia.Morphia.<init>(Morphia.java:44)  

Morphia と MongoDriver のバージョンを変更しようと数時間を費やしましたが、結果はなく、手がかりもありません。

何か案が?

4

2 に答える 2

2

war ファイルに morphia jar を含めていますか? そのグラスフィッシュフォルダーに何かを追加することは、ほとんどの場合間違った答えです。

于 2013-08-21T19:13:41.100 に答える
0

そのため、GlassFish フォルダーに jar を追加すると、GlassFish を Netbeans からローカルで実行していたときにこの例外が解決されました。Java EE モジュールをサーバーにアップロードしたときに、問題が再発しました。
すべての種類のフォルダーに mongo および morphia jar を追加しても、何も解決しませんでした。それを解決したこと:
- Java EE モジュールを EAR に統合し、EAR をデプロイしました (それ以前は、EAR なしで Java EE モジュールのみをデプロイしていました - 確かに非常に悪い習慣ですが、知りませんでした)。

于 2013-09-15T08:25:16.813 に答える