2011-01-29 64 views
0

我想創建一個複雜的自定義查找器併爲其生成jspx文件。如何在Spring ROO中爲複雜(自定義)查找器生成jspx和控制器文件?

我有一個由Spring Roo的產生一類名爲付款(請注意,實際的代碼是爲了修改以簡化的東西):

package com.mystuff.orm; 
... 
@RooJavaBean 
@RooToString 
public class Payment { 

    private Double someValue; 
    ... 

    // My Custom finder!! 
    public static TypedQuery<PaymentSummary> findPaymentStatistics(Calendar fromDate, Calendar toDate) { 
    if (fromDate == null || toDate == null) 
     throw new IllegalArgumentException("Date period argument is required"); 
    EntityManager em = Payment.entityManager(); 
    TypedQuery<PaymentSummary> q = em.createQuery("select new com.mystuff.data.PaymentSummary(sum(o.someValue)) from Payment o where o.startDate >= :startDate and o.endDate <= :endDate", PaymentSummary.class); 
    q.setParameter("startDate", fromDate); 
    q.setParameter("endDate", toDate); 
    return q; 
    } 

} 

怎樣才能JSPX此查詢的文件?每當我嘗試運行「添加取景--finderName findPaymentStatistics」我得到一個錯誤信息:

動態取景器是無法在Payment.java

任何想法匹配'findPaymentStatistics「findPaymentStatistics」取景器定義的標記?

謝謝

回答

1

上面的'findPaymentStatistics'是你手工實現的方法嗎?如果是這樣,那麼Roo won't be able to generate the front end for it。但是,如果您自己創建了查找程序代碼,Roo將生成一個前端。 Roo應該能夠生成與您手動編碼的相似的查找器。嘗試運行此:

roo> finder list --class com.mystuff.orm.Payment --filter start,end 

這應該給你,小豆可以創建包括「的startDate」和支付對象的「結束日期」參數的動態查找器的列表。

相關問題