簡體   English   中英

啟用JSP自定義taglib以使用Spring Service Bean

[英]Enable JSP Custom taglib to use spring service beans

我正在使用Spring MVC 3.2.4(也包括Spring Core 3.2.4)和jpa和hibernate作為后端來開發Web應用程序。 並且目前正在使用Tomcat v6.0進行測試。

當我創建一個JSP自定義標簽庫(使用jsp-api 2.1.1和servlet-api 2.5)時,我遇到了一個情況,這是一個自定義查找下拉列表,我會給它查找類型,它會從DB將此類型下的項目顯示為列表中的項目。

自定義taglib類基本上類似於以下內容:

public class LookupsTag extends SimpleTagSupport {
  @Autowired
  private static LookupService lookupService;
  private String type;

    public void doTag() throws JspException, IOException {
        List<Lookup> items = lookupService.findByType(getType());

        StringBuffer buff = new StringBuffer();
        buff.append("<select>");
        //...adding items...
        buff.append("</select>");
        getJspContext().getOut().write(buff.toString());
    }
  //getters and setters
}

並且我已經相應地創建了tld文件。

一旦我嘗試使用此自定義標簽查看頁面,便會引發NullPointerException ,因為在doTag()方法內部, lookupService實例為null

Spring似乎不支持自定義jsp標記。 有沒有辦法解決此問題,以使服務實例自動自動連接? 還是我缺少一些彈簧配置要做?

謝謝,

感謝Alan Hay的評論,將不支持自定義jsp taglib。 Spring已經通過其標簽庫http://docs.spring.io/spring/docs/current/spring-framework-reference/html/spring-form.tld.html#spring-form.tld.select提供了我需要的東西

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM