1 package org.enhydra.barracuda.tutorials.comp; 2 3 import java.io.*; 4 import java.util.*; 5 import javax.servlet.*; 6 import javax.servlet.http.*; 7 8 import org.w3c.dom.*; 9 import org.enhydra.xml.xmlc.*; 10 11 import org.enhydra.barracuda.core.comp.*; 12 import org.enhydra.barracuda.core.comp.helper.*; 13 import org.enhydra.barracuda.core.util.dom.*; 14 import org.enhydra.barracuda.tutorials.xmlc.*; 15 16 20 public class HelloWorld1 extends ComponentGateway { 21 22 25 29 public Document handleDefault (BComponent root, ViewContext vc, HttpServletRequest req, HttpServletResponse resp) throws IOException { 30 34 Document page = DefaultDOMLoader.getGlobalInstance().getDOM(HelloWorld1HTML.class, vc.getViewCapabilities().getClientLocale()); 36 Node node = page.getElementById("HelloWorld"); 37 38 TemplateView tv = new DefaultTemplateView(node); 40 TemplateModel tm = new HelloWorldModel(); 41 BTemplate templateComp = new BTemplate(tm); 42 templateComp.setView(tv); 43 44 root.addChild(templateComp); 46 47 return page; 49 } 50 51 55 class HelloWorldModel extends AbstractTemplateModel { 56 public String getName() { 58 return "HelloWorld"; 59 } 60 61 public Object getItem(String key) { 63 ViewContext vc = getViewContext(); 64 if (key.equals("Title")) return "Hello World 1 example"; 65 else if (key.equals("Descr")) return "This example demonstrates the simplest way to use the BTemplate component. Here we are implementing the Model manually as an inner class."; 66 else if (key.equals("Hello")) return "Hello World! Hi Ma! Hi Pa!"; 67 else return super.getItem(key); 68 } 69 } 70 } 71 | Popular Tags |