自从我使用Spring以来,已经很长时间了,我第一次从头开始在Web服务上设置Spring,所以...我可能会在这里问一些愚蠢的问题。
我的服务及其所有bean都是使用CXF构建的。实现者的相关部分如下所示:
...
@WebService(
endpointInterface = "mil.army.sddc.ibs.ccr.datamgmt.DataMgmtPortType",
name="DataMgmt_Service",
portName="DataMgmt_Port",
targetNamespace = "http://ccr.ibs.sddc.army.mil/DataMgmt")
@Service("dataMgmtWebService")
public class DataMgmtWebServiceImpl implements DataMgmtPortType {
@Autowired
private RSNCodeDAO rsnCodeDAO;
...
那DAO,看起来像这样
@Repository
public class RSNCodeDAO {
...
位于applicationcontext.xml中:
<?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:context="http://www.springframework.org/schema/context"
xmlns:jaxws="http://cxf.apache.org/jaxws"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd
http://cxf.apache.org/jaxws
http://cxf.apache.org/schemas/jaxws.xsd">
<context:component-scan base-package="https"/>
<context:annotation-config />
<context:component-scan base-package="mil.army.sddc.ibs.ccr.dbwrapper.dao" />
<bean id="impl" class="mil.army.sddc.ibs.ccr.datamgmt.webservice.DataMgmtWebServiceImpl"/>
<bean id="reasonCodeDAO"
class="mil.army.sddc.ibs.ccr.dbwrapper.dao.RSNCodeDAO" autowire="byName" />
<jaxws:endpoint
id="dataMgmtWebService"
implementor="#impl"
address="/DataMgmt" />
最后,我不确定你是否需要它,但这里是web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
id="WebApp_ID" version="2.5">
<display-name>CCRDataMgmt</display-name>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/applicationContext.xml</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
</web-app>
所以,如果其中一个人都知道我忘记了什么愚蠢的事情,我会很感激。
编辑:已请求堆栈跟踪。我还没有设置日志记录,所以对soap异常响应格式表示道歉。
答案 0 :(得分:-1)
而不是`
<context:component-scan base-package="https"/>`
<context:component-scan base-package="mil.army.sddc.ibs.ccr.dbwrapper.dao" />
`
尝试使用<context:component-scan base-package="https, mil.army.sddc.ibs.ccr.dbwrapper.dao"/>
我假设你的DataMgmtWebServiceImpl
类住在“https”包下。