JBOSS EAP 7.1 : NoSuchMethodError: org.jboss.as.ejb3.logging.EjbLogger.tracef(Ljava/lang/String;I)V
JBOSS EAP 7.1 : NoSuchMethodError: org.jboss.as.ejb3.logging.EjbLogger.tracef(Ljava/lang/String;I)V
所以我正在使用位于实现 org.jboss.logging.BasicLogger 接口的 EjbComponent class 下的 getRollBackOnly 方法:
public boolean getRollbackOnly() throws IllegalStateException {
if (isBeanManagedTransaction())
throw EjbLogger.ROOT_LOGGER.failToCallgetRollbackOnly();
try {
TransactionManager tm = getTransactionManager();
if (tm.getTransaction() == null)
throw EjbLogger.ROOT_LOGGER.failToCallgetRollbackOnlyOnNoneTransaction();
int status = tm.getStatus();
EjbLogger.ROOT_LOGGER.tracef("Current transaction status is %d", status); //this ligne is causing the error
switch (status) {
case 3:
case 4:
throw EjbLogger.ROOT_LOGGER.failToCallgetRollbackOnlyAfterTxcompleted();
case 1:
case 9:
return true;
}
return false;
} catch (SystemException se) {
EjbLogger.ROOT_LOGGER.getTxManagerStatusFailed((Throwable)se);
return true;
}
EJBLogger 接口目标行:
public static final EjbLogger ROOT_LOGGER = (EjbLogger)Logger.getMessageLogger(EjbLogger.class, "org.jboss.as.ejb3");
我遇到的例外情况:
Caused by: java.lang.NoSuchMethodError: org.jboss.as.ejb3.logging.EjbLogger.tracef(Ljava/lang/String;I)V at org.jboss.as.ejb3.component.EJBComponent.getRollbackOnly(EJBComponent.java:358) at org.jboss.as.ejb3.component.session.SessionBeanComponent.getRollbackOnly(SessionBeanComponent.java:100) at org.jboss.as.ejb3.context.EJBContextImpl.getRollbackOnly(EJBContextImpl.java:90) at org.jboss.as.ejb3.context.SessionContextImpl.getRollbackOnly(SessionContextImpl.java:133)
有谁知道我为什么会收到此错误?
ps:i 已经 jboss-logging jar
谢谢。
谁得到了异常,我已经使用最新版本的 jboss-logging 库解决了这个问题(jboss-logging-3.4.1.Final)
所以我正在使用位于实现 org.jboss.logging.BasicLogger 接口的 EjbComponent class 下的 getRollBackOnly 方法:
public boolean getRollbackOnly() throws IllegalStateException {
if (isBeanManagedTransaction())
throw EjbLogger.ROOT_LOGGER.failToCallgetRollbackOnly();
try {
TransactionManager tm = getTransactionManager();
if (tm.getTransaction() == null)
throw EjbLogger.ROOT_LOGGER.failToCallgetRollbackOnlyOnNoneTransaction();
int status = tm.getStatus();
EjbLogger.ROOT_LOGGER.tracef("Current transaction status is %d", status); //this ligne is causing the error
switch (status) {
case 3:
case 4:
throw EjbLogger.ROOT_LOGGER.failToCallgetRollbackOnlyAfterTxcompleted();
case 1:
case 9:
return true;
}
return false;
} catch (SystemException se) {
EjbLogger.ROOT_LOGGER.getTxManagerStatusFailed((Throwable)se);
return true;
}
EJBLogger 接口目标行:
public static final EjbLogger ROOT_LOGGER = (EjbLogger)Logger.getMessageLogger(EjbLogger.class, "org.jboss.as.ejb3");
我遇到的例外情况:
Caused by: java.lang.NoSuchMethodError: org.jboss.as.ejb3.logging.EjbLogger.tracef(Ljava/lang/String;I)V at org.jboss.as.ejb3.component.EJBComponent.getRollbackOnly(EJBComponent.java:358) at org.jboss.as.ejb3.component.session.SessionBeanComponent.getRollbackOnly(SessionBeanComponent.java:100) at org.jboss.as.ejb3.context.EJBContextImpl.getRollbackOnly(EJBContextImpl.java:90) at org.jboss.as.ejb3.context.SessionContextImpl.getRollbackOnly(SessionContextImpl.java:133)
有谁知道我为什么会收到此错误? ps:i 已经 jboss-logging jar
谢谢。
谁得到了异常,我已经使用最新版本的 jboss-logging 库解决了这个问题(jboss-logging-3.4.1.Final)