Mochiweb Mnesia просит
Я пытаюсь связать Mochiweb с моей ejabberd mnesia db и не могу выполнить транзакции mnesia в моих контроллерах. Я тестирую свои контроллеры без транзакций mnesia, и они работают нормально. Я использую приложение: старт (мнезия) внутри функции запуска.
В браузере я вижу "Внутренняя ошибка сервера", а в журнале Mochiweb вижу "= ОТЧЕТ О ОШИБКЕ === function_clause". Я хотел бы знать, как 1.) заставить mnesia работать с Mochiweb или 2.) какую хорошую платформу я мог бы подключить к веб-серверу ejabberd.
Спасибо!
3 ответа
Знаете, я думаю, что все делал неправильно... Я думал, что это будет работать как PHP/SQL и Rails/SQL, но, похоже, лучший способ сделать это - вызвать методы из узла Mochiweb в узел ejabberd.
Также я заметил, что когда я запускал Mochiweb, подключенный к той же базе данных mnesia, что и ejabberd, он пытался "починить" некоторые из моих таблиц - по сути, стерев все.
Если у кого-то есть какие-либо комментарии по этому вопросу (или если я полностью отключен), пожалуйста, дайте мне знать. Спасибо!
Есть ли у вас остальная часть сообщения об ошибке из журнала Mochiweb - бит после "function_clause", если оно есть?
Это должно быть ошибкой в вашем коде. В прошлый раз, когда я проверял источник mochiweb, он обернул вашу функцию "loop" в try catch. Если он поймал исключение, он напечатал тип этого исключения в журнале ошибок; в вашем случае у вас есть исключение function_clause.
Либо попробуйте вызвать функцию цикла вручную, либо оберните свой код в еще одну попытку перехвата, чтобы увидеть все исключение. Если вы не можете расшифровать его, вставьте его в свой вопрос, пожалуйста.