2009-12-04 31 views
0

如何將Grails生成的java類包含到grails項目中?將Grails生成的Java類包含到grails項目中

如何通過grails將生成的類用於項目中的java類。 將我的Groovy類用於Grails項目的Java類。 Accesing他的方法,屬性等等...

例子:

我有一個域類是這樣的:

package es.prueba.domain 
class Author implements Serializable { 
    String firstName 
    String lastName 

    static hasMany = [books: Book]  

    def relatesToMany = [ books : Book ] 

    SortedSet books 

    static constraints = { 
     books(nullable: true) 
    } 

} 

我想在Java文件中使用它。在我的情況下,我使用GWT發送服務AuthorService.groovy的對象。

我生成與規則的接口:grails generate-gwt-rpc

bookService的:

package org.example.client; 

import com.google.gwt.user.client.rpc.RemoteService; 

public interface BookService extends RemoteService { 
    es.prueba.domain.Author getAuthor(int arg0); 
} 

BookServiceAsync:

package org.example.client; 

import com.google.gwt.user.client.rpc.AsyncCallback; 

public interface BookServiceAsync { 
    void getAuthor(int arg0, AsyncCallback callback); 
} 

但我得到異常:

No source code is available for type es.prueba.domain.Author; did you forget to inherit a required module?

當我運行該應用程序時:grails run-app命令。

如何在項目中包含源代碼?

謝謝。

回答

0

你把你的域類放在es.prueba.domain包中嗎?在源代碼示例中沒有看到包聲明。

歡呼

+0

是的,我的,我更新的問題。 謝謝... – 2009-12-07 11:00:34

+0

你有一個堆棧跟蹤與例外?它是由插件代碼或核心Grails編譯步驟引發的? – leebutts 2009-12-08 01:06:03

0

我不是很熟悉的GWT插件Grails的,但它看起來更像是一個標準的GWT問題。

從GWT文檔約how to organize projects

缺省源路徑是模塊XML文件的存儲位置下方的客戶子包。

你包的名字是es.prueba.domain所以當它看起來源GWT沒有找到它。你在你的模塊文件中指定它(比方說Application.gwt.xml)規定如下:

<module> 
    <!-- Inherit the core Web Toolkit stuff. --> 
    <inherits name="com.google.gwt.user.User"/> 

    <!-- add es.prueba.domain as source path --> 
    <source path="domain"/> 

    <!-- Specify the module entry point class. --> 
    <entry-point class="es.prueba.Application"/> 
</module> 
+0

'模塊:org.example.MyApp【JAVA]編譯模塊org.example.MyApp【JAVA]計算關於「org.example.client.MyApp」的所有可能的重新綁定結果【JAVA]重綁定org.example.client.MyApp [java]檢查規則 2009-12-09 14:37:02

+0

我得到這個錯誤,包括在GWT應用程序中加載模塊的包。 謝謝,但我還沒有發現任何在GWT模塊入口點使用生成的類。 – 2009-12-09 14:39:17

+0

我不明白你最後的評論。 – rochb 2009-12-09 16:54:30