Results 1 to 2 of 2

Thread: UnsuccessfulJUnit Tests With AbstractTransactionalDataSourceSpringContextTests

  1. #1
    Join Date
    Jul 2006
    Posts
    18

    Default UnsuccessfulJUnit Tests With AbstractTransactionalDataSourceSpringContextTests

    Sorry if this turns out to not be related to Spring or is otherwise off-topic.

    I am attempting to write a JUnit test using AbstractTransactionalDataSourceSpringContextTests. Unfortunately, it's not going too well. Log4J of all things is throwing a ConnectException.

    Here is the unit test code:

    Code:
    (package and import statements here)
    
    public class NewHardwareDaoTest extends AbstractTransactionalDataSourceSpringContextTests {
    
        protected String[] getConfigLocations() {
    
            return new String[] {"classpath:/WEB-INF/applicationContext*.xml"};
        }
    
        HardwareDao hardwareDao = (HardwareDao) applicationContext.getBean("hardwareDao");
        Hardware hardwareItem;
        OrganizationDao orgDao = (OrganizationDao) applicationContext.getBean("organizationDao");
        Organization org;
    
        public void testLoadBySerialNumber() {
    
            // Get an organization to use for the hardware item
            org = orgDao.searchByName("805 CSPTS/SCE");
    
            // Create the hardware item
            hardwareItem = new Hardware();
    
            String testSerial = "HXR0W71";
            hardwareItem = hardwareDao.loadBySerialNumber(testSerial);
    
            assertNotNull(hardwareItem);
    
        }
    }
    And here is the result:

    Code:
    C:\j2sdk1.4.2_12\bin\java -Didea.launcher.port=7538 "-Didea.launcher.bin.path=C:\Program Files\JetBrains\IntelliJ IDEA 5.1\bin" -Dfile.encoding=windows-1252 -classpath "C:\j2sdk1.4.2_12\jre\lib\charsets.jar;C:\j2sdk1.4.2_12\jre\lib\jce.jar;C:\j2sdk1.4.2_12\jre\lib\jsse.jar;C:\j2sdk1.4.2_12\jre\lib\plugin.jar;C:\j2sdk1.4.2_12\jre\lib\rt.jar;C:\j2sdk1.4.2_12\jre\lib\sunrsasign.jar;C:\j2sdk1.4.2_12\jre\lib\ext\dnsns.jar;C:\j2sdk1.4.2_12\jre\lib\ext\ldapsec.jar;C:\j2sdk1.4.2_12\jre\lib\ext\localedata.jar;C:\j2sdk1.4.2_12\jre\lib\ext\sunjce_provider.jar;C:\Svn\ACAP 1.3.4\target\acap\classes;C:\Tomcat\apache-tomcat-5.5.20\common\lib\commons-el.jar;C:\Tomcat\apache-tomcat-5.5.20\common\lib\jasper-compiler-jdt.jar;C:\Tomcat\apache-tomcat-5.5.20\common\lib\jasper-compiler.jar;C:\Tomcat\apache-tomcat-5.5.20\common\lib\jasper-runtime.jar;C:\Tomcat\apache-tomcat-5.5.20\common\lib\jsp-api.jar;C:\Tomcat\apache-tomcat-5.5.20\common\lib\naming-factory-dbcp.jar;C:\Tomcat\apache-tomcat-5.5.20\common\lib\naming-factory.jar;C:\Tomcat\apache-tomcat-5.5.20\common\lib\naming-resources.jar;C:\Tomcat\apache-tomcat-5.5.20\common\lib\servlet-api.jar;C:\Documents and Settings\jason.ferguson\.maven\repository\springframework\jars\spring-1.2.8.jar;C:\Lib\spring-framework-1.2.9\dist\spring-mock.jar;C:\Documents and Settings\jason.ferguson\.maven\repository\rad-commons\jars\rad-commons-1.17.jar;C:\Documents and Settings\jason.ferguson\.maven\repository\portal\jars\portal-1.0.1.jar;C:\Documents and Settings\jason.ferguson\.maven\repository\struts\jars\struts-1.2.9.jar;C:\Documents and Settings\jason.ferguson\.maven\repository\taglibs\jars\standard-1.0.6.jar;C:\Documents and Settings\jason.ferguson\.maven\repository\radtaglibrary\jars\radtaglibrary-0.6.jar;C:\Documents and Settings\jason.ferguson\.maven\repository\jstl\jars\jstl-1.0.6.jar;C:\Documents and Settings\jason.ferguson\.maven\repository\joda-time\jars\joda-time-1.3.jar;C:\Documents and Settings\jason.ferguson\.maven\repository\hibernate\jars\hibernate-3.1.3.jar;C:\Documents and Settings\jason.ferguson\.maven\repository\displaytag\jars\displaytag-1.1.jar;C:\Documents and Settings\jason.ferguson\.maven\repository\ehcache\jars\ehcache-1.1.jar;C:\Documents and Settings\jason.ferguson\.maven\repository\dom4j\jars\dom4j-1.5.2.jar;C:\Documents and Settings\jason.ferguson\.maven\repository\gatekeeper\jars\gatekeeper-1.0.1.jar;C:\Documents and Settings\jason.ferguson\.maven\repository\commons-beanutils\jars\commons-beanutils-1.7.0.jar;C:\Documents and Settings\jason.ferguson\.maven\repository\antlr\jars\antlr-2.7.5.jar;C:\Documents and Settings\jason.ferguson\.maven\repository\commons-collections\jars\commons-collections-3.1.jar;C:\Documents and Settings\jason.ferguson\.maven\repository\commons-logging\jars\commons-logging-1.0.3.jar;C:\Documents and Settings\jason.ferguson\.maven\repository\commons-lang\jars\commons-lang-2.0.jar;C:\Documents and Settings\jason.ferguson\.maven\repository\junit\jars\junit-3.8.1.jar;C:\Documents and Settings\jason.ferguson\.maven\repository\quartz\jars\quartz-1.4.5.jar;C:\Documents and Settings\jason.ferguson\.maven\repository\commons-validator\jars\commons-validator-1.2.0.jar;C:\Documents and Settings\jason.ferguson\.maven\repository\dbunit\jars\dbunit-2.1.jar;C:\Documents and Settings\jason.ferguson\.maven\repository\strutstestcase\jars\strutstestcase-2.1.3-1.2-2.3.jar;C:\Documents and Settings\jason.ferguson\.maven\repository\acegi\jars\acegi-security-1.0.3.jar;C:\Documents and Settings\jason.ferguson\.maven\repository\commons-pool\jars\commons-pool-1.2.jar;C:\Documents and Settings\jason.ferguson\.maven\repository\ojb\jars\db-ojb-1.0.2.jar;C:\Documents and Settings\jason.ferguson\.maven\repository\log4j\jars\log4j-1.2.8.jar;C:\Program Files\JetBrains\IntelliJ IDEA 5.1\lib\idea_rt.jar" com.intellij.rt.execution.application.AppMain com.intellij.rt.execution.junit2.JUnitStarter -ideVersion5 mil.af.amc.acap.dao.NewHardwareDaoTest,testLoadBySerialNumber
    log4j:ERROR Could not connect to remote log4j server at [localhost]. We will try again later.
    java.net.ConnectException: Connection refused: connect
    	at java.net.PlainSocketImpl.socketConnect(Native Method)
    	at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:305)
    	at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:171)
    	at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:158)
    	at java.net.Socket.connect(Socket.java:461)
    	at java.net.Socket.connect(Socket.java:411)
    	at java.net.Socket.<init>(Socket.java:310)
    	at java.net.Socket.<init>(Socket.java:154)
    	at org.apache.log4j.net.SocketAppender.connect(SocketAppender.java:195)
    	at org.apache.log4j.net.SocketAppender.activateOptions(SocketAppender.java:152)
    	at org.apache.log4j.config.PropertySetter.activate(PropertySetter.java:247)
    	at org.apache.log4j.config.PropertySetter.setProperties(PropertySetter.java:123)
    	at org.apache.log4j.config.PropertySetter.setProperties(PropertySetter.java:87)
    	at org.apache.log4j.PropertyConfigurator.parseAppender(PropertyConfigurator.java:645)
    	at org.apache.log4j.PropertyConfigurator.parseCategory(PropertyConfigurator.java:603)
    	at org.apache.log4j.PropertyConfigurator.configureRootCategory(PropertyConfigurator.java:500)
    	at org.apache.log4j.PropertyConfigurator.doConfigure(PropertyConfigurator.java:406)
    	at org.apache.log4j.PropertyConfigurator.doConfigure(PropertyConfigurator.java:432)
    	at org.apache.log4j.helpers.OptionConverter.selectAndConfigure(OptionConverter.java:460)
    	at org.apache.log4j.LogManager.<clinit>(LogManager.java:113)
    	at org.apache.log4j.Logger.getLogger(Logger.java:85)
    	at org.apache.commons.logging.impl.Log4JLogger.<init>(Log4JLogger.java:102)
    	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
    	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
    	at java.lang.reflect.Constructor.newInstance(Constructor.java:274)
    	at org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.java:525)
    	at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:272)
    	at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:246)
    	at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:395)
    	at org.springframework.test.AbstractSpringContextTests.<init>(AbstractSpringContextTests.java:60)
    	at org.springframework.test.AbstractDependencyInjectionSpringContextTests.<init>(AbstractDependencyInjectionSpringContextTests.java:110)
    	at org.springframework.test.AbstractTransactionalSpringContextTests.<init>(AbstractTransactionalSpringContextTests.java:102)
    	at org.springframework.test.AbstractTransactionalDataSourceSpringContextTests.<init>(AbstractTransactionalDataSourceSpringContextTests.java:48)
    	at mil.af.amc.acap.dao.NewHardwareDaoTest.<init>(NewHardwareDaoTest.java:13)
    	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
    	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
    	at java.lang.reflect.Constructor.newInstance(Constructor.java:274)
    	at com.intellij.rt.execution.junit.TestRunnerUtil.getTestImpl(TestRunnerUtil.java:99)
    	at com.intellij.rt.execution.junit.TextTestRunner2.getTest(TextTestRunner2.java:36)
    	at junit.textui.TestRunner.start(TestRunner.java:171)
    	at com.intellij.rt.execution.junit.TextTestRunner2.startRunnerWithArgs(TextTestRunner2.java:23)
    	at com.intellij.rt.execution.junit2.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:98)
    	at com.intellij.rt.execution.junit2.JUnitStarter.main(JUnitStarter.java:32)
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    	at java.lang.reflect.Method.invoke(Method.java:324)
    	at com.intellij.rt.execution.application.AppMain.main(AppMain.java:90)
    Cannot instantiate test(s): java.lang.reflect.InvocationTargetException
    
    Process finished with exit code 1
    Obviously, I'm not very good at this. If anyone can help, it would be appreciated.

    Jason

  2. #2
    Join Date
    Jun 2006
    Location
    The Netherlands
    Posts
    13,695

    Default

    You are using a Log4J SocketAppender which requires a connection to the remote server. Edit you log4j properties and remove/exclude that Appender and all should work.
    Marten Deinum
    Java Consultant / Pragmatist / Open Source Enthousiast / Author


    Pro Spring MVC: With Web Flow
    Conspect

    Have you read the reference guide.
    Use the [ code ] tags, young padawan

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •