Those tags are meant to work with JavaBeans-style classes. I think there's been lots of questions about accessing stuff like SiteConstant.HOST and SiteConstant.ECLIPSE_BANNER, but I don't remember seeing a solution for that. One way around it (not that it's the best way) is to provide accessors that directly give you what (Page)host.getPage(SiteConstant.ECLIPSE_BANNER) returns.
Hubert --- Michael McGrady <[EMAIL PROTECTED]> wrote: > > Thanks, Herbert, let me state more particularly what I am doing. I want to use Struts tags rather than > JSP. I know how to do things in JSP easily. With the tags, outside of > ActionForms, I am confused. In JSP, I get my results as follows: > > > <% > Host host = (Host)session.getAttribute(SiteConstant.HOST); > Page key = (Page)host.getPage(SiteConstant.ECLIPSE_BANNER); > %> > > <%= key.getValue("bannerLeftBackgroundColor") %> > > I want to do with the Struts bean tag what I do now with JSP tags. How do > I do that? This should be simple, but something is not working. I am > either erring with the "define" or the "write" attribute and all the > combinations I try don't work. People have indicated that I need to > retrieve a Map object with getMap(). I don't see why, given what I read in > > the literature. If you could help, I would be eternally (or a very long > time) grateful. The classes are given below: > > public class Host { > private Map pages; > > public Host() { > int size = 89; > this.pages = Collections.synchronizedMap(new HashMap(size)); > } > > public void setMap(Map pages) { > this.pages = pages; > } > > public Map getMap() { > return pages; > } > > public void setPage(Object key, Object page) { > pages.put(key,page); > } > > public Object getPage(Object key) { > return pages.get(key); > } > } ///;-) Michael McGrady > > > public class Page { > private Map keys; > > public Page() { > int size = 89; > this.keys = Collections.synchronizedMap(new HashMap(size)); > } > > public void setMap(Map keys) { > this.keys = keys; > } > > public Map getMap() { > return keys; > } > > public void setValue(Object key, Object value) { > keys.put(key,value); > } > > public Object getValue(Object key) { > Object value = keys.get(key); > com.crackwillow.log.StdOut.redirect("log.VALUE: " + value); > if(value == null) { > return "? [" + (String)key + "] ?"; > } else { > return value; > } > } > } ///;-) Michael McGrady > > __________________________________ Do you Yahoo!? Yahoo! Photos: High-quality 4x6 digital prints for 25¢ http://photos.yahoo.com/ph/print_splash --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]