2

我正在尝试将 Mochiweb 与我的 ejabberd mnesia db 链接,并且无法在我的控制器中进行任何 mnesia 事务。我在没有 mnesia 事务的情况下测试了我的控制器,它们工作正常。我在 start 函数中使用 application:start(mnesia) 。

在浏览器上,我看到“内部服务器错误”,在 Mochiweb 的日志中,我看到“=ERROR REPORT=== function_clause”。我想知道如何 1.) 让 mnesia 与 Mochiweb 一起工作或 2.) 我可以插入到 ejabberd 的 Web 服务器的一个好的框架是什么。

谢谢!

4

3 回答 3

1

您是否有来自 Mochiweb 日志的其余错误消息 - 如果有的话,是“function_clause”之后的位吗?

于 2009-10-15T10:57:37.763 回答
0

这一定是您的代码中的错误。上次我检查 mochiweb 源代码时,它将您的“循环”函数包装在 try catch 中。如果它捕获到一个异常,它会将该异常的类型打印到错误日志中;在您的情况下,您有一个 function_clause 异常。

要么尝试手动调用你的循环函数,要么将你的代码包装在另一个 try catch 中,以便能够看到整个异常。如果您无法破译,请将其粘贴到您的问题中。

于 2009-10-15T11:09:47.927 回答
0

你知道,我认为我做错了......我认为它会像 PHP/SQL 和 Rails/SQL 一样工作,但似乎最好的方法是从 Mochiweb 节点调用方法到 ejabberd 节点。

我还注意到,当我启动 Mochiweb 连接到与 ejabberd 相同的 mnesia 数据库时,它试图“修复”我的一些表 - 基本上擦除了所有内容。

如果有人对此有任何意见(或者我完全不在意),请告诉我。谢谢!

于 2009-10-16T17:13:39.860 回答