刚开始学spring,写了个beans.xml配置的测试文件,如下:
import net.nyist.model.User;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;public class UserServiceTest { @Test
public void testAdd() throws Exception{

ApplicationContext ctx = new ClassPathXmlApplicationContext("beans.xml");
UserService service = (UserService)ctx.getBean("userService");

User user = new User();
user.setUserName("zhangsan");
user.setPassword("0815");
service.add(user);
}
public static void main(String[] args){

}}
单元测试时,却出现以下的异常:
Could not connect to:  : 1398
java.net.ConnectException: Connection refused: connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
at java.net.Socket.connect(Socket.java:519)
at java.net.Socket.connect(Socket.java:469)
at java.net.Socket.<init>(Socket.java:366)
at java.net.Socket.<init>(Socket.java:180)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.connect(RemoteTestRunner.java:560)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:377)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)
   很郁闷,我根本都没有用到网络连接,竟然出现.net异常,在网上找了半天也没找到解决的答案,希望高手们来看看,帮帮
小弟啊,不然下面的学习就继续不下去了。

解决方案 »

  1.   

    UserService 代码贴出来看看,根据已有的信息看不出什么
      

  2.   

    UserService 代码:
    package net.nyist.service;import net.nyist.DAO.UserDao;
    import net.nyist.model.User;public class UserService {

    private UserDao userDaoImpler ; 
    public void add(User u){
    this.userDaoImpler.save(u);
    }
    public UserDao getUserDaoImpler() {
    return userDaoImpler;
    }
    public void setUserDaoImpler(UserDao userDaoImpler) {
    this.userDaoImpler = userDaoImpler;
    }}
    UserDaoImpler.java代码:
    package net.nyist.DAO.impleD;import net.nyist.DAO.UserDao;
    import net.nyist.model.User;public class UserDaoImpler implements UserDao{ @Override
    public void save(User u) {
    System.out.println("a Use saved!");

    }

    }
      

  3.   

    刚开始学spring的第一个小测试程序,跟着视频教程做的,思路也都理解了,我把教程的代码拷到我的myeclipse上运行,也会出现同样的错误,另外这是一个javaproject项目,好像根本没牵涉到数据库和网络连接着两个,所以逻辑上是绝对不可能出现这两种错误的,竟然出现了,很郁闷~~~
      

  4.   

    这个确实很奇怪啊,你的spring配置文件里面有没有配置dataSource呢,spring配置文件根据你这个例子应该写成这样<?xml version="1.0" encoding="UTF-8"?>
    <beans
    xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:p="http://www.springframework.org/schema/p"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
    <bean class="dao.UserDaoImpl" id="userDao"></bean>
    <bean id="userService" class="service.UserServiceImpl">
    <property name="userDao" ref="userDao"></property></bean></beans>
      

  5.   

    dataSource是你上面配置文件中的哪部分啊? 呵呵 ,我的配置文件跟你的差不多,如下:<?xml version="1.0" encoding="utf-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
           xsi:schemaLocation="http://www.springframework.org/schema/beans
               http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
    <bean id="user" class="net.nyist.DAO.impleD.UserDaoImpler">
    </bean>
    <bean id="userService" class="net.nyist.service.UserService">
    <property name="userDaoImpler" ref="user"/>
    </bean><!-- 
    <constructor-arg>
    <ref bean="user"/>
    </constructor-arg>
     -->
    </beans>
    麻烦您看看是哪里出问题了?
      

  6.   

    这个东西的关系到你的dao层是怎么实现的啦,你在userDaoImpler当中的数据库操作正确吗,你有用template没,如果有的话,你还得加上数据库的配置,如果没有的话,你得检查一下你的jdbc有没有错误信息!
      

  7.   

    呵呵,谢谢你不嫌小弟愚钝,回答小弟的问题,我刚才在网上查了,终于找出答案了,如下:
    org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing XML document from class path resource [applicationContext.xml]; nested exception is com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException: Invalid byte 2 of 2-byte UTF-8 sequence.
     org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:390)没见过的问题,上网查了一下,说是xml中有不符合的字符,尝试使用txt打开,检测,保存为ANSI字符集。终于实现了,时间用了不少,不过还是学到东西挺多
    ,分给你啦