这样一看当然不行了,最起码你两个参数都没有给人家还有,Servlet我只试过通过它所配置的后缀访问,还没有用过你说的这种方法,不知道行不行

解决方案 »

  1.   

    struts的action本质是一个轻量级的servlet。它可以完成servlet能完成的所有任务。所以,要在struts框架中调用另一个servlet,应该使用请求转发技术。
      

  2.   

    好像没那个必要了已经有了servlet的功能了直接用就是了嘛
      

  3.   

    你要搞什么,如果不用到 Service 的内部变量,就把test写成Setvice一个static方法直接调用就是嘛
      

  4.   

    你在servlet的action里怎么写的,你就在struts里的dopost里也怎么写,不是都一样的么!
      

  5.   

    方法中少写两个参数,应该是s.test(request,response);
    但还是不成
      

  6.   

    liuyiwu 你好,如何使用“使用请求转发技术”呢,用ActionForward?
      

  7.   

    你好。是的,是使用ActionForward。例如我们有一个servlet——Controller——的uri:“BookStore/Controller”。只要把ActionForward的path属性设为它,则当返回此AcionForward时请求就发往Controller了。还可以使用RequestDispatcher类来转发请求。例如以下三句:
    RequestDispatcher rd;
    rd=request.getRequestDispatcher("BookStore/Controller");
    rd.forward(request,response);
    就将请求发到Controller了。这也是Jsp和Servlet技术中常用的方法。第三种方法是用ForwardAction类。这三种方法的原理其实都是一样的。我推荐一本书《Struts in Action》(中文名“实践Struts”)。6.2节和8.2.1节或许对你理解此问题有帮助。8.3.1节讲述了ForwardAction的用法。
      

  8.   

    我以前是在servlet的doGet()方法中写完转发后,在Struts的ActionForward 中直接调用Servlet好像就可以了,呵呵!
    在ActionForward中写上这两句就可以了,
    testServlet slet=new testServlet();
    slet.doGet(request, response);