首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >关于Spring和Apache CXF集成

关于Spring和Apache CXF集成
EN

Stack Overflow用户
提问于 2011-09-26 19:41:16
回答 2查看 811关注 0票数 0

在applicationcontext.xml文件中,我们有这样的文件

代码语言:javascript
复制
  <bean id="vincent" class="com.bayer.vincent.service.vincent"/>

  <jaxws:endpoint
      id="vincentSOAP"
      implementor="#vincent"
      implementorClass="com.bayer.vincent.service.vincent"
      address="/vincent/soap"
      bindingUri="http://schemas.xmlsoap.org/wsdl/soap/" />

这个定义是什么意思?

我的问题是文森特类是如何被调用的?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-10-02 10:47:27

CXF提供了一个custom spring namespace来帮助您轻松地在这里配置webservice端点。

如果实现者以#开头,CXF会假设endpoint is a Spring Bean与您的情况相同。

端点必须是一个普通的JAX-WS端点,即使用@Webservice注解进行注释,例如:

代码语言:javascript
复制
@WebService(serviceName="MemberService", endpointInterface="org.bk.memberservice.endpoint.MemberEndpoint", targetNamespace="http://bk.org/memberservice/")

现在,对您的uri-/vincent/soap的任何调用都将由CXF前端控制器(您可以在web.xml文件中注册)重定向:

代码语言:javascript
复制
<servlet>
    <servlet-name>CXFServlet</servlet-name>
    <servlet-class>org.apache.cxf.transport.servlet.CXFServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
</servlet>

它维护到处理程序(在本例中为Spring bean)的有效负载uri的内部注册表,并适当地分派请求。

票数 0
EN

Stack Overflow用户

发布于 2011-10-02 02:55:11

据我所知,那里创建了代理类,它将所有的调用转发给你的真正的类。

另请参阅描述所有jaxws:endpoint属性的Configuring an Endpoint

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7554528

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档