EJB3.1 проблема с classpath - PullRequest
       37

EJB3.1 проблема с classpath

0 голосов
/ 02 ноября 2011

У меня есть 2 POJO, один из которых является EJB, а другой - вспомогательным классом.

//EJB Bean class
    @Singleton
    @LocalBean
    @Startup
    public class EJBBean{
     @PostConstruct
        public void init(){
            HelperClass helper = new HelperClass();
            helper.init();
        }
    } 
//Helper class
public class HelperClass{
      private static Log LOG = LogFactory.getLog("HelperClass");
      private static Long currentTime = new Date().getTime();

     public void init(){
       //Some statements that use Log and do other Initialization
     }
}

При развертывании этого EJB-файла я получаю сообщение об ошибке

java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory

У меня есть commons-logging-1.1.1.jar в пути к классам;Кроме того, я настроил его для использования Log4J.Как автономное приложение без метаданных EJB, оно отлично работает.Мне не хватает конфигурации EJB?

Кстати, я довольно новичок в EJB.Я использую GlassFish 3.1, Eclipse Helios в качестве IDE и EJB3.1.

1 Ответ

0 голосов
/ 02 ноября 2011

Это может быть из-за того, что вы поместили commons-logging-1.1.1.jar в неправильный каталог, или из-за того, что ваш сервер уже предоставляет общесерверную библиотеку, которая состоит из классов журналирования.

Кстати, я помню много странного 'NoClassDefFoundError' из-за смешивания регистрации в общем, log4j и slf4j (особенно в несовпадающих версиях).

...