使用一个@Endpoint
注释类尝试简单的Web Service Hello World示例时,使用<sws:annotation-driven/>
命名空间时未注册Endpoint。
但是,通过添加通常的<context:component-scan>
,一切正常,Endpoint-class已正确注册。
这仅适用于@Endpoint
注释,所有其他注释(@RequestPayload
,@ResponsePayload
,@PayloadRoot
)将按预期由sws-namespace注册。
此命名空间是否也不应处理@Endpoint
注释?
<beans>
<!-- works for all annotations except @Endpoint -->
<sws:annotation-driven/>
<!-- when activated, @Endpoint is registered correctly <context:component-scan/> -->
</beans>
答案 0 :(得分:3)
这是一个已知的SWS错误:https://jira.springsource.org/browse/SWS-702。
答案 1 :(得分:2)
现在使用,如:
<context:component-scan base-package="com.coral.project.endpoints"/>
<sws:annotation-driven marshaller="marshaller" unmarshaller="marshaller"/>
这会找到@Endpoint和@ PayloadRoot,@ ResponsePayload注释。 这是他们告诉你在Spring-WS引用中执行它的方式: