1 16 17 22 package org.ditchnet.jsp.taglib.tabs.handler; 23 24 import java.io.IOException ; 25 import java.net.URLEncoder ; 26 import javax.servlet.http.HttpServletRequest ; 27 import javax.servlet.jsp.PageContext ; 28 import javax.servlet.jsp.JspException ; 29 import javax.servlet.jsp.tagext.SimpleTagSupport ; 30 import org.ditchnet.jsp.taglib.tabs.listener.TabServletContextListener; 31 32 33 44 public final class TabConfigTag extends SimpleTagSupport { 45 46 private String contextPath; 47 48 public void doTag() throws JspException , IOException { 49 50 StringBuffer buff = new StringBuffer (); 51 52 findContextPath(); 53 renderScriptTag(buff); 54 renderStyleTag(buff); 55 56 getJspContext().getOut().print(buff); 57 58 } 59 60 private void findContextPath() { 61 PageContext pageContext = (PageContext )getJspContext(); 62 HttpServletRequest req = (HttpServletRequest )pageContext.getRequest(); 63 contextPath = req.getContextPath(); 64 } 65 66 private void renderScriptTag(final StringBuffer buff) { 67 String uri = 68 getEncodedContextRelativePath(TabServletContextListener.SCRIPT_URI); 69 70 buff.append("\n\n\t<script type=\"text/javascript\" ") 71 .append("src=\"").append(uri).append("\">") 72 .append("</script>\n"); 73 } 74 75 private void renderStyleTag(final StringBuffer buff) { 76 String uri = 77 getEncodedContextRelativePath(TabServletContextListener.STYLE_URI); 78 79 buff.append("\t<link type=\"text/css\" rel=\"stylesheet\" ") 80 .append("href=\"").append(uri).append("\" />\n\n"); 81 } 82 83 private String getEncodedContextRelativePath(final String uri) { 84 return contextPath + uri; 85 } 86 87 88 89 } 90 | Popular Tags |