Java 在Wildfly 10域模式下,SessionContext为空

Java 在Wildfly 10域模式下,SessionContext为空,java,ejb,wildfly,ejb-3.0,wildfly-10,Java,Ejb,Wildfly,Ejb 3.0,Wildfly 10,在Wildfly 10独立模式下,我使用下面的代码片段获取SessionContext对象 InitialContext context = new InitialContext(); UserTransaction userTrans = null; userTrans = (UserTransaction) m_Context.lookup("java:jboss/UserTransaction"); userTrans.setTransactionTimeout(600000); 然后在

在Wildfly 10独立模式下,我使用下面的代码片段获取SessionContext对象

InitialContext context = new InitialContext();
UserTransaction userTrans = null;
userTrans = (UserTransaction) m_Context.lookup("java:jboss/UserTransaction");
userTrans.setTransactionTimeout(600000);
然后在SLSB中我使用

@Resource
protected SessionContext sessionontext;
但同一代码在域模式下执行时,由于其值为null,因此无法使用SessionContext

更新

@Stateless(mappedName="AppManager")
@Local(value = AppManager.class)
@Remote(value = AppManagerRemote.class)
@TransactionAttribute(TransactionAttributeType.REQUIRED)
@TransactionManagement(TransactionManagementType.CONTAINER)


    public class AppManagerBean extends AppManagerAdapter implements AppManagerRemote
    {
      try
      {
      }
      catch(Exp..)
      {
        sessionontext.setRollbackOnly();  ///Here sessionontext is null
      }
    }

    public class AppManagerAdapter
    {
        @Resource
        protected SessionContext sessionontext;
    //
    }

SessionContext注入应该在无状态bean本身中。 如此感动

@Resource
        protected SessionContext sessionontext;

从AppManagerDatapter到AppManagerBean,它开始工作。

您的第一个代码片段似乎与
SessionContext
没有任何关系。请查看并添加更多内容details@SteveC更新了问题。这在Wildfly的独立模式下工作