SSH2集成CXF提供WebService服务

    技术2022-05-20  36

    SSH2+CXF_v2.1.2时,服务器端(webservice)的自动装载(注入)并不成功。

    发现服务器启动的时候发现一条信息:org.apache.cxf.common.injection.ResourceInjector visitField

    info:  failed to resolve resource  com.skyarm.system.service.teacherServiceImpl/teacherDao.

     

    解决方法:

    <!--发布WebService接口-->   

    <jaxws:endpoint id="TeacherService" implementor="#teacherService" implementorClass="com.skyarm.system.service.TeacherServiceImpl" address="/TeacherService"/>

     

    @WebService @Service("teacherService") public class TeacherServiceImpl implements TeacherService { @Resource private TeacherDao teacherDao; public CreateStat createTeacher(@WebParam(name = "teacher")TeacherPO teacher) { return this.teacherDao.createTeacher(teacher); }

     

    public void setTeacherDao(TeacherDao teacherDao) { this.teacherDao = teacherDao; }

     

    }

    主要区别是原本jaxws中的implementor属性是直接写实现类的fullClass,

    现在改成ref bean的方式,使用@Service注解标记实现类为一个bean,

    然后implementor属性用# + bean的名字来指向这个bean即可。

     


    最新回复(0)