----- Original Message -----
From: "Malcolm Alexander" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Wednesday, September 26, 2001 2:43 PM
Subject: Re: Question regarding ant runservertests task
>
> Thanks Vincent,
>
> I moved to cactus 1.2 and the easy solution to my problem was to run
tomcat
> on another port for tests.
>
> But, I gave your suggestion a try w/1.1 (make sure the URL is a valid URL)
> and got the following results:
Maybe this was a bug that was corrected in 1.2 some time ago. If you check
the changelog you'll see the following line :
"The Cactus runservertests custom Ant task will now not stop the server if
it was running before the task was executed. This is to allow to run and
rerun Cactus tests without starting/stopping the server every time you run
the tests. (VMA) Thanks to Paul Dillon".
However, I have tried it with Cactus 1.2 and Tomcat already running
yesterday and it works fine for me. You said you moved to Cactus 1.2. Have
you tried it with Cactus 1.2 and Tomcat on the same port ?
Thanks
-Vincent
>
> BTW, I have been running tomcat as an NT service ... and using JDK1.3.1_01
>
> 1) ant tests_all returns successfully if I stop the Tomcat NT service
> first, with the following output (I ommitted the successful tests):
>
> Buildfile: build.xml
>
> init:
> [echo] --------- Cactus Sample 1.1 ---------
> [echo]
> [echo] java.class.path = E:\DevTools\jdk1.3.1_01\lib\tools.jar;E:
> \DevTools\jakarta-ant-1.4\lib\junit.jar;E:
> \DevTools\jakarta-ant-1.4\lib\jaxp.jar;E:
> \DevTools\jakarta-ant-1.4\lib\jakarta-ant-1.4-optional.jar;E:
> \DevTools\jakarta-ant-1.4\lib\crimson.jar;E:
> \DevTools\jakarta-ant-1.4\lib\ant.jar;
> [echo]
> [echo] java.home = E:\DevTools\jdk1.3.1_01\jre
> [echo] user.home = C:\Documents and Settings\Administrator
> [echo]
> [echo] basedir = E:\DevTools\commons-cactus-23-1.1\sample
> [echo]
> [echo] servlet.jar = E:/Apache Tomcat 4.0/common/lib/servlet.jar
> [echo] cactus.jar = ../lib/commons-cactus.jar
> [echo] junit.jar = E:/DevTools/jakarta-ant-1.4/lib/junit.jar
> [echo] cactus.ant.jar = ../lib/commons-cactus-ant.jar
>
> prepare:
>
> prepare-compile:
>
> compile:
>
> testwar:
>
> check_tests_resin_20:
> [echo]
> [echo] *********************************************************
> [echo] WARNING : The 'resin.home.20' property has not been set.
> [echo] No test will be run on that servlet engine.
> [echo] *********************************************************
> [echo]
>
> prepare_tests_resin_20:
>
> tests_resin_20:
>
> check_tests_resin_13:
> [echo]
> [echo] *********************************************************
> [echo] WARNING : The 'resin.home.13' property has not been set.
> [echo] No test will be run on that servlet engine.
> [echo] *********************************************************
> [echo]
>
> prepare_tests_resin_13:
>
> tests_resin_13:
>
> check_tests_tomcat_40:
>
> prepare_tests_tomcat_40:
> [echo] tomcat.home.40 = E:/Apache Tomcat 4.0
> [delete] Deleting: E:
> \DevTools\commons-cactus-23-1.1\sample\out\test\tomcat40\conf\server.xml
> [delete] Deleting directory E:
> \DevTools\commons-cactus-23-1.1\sample\out\test\tomcat40\webapps\test
> [copy] Copying 1 file to E:
> \DevTools\commons-cactus-23-1.1\sample\out\test\tomcat40\conf
>
> tests_tomcat_40:
>
> start_tomcat_40:
> [java] HttpConnector Opening server socket on all host IP addresses
> [java] Starting service Tomcat-Standalone
> [java] Apache Tomcat/4.0
> [java] StandardHost[localhost]: Installing web application at context
> path /test from URL jar:file:E:
>
\DevTools\commons-cactus-23-1.1\sample\out\test\tomcat40\webapps\test.war!/
> [java] WebappLoader[/test]: Deploying class repositories to work
> directory E:\Apache Tomcat 4.0\work\localhost\test
> [java] WebappLoader[/test]: Deploy JAR /WEB-INF/lib/cactus-23.jar to
> E:
>
\DevTools\commons-cactus-23-1.1\sample\out\test\tomcat40\webapps\test\WEB-IN
F\lib\cactus-23.jar
> [java] WebappLoader[/test]: Deploy JAR /WEB-INF/lib/junit.jar to E:
>
\DevTools\commons-cactus-23-1.1\sample\out\test\tomcat40\webapps\test\WEB-IN
F\lib\junit.jar
> [java] WebappLoader[/test]: Deploy JAR /WEB-INF/lib/log4j.jar to E:
>
\DevTools\commons-cactus-23-1.1\sample\out\test\tomcat40\webapps\test\WEB-IN
F\lib\log4j.jar
> [java] StandardManager[/test]: Seeding random number generator class
> java.security.SecureRandom
> [java] StandardManager[/test]: Seeding of random number generator has
> been completed
> [java] StandardWrapper[/test:default]: Loading container servlet
> default
> [java] StandardWrapper[/test:invoker]: Loading container servlet
> invoker
> [java] StandardWrapper[/test:jsp]: Using Jasper classloader for
> servlet jsp
> [java] HttpConnector[8080] Starting background thread
>
> tests:
> ...
>
> stop_tomcat_40:
> [java] Stopping service Tomcat-Standalone
> [java] HttpConnector[8080] Stopping background thread
> [java] StandardHost[localhost]: Removing web application at context
> path /test
> [runservertests] Server stopped !
>
> check_tests_orion_14:
> [echo]
> [echo] *********************************************************
> [echo] WARNING : The 'orion.home.14' property has not been set.
> [echo] No test will be run on that servlet engine.
> [echo] *********************************************************
> [echo]
>
> prepare_tests_orion_14:
>
> tests_orion_14:
>
> tests_all:
>
> BUILD SUCCESSFUL
>
> Total time: 21 seconds
>
> ****************************************************
> ****************************************************
>
> 2) If I have the Tomcat service running, I get the following:
>
> Buildfile: build.xml
>
> init:
> [echo] --------- Cactus Sample 1.1 ---------
> [echo]
> [echo] java.class.path = E:\DevTools\jdk1.3.1_01\lib\tools.jar;E:
> \DevTools\jakarta-ant-1.4\lib\junit.jar;E:
> \DevTools\jakarta-ant-1.4\lib\jaxp.jar;E:
> \DevTools\jakarta-ant-1.4\lib\jakarta-ant-1.4-optional.jar;E:
> \DevTools\jakarta-ant-1.4\lib\crimson.jar;E:
> \DevTools\jakarta-ant-1.4\lib\ant.jar;
> [echo]
> [echo] java.home = E:\DevTools\jdk1.3.1_01\jre
> [echo] user.home = C:\Documents and Settings\Administrator
> [echo]
> [echo] basedir = E:\DevTools\commons-cactus-23-1.1\sample
> [echo]
> [echo] servlet.jar = E:/Apache Tomcat 4.0/common/lib/servlet.jar
> [echo] cactus.jar = ../lib/commons-cactus.jar
> [echo] junit.jar = E:/DevTools/jakarta-ant-1.4/lib/junit.jar
> [echo] cactus.ant.jar = ../lib/commons-cactus-ant.jar
>
> prepare:
>
> prepare-compile:
>
> compile:
>
> testwar:
>
> check_tests_resin_20:
> [echo]
> [echo] *********************************************************
> [echo] WARNING : The 'resin.home.20' property has not been set.
> [echo] No test will be run on that servlet engine.
> [echo] *********************************************************
> [echo]
>
> prepare_tests_resin_20:
>
> tests_resin_20:
>
> check_tests_resin_13:
> [echo]
> [echo] *********************************************************
> [echo] WARNING : The 'resin.home.13' property has not been set.
> [echo] No test will be run on that servlet engine.
> [echo] *********************************************************
> [echo]
>
> prepare_tests_resin_13:
>
> tests_resin_13:
>
> check_tests_tomcat_40:
>
> prepare_tests_tomcat_40:
> [echo] tomcat.home.40 = E:/Apache Tomcat 4.0
> [delete] Deleting: E:
> \DevTools\commons-cactus-23-1.1\sample\out\test\tomcat40\conf\server.xml
> [delete] Deleting directory E:
> \DevTools\commons-cactus-23-1.1\sample\out\test\tomcat40\webapps\test
> [copy] Copying 1 file to E:
> \DevTools\commons-cactus-23-1.1\sample\out\test\tomcat40\conf
>
> tests_tomcat_40:
>
> start_tomcat_40:
> [java] HttpConnector Opening server socket on all host IP addresses
> [java] Catalina.start: LifecycleException: null.open:
> java.net.BindException: Address in use: JVM_Bind
> [java] LifecycleException: null.open: java.net.BindException:
> Address in use: JVM_Bind
> [java] at
>
org.apache.catalina.connector.http.HttpConnector.initialize(HttpConnector.ja
va:1116)
> [java] at
>
org.apache.catalina.core.StandardService.initialize(StandardService.java:454
)
> [java] at
>
org.apache.catalina.core.StandardServer.initialize(StandardServer.java:552)
> [java] at
> org.apache.catalina.startup.Catalina.start(Catalina.java:775)
> [java] at
> org.apache.catalina.startup.Catalina.execute(Catalina.java:681)
> [java] at
> org.apache.catalina.startup.Catalina.process(Catalina.java:179)
> [java] at java.lang.reflect.Method.invoke(Native Method)
> [java] at
> org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:218)
> [java] ----- Root Cause -----
> [java] java.net.BindException: Address in use: JVM_Bind
> [java] at java.net.PlainSocketImpl.socketBind(Native Method)
> [java] at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:405)
> [java] at java.net.ServerSocket.<init>(ServerSocket.java:170)
> [java] at java.net.ServerSocket.<init>(ServerSocket.java:121)
> [java] at
>
org.apache.catalina.net.DefaultServerSocketFactory.createSocket(DefaultServe
rSocketFactory.java:118)
> [java] at
>
org.apache.catalina.connector.http.HttpConnector.open(HttpConnector.java:946
)
> [java] at
>
org.apache.catalina.connector.http.HttpConnector.initialize(HttpConnector.ja
va:1114)
> [java] at
>
org.apache.catalina.core.StandardService.initialize(StandardService.java:454
)
> [java] at
>
org.apache.catalina.core.StandardServer.initialize(StandardServer.java:552)
> [java] at
> org.apache.catalina.startup.Catalina.start(Catalina.java:775)
> [java] at
> org.apache.catalina.startup.Catalina.execute(Catalina.java:681)
> [java] at
> org.apache.catalina.startup.Catalina.process(Catalina.java:179)
> [java] at java.lang.reflect.Method.invoke(Native Method)
> [java] at
> org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:218)
>
>
> 3) And at this point I have to stop the process. I also tried a different
> URL (http://localhost:8080/index.html)
> and got ...
>
> tests:
> [junit] Running
> org.apache.commons.cactus.sample.unit.TestServletTestCase_TestResult
> [junit] Tests run: 1, Failures: 0, Errors: 1, Time elapsed: 0.25 sec
> [junit] Testsuite:
> org.apache.commons.cactus.sample.unit.TestServletTestCase_TestResult
> [junit] Tests run: 1, Failures: 0, Errors: 1, Time elapsed: 0.25 sec
> [junit]
> [junit] Testcase: testLongProcess took 0.25 sec
> [junit] Caused an ERROR
> [junit] http://localhost:8080/test/ServletRedirector
> [junit] java.io.FileNotFoundException:
> http://localhost:8080/test/ServletRedirector
> [junit] at
>
sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection
.java:562)
> [junit] at
>
org.apache.commons.cactus.client.AutoReadHttpURLConnection.getInputStream(Au
toReadHttpURLConnection.java:119)
> [junit] at
>
org.apache.commons.cactus.client.ServletHttpClient.doTest(ServletHttpClient.
java:113)
> [junit] at
>
org.apache.commons.cactus.ServletTestCase.runGenericTest(ServletTestCase.jav
a:158)
> [junit] at
>
org.apache.commons.cactus.ServletTestCase.runTest(ServletTestCase.java:128)
> [junit] at
>
org.apache.commons.cactus.AbstractTestCase.runBare(AbstractTestCase.java:281
)
> [junit] at
junit.framework.TestResult$1.protect(TestResult.java:106)
> [junit] at
> junit.framework.TestResult.runProtected(TestResult.java:124)
> [junit] at junit.framework.TestResult.run(TestResult.java:109)
> [junit] at junit.framework.TestCase.run(TestCase.java:131)
> [junit] at junit.framework.TestSuite.runTest(TestSuite.java:173)
> [junit] at junit.framework.TestSuite.run(TestSuite.java:168)
> [junit] at
>
org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRu
nner.java:231)
> [junit] at
>
org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestR
unner.java:409)
> [junit]
>
> stop_tomcat_40:
> [java] Catalina.stop: java.net.ConnectException: Connection refused:
> connect
> [java] java.net.ConnectException: Connection refused: connect
> [java] at java.net.PlainSocketImpl.socketConnect(Native Method)
> [java] at
> java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:320)
> [java] at
> java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:133)
> [java] at
> java.net.PlainSocketImpl.connect(PlainSocketImpl.java:120)
> [java] at java.net.Socket.<init>(Socket.java:273)
> [java] at java.net.Socket.<init>(Socket.java:100)
> [java] at
> org.apache.catalina.startup.Catalina.stop(Catalina.java:826)
> [java] at
> org.apache.catalina.startup.Catalina.execute(Catalina.java:683)
> [java] at
> org.apache.catalina.startup.Catalina.process(Catalina.java:179)
> [java] at java.lang.reflect.Method.invoke(Native Method)
> [java] at
> org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:218)
> [java] Java Result: 1
>
>
> Has anyone else had this problem w/1.1?
>
> Thanks,
> Malcolm
>
>
>
>
>
>
> "Vincent
> Massol" To:
<[EMAIL PROTECTED]>
> <vmassol@octo. cc:
> com> Subject: Re: Question
regarding ant runservertests task
>
> 09/24/01 10:51
> AM
> Please respond
> to cactus-user
>
>
>
>
>
>
> Hi Malcom,
>
> Can you ensure that the testURL attribute of the runservertests tasks
> points
> to a valid URL, i.e. verify that when Tomcat 4.x is started, calling this
> URL returns a valid page ? This is the mechanism used by this task to
> verify
> if the server is running. I'll try it myself.
>
> Thanks
> -Vincent
>
> ----- Original Message -----
> From: "Malcolm Alexander" <[EMAIL PROTECTED]>
> To: <[EMAIL PROTECTED]>
> Sent: Monday, September 24, 2001 3:38 PM
> Subject: Question regarding ant runservertests task
>
>
> >
> > In the cactus sample, the "tests_tomcat_40" ant script starts the server
> > and stops the server after the unit tests are completed, in the custom
> task
> > "runservertests". The documentation mentions that if the server is
> > started, it will stay up, and if it is not, it will be started and shut
> > down. Here is the output I get if I have Tomcat 4.0 started:
> >
> > ...
> >
> > start_tomcat_40:
> > [java] HttpConnector Opening server socket on all host IP addresses
> > [java] Catalina.start: LifecycleException: null.open:
> > java.net.BindException: Address in use: JVM_Bind
> > [java] LifecycleException: null.open: java.net.BindException:
> > Address in use: JVM_Bind
> > [java] at
> >
>
org.apache.catalina.connector.http.HttpConnector.initialize(HttpConnector.ja
>
> va:1116)
> > [java] at
> >
>
org.apache.catalina.core.StandardService.initialize(StandardService.java:454
>
> )
> > [java] at
> >
>
org.apache.catalina.core.StandardServer.initialize(StandardServer.java:552)
> > [java] at
> > org.apache.catalina.startup.Catalina.start(Catalina.java:775)
> > [java] at
> > org.apache.catalina.startup.Catalina.execute(Catalina.java:681)
> > [java] at
> > org.apache.catalina.startup.Catalina.process(Catalina.java:179)
> > [java] at java.lang.reflect.Method.invoke(Native Method)
> > [java] at
> > org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:218)
> > [java] ----- Root Cause -----
> > [java] java.net.BindException: Address in use: JVM_Bind
> > [java] at java.net.PlainSocketImpl.socketBind(Native Method)
> > [java] at
> java.net.PlainSocketImpl.bind(PlainSocketImpl.java:405)
> > [java] at java.net.ServerSocket.<init>(ServerSocket.java:170)
> > [java] at java.net.ServerSocket.<init>(ServerSocket.java:121)
> > [java] at
> >
>
org.apache.catalina.net.DefaultServerSocketFactory.createSocket(DefaultServe
>
> rSocketFactory.java:118)
> > [java] at
> >
>
org.apache.catalina.connector.http.HttpConnector.open(HttpConnector.java:946
>
> )
> > [java] at
> >
>
org.apache.catalina.connector.http.HttpConnector.initialize(HttpConnector.ja
>
> va:1114)
> > [java] at
> >
>
org.apache.catalina.core.StandardService.initialize(StandardService.java:454
>
> )
> > [java] at
> >
>
org.apache.catalina.core.StandardServer.initialize(StandardServer.java:552)
> > [java] at
> > org.apache.catalina.startup.Catalina.start(Catalina.java:775)
> > [java] at
> > org.apache.catalina.startup.Catalina.execute(Catalina.java:681)
> > [java] at
> > org.apache.catalina.startup.Catalina.process(Catalina.java:179)
> > [java] at java.lang.reflect.Method.invoke(Native Method)
> > [java] at
> > org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:218)
> >
> >
> > Is there a problem with my setup?
> > Tomcat 4.0, Cactus 1.1, Ant 1.4
> >
> > Thanks,
> > malcolm
> >
> >
>
>
>
>
>
>
>