| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 446 人关注过本帖
标题:tag问题
取消只看楼主 加入收藏
roy_guo
Rank: 1
等 级:新手上路
帖 子:107
专家分:0
注 册:2006-4-27
收藏
 问题点数:0 回复次数:0 
tag问题

情况是这样的,在doStartTag() 中得到的ArrayList对象为空,而同样的代码在main函数里却可以得到返回值
真是奇怪,还望各位指教

package taglib;

import java.util.*;
import javax.servlet.jsp.tagext.*;
import javax.servlet.jsp.*;
import java.io.IOException;
import Node.NODE;

public class TreeTag implements Tag
{
private PageContext context = null;

public TreeTag()
{
super();
}

public void setPageContext(PageContext pagecontext)
{
this.context = pagecontext;
}

public void setParent(Tag tag)
{

}

public Tag getParent()
{
return null;
}

public int doStartTag() throws JspException
{
ArrayList list = NODE.getAllNodes();

try
{
context.getOut().println(list.size()); // 程序中显示输出0
context.getOut().println("<script type=\"text/javascript\">");
context.getOut().println("d = new dTree('d');");
for(int i = 0; i < list.size(); i ++)
{
NODE n = (NODE)(list.get(i));
context.getOut().println("d.add("+n.getID()+","
+ n.getPID() + ","
+ n.getCaption() +" );");
}
context.getOut().println("</script>");
context.getOut().println("</div></body></html>");
}
catch(IOException ex)
{
throw new JspException(ex.getMessage());
}
return SKIP_BODY;
}

public int doEndTag()
{
return SKIP_PAGE;
}

public void release()
{
}

public static void main(String args[]) // main 里面确可以正常读取数据,l不为空
{
ArrayList l = NODE.getAllNodes();
for(int i = 0; i < l.size(); i ++)
{
NODE n = (NODE)(l.get(i));
System.out.println(n.getCaption());
}
}
}

搜索更多相关主题的帖子: tag 
2006-11-20 13:27
快速回复:tag问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.084834 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved