[英]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.