# TemplateProcessor.java Sample

This topic inludes the source code for the TemplateProcessor.java Sample.

## Sample Location

This sample is located in the following directory in your WebLogic Workshop installation:

BEA_HOME/weblogic81/samples/workshop/ExtensionDevKit/TaglibExtDevKit/TaglibInstall/TDK/

## Sample Source Code

`01 package TDK; 02 03 import com.bea.ide.workspace.project.IProjectTemplate; 04 import com.bea.ide.workspace.project.IProjectTemplateProcessor; 05 import com.bea.ide.workspace.project.web.IWebProjectDriver; 06 import com.bea.wlw.config.j2ee.WebAppDocument.WebApp; 07 import com.bea.wlw.config.j2ee.WebAppDocument.WebApp.Taglib; 08 import com.bea.xbean.tool.XMLBean; 09 10 public class TemplateProcessor implements IProjectTemplateProcessor 11 { 12 private IProjectTemplate _template; 13 private IContext _context; 14 15 public TemplateProcessor (IProjectTemplate template, IContext c) 16 { 17 _template = template; 18 _context = c; 19 } 20 21 public boolean load() 22 { 23 _context.loadAllContent(_template); 24 IWebProjectDriver driver = (IWebProjectDriver)_context.getProject().getDriver(IWebProjectDriver.class); 25 WebApp bean = (WebApp)driver.getWebXmlBean(); 26 27 // UNDONE -- extract the taglibs from template dynamically. 28 String taglibLocation = "/WEB-INF/tdk-tags.tld"; 29 String taglibUri = "tdk-tags.tld"; 30 31 // check if this guy is already defined in web.xml 32 Taglib[] taglibs = bean.getTaglibArray(); 33 for(int i = 0; i < taglibs.length; i++) 34 { 35 if(taglibs[i].getTaglibLocation().equals(taglibLocation) && 36 taglibs[i].getTaglibUri().equals(taglibUri)) 37 { 38 return true; 39 } 40 } 41 42 // add a new <taglib> entry to web.xml using xmlbeans. 43 Taglib taglib = bean.addNewTaglib(); 44 taglib.setTaglibLocation(taglibLocation); 45 taglib.setTaglibUri(taglibUri); 46 bean.setTaglibArray(taglibs.length, taglib); 47 driver.setWebXmlBean(bean, true); 48 return true; 49 } 50 51 public String check() 52 { 53 return null; 54 } 55 }`