2011-03-23 63 views
3

我正在使用Grails 1.2.1。我正在将Java应用程序转换为Grails应用程序,并且我有一个Java对象,我认为我会为其创建一个Grails域。但是,该对象不依赖于基础数据库表。当我启动我的应用程序,我得到的错误,可能创建未映射到数据库表的域类?

“ERROR context.ContextLoader - 上下文初始化失败 org.springframework.beans.factory.BeanCreationException:错误创建名为'为messageSource豆芽:初始化失败;嵌套异常是org.springframework.beans.factory.BeanCreationException:创建名为'transactionManager'的bean时出错:设置bean属性'sessionFactory'时无法解析对bean'sessionFactory'的引用;嵌套异常是org.springframework.beans.factory。 BeanCreationException:创建名为'sessionFactory'的bean时出错:init方法的调用失败;嵌套的异常是org.hibernate.MappingException:无法确定类型:java.io.InputStream,表:http_cache_response,列:[org.hibernate .mapping.Column(body)]“

我滥用域名吗?这个对象应该是src/groovy中的常规类吗?谢谢, - 戴夫

+0

我该怎么做?底部唯一明显的按钮是“回答您的问题”,但似乎是回复主题的方式。这些页面上有很多内容 - http://screencast.com/t/JzOa4hrX! - 戴夫 – Dave 2011-03-25 14:00:54

+0

我还没有问自己一个问题,所以我不得不在[FAQ](http://stackoverflow.com/faq)中查找如何。 “当你决定哪个答案对你最有帮助时,通过点击答案左边的复选框大纲将其标记为已接受的答案。” – Dana 2011-03-28 00:14:58

回答

0

我会说如果你不打算使用类作为Grails风格的域对象,最好把它放在src/java中,并像其他任何类一样使用它们。

8

是的,域对象是特定的数据库映射对象。不是DDD意义上的域。

根据类是否为单例,它应该是src/groovy中的服务或类。

4

可以创建一个没有底层域对象的类。有2种情况:

1)您想在Controller中使用对象,您可以创建CommandObject。 2)如果你想创建一个纯java/groovy类,你可以在src/java或者src/groovy中创建它。