[英]MongoDB Java / Scala drivers - Missing methods
我試圖將一個持久層從一個普通的舊數據庫(使用ScalaQuery)轉換為MongoDB,但遇到一個奇怪的問題。 我使用Casbah驅動程序,它是官方MongoDB Java驅動程序的Scala包裝器。 Java和Scala驅動程序均定義-根據文檔以及當我在Eclipse中打開.jar時的概述-一種使用單個DBObject作為參數(其中帶有ID)的findOneById方法。
但是,當我嘗試訪問它時,在Eclipse和SBT中,Scala編譯器都丟失了一個方法異常-Scala版本2.9.0-1,SBT 0.10.1。
是什么原因造成的? 這可能是已知的SBT / Scala編譯器錯誤嗎?
我只是刪除了整個存儲庫,所以所有依賴項都可以重新下載,但這並不能解決問題。
您確定在MongoCollection
實例上調用findOneById
嗎?
也許是錯誤的參數類型,正如我在文檔(http://api.mongodb.org/scala/casbah/2.1.2/scaladoc/com/mongodb/casbah/MongoCollection.html)上看到的那樣, findOneById
應該接受類型為AnyRef的ID,然后選擇要返回的字段。
您應該嘗試使用諸如mongoCollection.findOneByID(1.asInstanceOf[Object])
。
關於BBObject
,它似乎沒有出現在參數列表中(除了作為將您請求的字段轉換為DBObject
的隱式參數DBObject
)。 自上一發行版以來,方法的簽名可能已更改。
希望這會有所幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.