6条回答 默认 最新
- 自断经脉 2017-09-21 07:42关注
你不用上这么多图,我知道了为什么。
你上面是图片,我没法复制,下面我简短写的demo,你照着修改就行了!解决方法:
<!--发布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即可。所以你的问题是发布的暴露接口那个类没有使用@Service直接注解标记成一个bean,然后你就直接用 #TestServiceImpl了。
可这样修改:在TestServiceImpl了上面加一个@Service("TestServiceImpl了")。纯手打,希望您能给分!!!!
解决 无用评论 打赏 举报