Как запустить определенную команду с помощью Jongo?
Я использую TokuMx
для того, чтобы организовать сделку. У него есть конкретные команды для этого.
Я пытался бежать db.runCommand("beginTransaction")
в Mongo shell
, Это сработало хорошо.
Тем не менее, когда я сделал то же самое в Jongo
:
PlayJongo.jongo().runCommand("beginTransaction");
Это дало мне [error] play - Cannot invoke the action, eventually got an error: java.lang.IllegalArgumentException: Cannot parse query: beginTransaction
Что я сделал не так?
РЕДАКТИРОВАТЬ
public static boolean buyProduct(User buyer, User seller, int accountIndex, float productPrice){
boolean isSuccess = false;
PlayJongo.jongo().runCommand("{beginTransaction : 1}");
try{
// Deposit money to seller
seller.getAccounts().get(0).deposit(productPrice);
UserRepository.update(seller);
// Withdraw money from buyer
buyer.getAccounts().get(accountIndex).withdraw(productPrice);
UserRepository.update(buyer);
throw new Exception();
//isSuccess = true;
}
catch (Exception e){
PlayJongo.jongo().runCommand("{rollbackTransaction : 1 }");
isSuccess = false;
}
return isSuccess;
}
1 ответ
Я не эксперт по джонго, но я работаю над Tokumx, и я только что проверил документы по джонго. Я думаю ты хочешь
PlayJongo.jongo().runCommand("{beginTransaction:1}");