1 package org.jahia.taglibs.container; 2 3 import java.io.IOException ; 4 5 import javax.servlet.ServletRequest ; 6 import javax.servlet.jsp.JspException ; 7 import javax.servlet.jsp.JspWriter ; 8 import javax.servlet.jsp.tagext.TagSupport ; 9 10 import org.jahia.data.JahiaData; 11 import org.jahia.data.containers.JahiaContainer; 12 import org.jahia.data.fields.JahiaField; 13 import org.jahia.exceptions.JahiaException; 14 import org.jahia.utils.JahiaConsole; 15 16 17 22 public class AnchorTag extends TagSupport { 23 24 private String fieldName = ""; 25 26 public void setFieldName(String name) { 27 this.fieldName = name; 28 } 29 30 31 public int doStartTag() { 32 33 ContainerTag parent = (ContainerTag) findAncestorWithClass(this, ContainerTag.class); 34 35 if (parent != null) { 36 37 JahiaContainer container = parent.getContainer(); 38 if (container != null) { 39 try { 40 JahiaField theField = container.getField(this.fieldName); 41 if (theField != null) { 42 ServletRequest request = pageContext.getRequest(); 43 JahiaData jData = (JahiaData) request.getAttribute("org.jahia.data.JahiaData"); 44 JspWriter out = pageContext.getOut(); 45 out.print(jData.gui().html().drawAnchor(theField)); 46 } 47 } catch (JahiaException je) { 48 JahiaConsole.println("AnchorTag.doStartTag", je.toString()); 49 } catch (IOException ioe) { 50 JahiaConsole.println("AnchorTag.doStartTag", ioe.toString()); 51 } 52 } 53 } 54 return SKIP_BODY; 55 } 56 57 public int doEndTag() throws JspException { 58 fieldName = ""; 61 return EVAL_PAGE; 62 } 63 64 } 65 | Popular Tags |