2009-05-20 1 views
0

У меня есть кнопка в файле .xhtml, которая вызывает функцию javascript, которая вызывает функцию java удаленно (в среде jboss шва). Эта java-функция имеет объект entityManager.persist (объект). Знаете ли вы, почему эта строка кода не берется с БД? В нем говорится, что транзакция еще не началась. Я полагаю, что в удаленном контексте у меня нет транзакции, потому что если я помещаю действие на эту кнопку, которая вызывает одну и ту же функцию java вместо того, чтобы использовать javascript, это работает нормально; entityManager сохраняет объект, и я вижу его в БД.Удаленное сохранение морщин

Есть ли у кого-нибудь идеи, как я могу сделать, чтобы на самом деле сохранить объект, используя javascript, чтобы вызвать функцию java? (Я должен использовать JavaScript, потому что я нужна функция обратного вызова)

+0

Не могли бы вы опубликовать соответствующие части кода? Его немного сложно диагностировать, основываясь только на вашем тексте. –

ответ

0

Для обеспечения сделки Вы можете продлить org.jboss.seam.util.Work:

new Work() 
{ 
    @Override 
    protected Object work() throws Exception { 
     // do your stuff 
     return null; 
    } 
}.workInTransaction() 
Смежные вопросы