Return-Path: list-help: list-unsubscribe: List-Post: List-Id: Mailing-List: contact cactus-user-help@jakarta.apache.org; run by ezmlm Delivered-To: mailing list cactus-user@jakarta.apache.org Received: (qmail 61551 invoked from network); 17 Nov 2003 11:42:26 -0000 Received: from unknown (HELO AppSrvr.itworx.com) (212.12.241.20) by daedalus.apache.org with SMTP; 17 Nov 2003 11:42:26 -0000 content-class: urn:content-classes:message MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable X-MimeOLE: Produced By Microsoft Exchange V6.0.5762.3 Subject: RE: invoking a private method of a servlet Date: Mon, 17 Nov 2003 13:42:37 +0200 Message-ID: <2F3A41C96079844B9D3B375B1DC9535E098453@appsrvr.itworx.com> X-MS-Has-Attach: X-MS-TNEF-Correlator: Thread-Topic: invoking a private method of a servlet Thread-Index: AcOs/uVqjvYzX1JuQnq9tH1wKAeuEgAAIN/g From: "Tarek M. Nabil" To: "Cactus Users List" X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N Hi Ajay, I'm not an expert on Unit Testing, but I've been doing so much reading = about it lately. This is, really, the first time I've seen this = technique used. I would think this is too much work and I really doubt = if this is the idea behind testing. I think your problem would be better = solved by using mock objects. Thanks, Tarek Nabil -----Original Message----- From: Ajay Kumar [mailto:ajaykumar1712@hotmail.com] Sent: Monday, November 17, 2003 1:35 PM To: cactus-user@jakarta.apache.org Subject: invoking a private method of a servlet Hi All, I have a controller servlet with many private methods and want to write = a=20 testcase for these methods. I tried using reflection for invoking these=20 methods, but got the following report: - - - java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at=20 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java= :39) at=20 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorI= mpl.java:25) at TestMainServlet.testGetEmailTemplates(TestMainServlet.java:52) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at=20 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java= :39) at=20 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorI= mpl.java:25) at=20 org.apache.cactus.server.AbstractWebTestCaller.doTest(AbstractWebTestCall= er.java:156) at=20 org.apache.cactus.server.AbstractWebTestController.handleRequest_aroundBo= dy0(AbstractWebTestController.java:130) at=20 org.apache.cactus.server.AbstractWebTestController.handleRequest_aroundBo= dy1$advice(AbstractWebTestController.java:158) at=20 org.apache.cactus.server.AbstractWebTestController.handleRequest(Abstract= WebTestController.java) at=20 org.apache.cactus.server.ServletTestRedirector.doPost_aroundBody2(Servlet= TestRedirector.java:138) at=20 org.apache.cactus.server.ServletTestRedirector.doPost_aroundBody3$advice(= ServletTestRedirector.java:158) at=20 org.apache.cactus.server.ServletTestRedirector.doPost(ServletTestRedirect= or.java) at=20 org.apache.cactus.server.ServletTestRedirector.doGet_aroundBody0(ServletT= estRedirector.java:109) at=20 org.apache.cactus.server.ServletTestRedirector.doGet_aroundBody1$advice(S= ervletTestRedirector.java:158) at=20 org.apache.cactus.server.ServletTestRedirector.doGet(ServletTestRedirecto= r.java) at javax.servlet.http.HttpServlet.service(HttpServlet.java:740) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at=20 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applicat= ionFilterChain.java:247) at=20 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilte= rChain.java:193) at=20 org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve= .java:256) at=20 org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.in= vokeNext(StandardPipeline.java:643) at=20 org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:48= 0) at = org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) at=20 org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve= .java:191) at=20 org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.in= vokeNext(StandardPipeline.java:643) at=20 org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:48= 0) at = org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) at=20 org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2417= ) at=20 org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:= 180) at=20 org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.in= vokeNext(StandardPipeline.java:643) at=20 org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherVal= ve.java:171) at=20 org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.in= vokeNext(StandardPipeline.java:641) at=20 org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:= 172) at=20 org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.in= vokeNext(StandardPipeline.java:641) at=20 org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:48= 0) at = org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) at=20 org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.j= ava:174) at=20 org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.in= vokeNext(StandardPipeline.java:643) at=20 org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:48= 0) at = org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) at = org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:193) at=20 org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:781= ) at=20 org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processCo= nnection(Http11Protocol.java:549) at org.a pache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:589) at=20 org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.= java:666) at java.lang.Thread.run(Thread.java:536) Caused by: java.lang.NullPointerException at=20 com.appnetix.mainprospecting.control.MainServlet.getEmailTemplates(MainSe= rvlet.java:226) ... 54 more