Twitterに接続するWebアプリケーションを作ろうとしています。公開タイムライン twitter から情報を取得しようとしており、twitter4j ライブラリを使用しています。
情報を取得するためにJavaコードを実行すると、問題なく動作します。ただし、メソッドをjspに呼び出すと、これが表示されます。
SEVERE: Exception while loading the app
org.glassfish.deployment.common.DeploymentException: java.lang.NoClassDefFoundError: Lorg/apache/log/Logger;
at org.glassfish.weld.WeldDeployer.event(WeldDeployer.java:167)
at org.glassfish.kernel.event.EventsImpl.send(EventsImpl.java:125)
at org.glassfish.internal.data.ApplicationInfo.load(ApplicationInfo.java:224)
at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:338)
at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:183)
...
なぜこのエラーが発生するのですか?グーグルで調べていますが、正しい解決策が見つからないようです:(。プロジェクトにエラーはありません。
twitter4jが追加される前に私がしたこと: - twitter4jライブラリをWebアプリケーションに追加する - >エラーにはロガーが必要で、ロガーライブラリを追加します - その後、org.apache.avalonに関するエラーがあり、ライブラリを追加するとこのメッセージが表示されます.
サーバー: グラスフィッシュ V3 IDE: NETBEANS 6.9.1 Java EE 6
ありがとう:D
andyb answer の org.apache.log.logger が既に含まれていますが、別のエラーが発生します
SEVERE: Exception while loading the app
org.glassfish.deployment.common.DeploymentException: java.lang.NoClassDefFoundError: com/sun/jdmk/comm/CommunicatorServer
at org.glassfish.weld.WeldDeployer.event(WeldDeployer.java:167)
at org.glassfish.kernel.event.EventsImpl.send(EventsImpl.java:125)
at org.glassfish.internal.data.ApplicationInfo.load(ApplicationInfo.java:224)
at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:338)
at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:183)
at org.glassfish.deployment.admin.DeployCommand.execute(DeployCommand.java:272)
at com.sun.enterprise.v3.admin.CommandRunnerImpl$1.execute(CommandRunnerImpl.java:305)
私はすでにこのjarからorg.apache.log.loggerを追加しましたhttp://www.findjar.com/jar/logkit/logkit/2.0/logkit-2.0.jar.html
それは正しいものですか?
jar を追加するとさらにエラーが発生します。実際、twitter4j を Glassfish v3 に追加する正しいエラーは何ですか? andyb が提供した POM.xml を追加する必要がありますか?