在applicationcontext.xml文件中,我们有这样的文件
<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/" />这个定义是什么意思?
我的问题是文森特类是如何被调用的?
发布于 2011-10-02 10:47:27
CXF提供了一个custom spring namespace来帮助您轻松地在这里配置webservice端点。
如果实现者以#开头,CXF会假设endpoint is a Spring Bean与您的情况相同。
端点必须是一个普通的JAX-WS端点,即使用@Webservice注解进行注释,例如:
@WebService(serviceName="MemberService", endpointInterface="org.bk.memberservice.endpoint.MemberEndpoint", targetNamespace="http://bk.org/memberservice/")现在,对您的uri-/vincent/soap的任何调用都将由CXF前端控制器(您可以在web.xml文件中注册)重定向:
<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的内部注册表,并适当地分派请求。
发布于 2011-10-02 02:55:11
据我所知,那里创建了代理类,它将所有的调用转发给你的真正的类。
另请参阅描述所有jaxws:endpoint属性的Configuring an Endpoint。
https://stackoverflow.com/questions/7554528
复制相似问题