2017-09-26 1 views
2

이 SLSB에 다음 의 SessionContext는 DOMAIN에서 실행될 때 나는</p> <pre><code>@Resource protected SessionContext sessionontext; </code></pre> <p>그러나 동일한 코드를 사용 나는 아래 사용의 SessionContext 객체를 얻고있다 제이보스 (10) 독립형 모드에서

InitialContext context = new InitialContext(); 
UserTransaction userTrans = null; 
userTrans = (UserTransaction) m_Context.lookup("java:jboss/UserTransaction"); 
userTrans.setTransactionTimeout(600000); 

을 니펫을 제이보스 (10) 도메인 모드의 null mode는 값이 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; 
    // 
    } 
+0

첫 번째 코드 조각은'SessionContext'와 아무 관련이없는 것 같습니다. 검토하고 추가 정보를 추가하십시오 –

+0

@SteveC이 질문을 업데이트했습니다. Wildfly의 독립 실행 형 모드에서 작동합니다. – happy

답변

0

의 SessionContext 주입은 무 콩 자체에 있어야합니다. 그래서이 일을 다음 AppManagerBean하는 AppManagerAdapter에서

@Resource 
     protected SessionContext sessionontext; 

을 움직였다.