1 7 package com.inversoft.verge.mvc.view.jsp.repository; 8 9 10 import javax.servlet.http.HttpServletRequest ; 11 import javax.servlet.jsp.JspException ; 12 import javax.servlet.jsp.tagext.TagSupport ; 13 14 import com.inversoft.verge.mvc.model.ModelResolution; 15 import com.inversoft.verge.mvc.model.repository.RepositoryMetaData; 16 import com.inversoft.verge.mvc.view.jsp.model.ModelResolutionRegistry; 17 import com.inversoft.verge.repository.Repository; 18 19 20 29 public class RepositoryItemTag extends TagSupport { 30 31 private String item; 32 private String var; 33 34 35 40 public String getItem() { 41 return item; 42 } 43 44 49 public void setItem(String item) { 50 this.item = item; 51 } 52 53 59 public String getVar() { 60 return var; 61 } 62 63 69 public void setVar(String var) { 70 this.var = var; 71 } 72 73 82 public int doStartTag() throws JspException { 83 84 if (!Repository.getInstance().isValidItem(pageContext.getRequest(), item)) { 86 throw new JspException ("Repository item with an ID of: " + item + 87 " is not in the repository"); 88 } 89 90 Object itemObj = Repository.getInstance().lookupItem( 91 (HttpServletRequest ) pageContext.getRequest(), item); 92 93 pageContext.setAttribute(var, itemObj); 94 95 RepositoryMetaData md = new RepositoryMetaData(item, null); 97 98 ModelResolution modelResolution = new ModelResolution(itemObj, md); 99 ModelResolutionRegistry.store(var, modelResolution, pageContext); 100 101 return SKIP_BODY; 102 } 103 } 104 | Popular Tags |