2009-10-14 33 views
2

我想鏈接Mochiweb與我的ejabberd mnesia數據庫,我無法在我的控制器中做任何mnesia交易。我測試我的控制器沒有mnesia交易,他們工作正常。我正在使用應用程序:start(mnesia)在啓動函數內部。Mochiweb mnesia請求

在瀏覽器上,我看到「內部服務器錯誤」,並在Mochiweb的日誌中看到「= ERROR REPORT === function_clause」。我想知道如何1)讓mnesia與Mochiweb合作或2)我可以插入ejabberd的web服務器的一個好框架是。

謝謝!

回答

0

你知道,我認爲我所做的一切都是錯誤的......我認爲它會像PHP/SQL和Rails/SQL一樣工作,但似乎最好的方法是將方法從Mochiweb節點調用到ejabberd節點。

而且我注意到,當我開始了Mochiweb連接到相同的Mnesia數據庫ejabberd,它試圖「修理」我的一些表 - 基本上消除了一切。

如果有人對此有任何意見(或者我完全不在),請告訴我。謝謝!

1

您是否有來自Mochiweb日誌的錯誤消息的其餘部分 - 「function_clause」之後的位是否存在?

+0

我知道這可能看起來愚蠢的問...但如果是受Mochiweb日誌文件? – ewindsor 2009-10-21 23:54:47

0

這必須是您的代碼中的錯誤。上次我檢查了mochiweb源代碼,它在try catch中包裝了你的「循環」函數。如果它發現異常,它會將該異常的類型打印到錯誤日誌中;在你的情況下,你有一個function_clause異常。

可嘗試手動調用你的循環功能,或包裝你的代碼中的又一嘗試捕捉到能夠看到整個例外。如果你不能破譯它,請把它粘貼到你的問題上。