我在jsp页面里定义了一个函数:
private void a()
{
out.println("ddfs");}
出错。
改为
private void a()
{
System.out.println("ddfs");}不出错,但是调用时
<%a();%>什么也显示不出来,请问这该怎么解决.
另外,在问一个问题,jsp页面里能不能包含servlet

解决方案 »

  1.   

    第一个问题
    private String  a()
    {
    return "ddfs";}
    <%=a();%>
      

  2.   

    用<%!和%>把函数括起来,注意不要漏了那个感叹号,否则就是嵌套定义了.用原来那个函数就可以了
      

  3.   

    在问两个问题, 1.<%! %>里面的函数能不能调用javaBean
    2.jsp页面里能不能包含servlet
      

  4.   

    你把控制台程序和JSP程序混淆了
      

  5.   

    1.可以.2.不能.
    javaBean建立后可以像普通java对象一样处理.
    jsp页面本身即是一个servlet,事实上服务器把整个页面编译成一个servlet并缓存起来使用.
      

  6.   

    private void a()
    {
     return "ddfs";}
      

  7.   

    <%! %>里面的函数怎么调用javaBean啊,请给我个小例子,谢谢
      

  8.   

    寒,搂住去看看jsp编译后的文件就知道什么问题了。
    private void a()
    {
    out.println("ddfs");}
    改成
    private void a(out o)
    {
    o.println("ddfs");
    }
    就可以执行了。
      

  9.   

    编译后的servlet中JSPWriter对象并不是一个servlet类的成员变量,而是service方法的一个局部变量,当然在你声明的方法中是无法访问的。所以需要作为参数传入方法。
      

  10.   

    在问两个问题, 1.<%! %>里面的函数能不能调用javaBean
    2.jsp页面里能不能包含servlet