<%! void printhref(Hashtable result)
{
String kindName = "";
Hashtable val = null;
if(result.isEmpty()) return ;
for (Enumeration e = h.keys(); e.hasMoreElements() ;) {
kindName = (String)e.nextElement();
val = (Hashtable)h.get(CategoryName);
if(val.isEmpty())
{
%>

解决方案 »

  1.   

    谁说的?把你的函数放在
    <%!%>
    里面比如这样:
    <%!
    public byte[] String_to_byte(String s) 
    {
    byte[] b = new byte[200];
    try 
    {
    java.io.StringBufferInputStream sbi=new java.io.StringBufferInputStream(s);
    b=new byte[sbi.available()];
    sbi.read(b);
    }
    catch(Exception e)
    {
    System.err.print(e.toString());
    }
    return b;
    }
    %>
    后面就可以用了
      

  2.   

    声明函数或变量都是<%! %>
      

  3.   

    这段函数  想递归打些连接
    log记录  test跑了好几遍,但连接只打了一个!!!
    要是不用<%! %>,只用<%%>函数不认!!!!
    急了!!
    <%  printhref(series); %>
    <%! void printhref(Hashtable result)
    {
    String kindName = "";
    Hashtable val = null;
    if(result.isEmpty()) return ;
    for (Enumeration e = result.keys(); e.hasMoreElements() ;) {
    kindName = (String)e.nextElement();
    test = kindName;
    val = (Hashtable)result.get(kindName);
    if(val.isEmpty())
    {
    newsWork.record(newsWork.DEBUG,"test: " + test);
    %>
    <a href=RssMM_List.jsp?kind=<%=test%> target=_blank class=f15><%=test%></a>
    <%! }
    else
    {
    %>
    <td><%=test%>------</td>
    <%!                                 printhref(val);
    } }
    }
    %>