`
Frederick
  • 浏览: 118220 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

CXF在同时发布两个类的时候出错

阅读更多

    试了好多次,都是这样。当使用Spring配置来发布两个或以上的类作为WebService的时候,只有配置文件里面的第一个可以被成功发布,以后的都会出错。

    配置文件如下:

xml 代码
  1. <jaxws:endpoint id="SampleService"     
  2.     implementor="fred.web.webservice.implementation.SampleServiceImpl" address="/SampleService">     
  3.     <jaxws:serviceFactory>     
  4.         <ref bean="jaxWsServiceFactoryBean"/>     
  5.     jaxws:serviceFactory>     
  6. jaxws:endpoint>     
  7.        
  8. <jaxws:endpoint id="ServiceForNetGeo"     
  9.     implementor="fred.web.webservice.implementation.ServiceForNetGeoImpl" address="/ServiceForNetGeo">     
  10.     <jaxws:serviceFactory>     
  11.         <ref bean="jaxWsServiceFactoryBean"/>     
  12.     jaxws:serviceFactory>     
  13. jaxws:endpoint>    

        比如,一个的wsdl路径为http://localhost/CxfSservice/ws/SampleService?wsdl, 一个的wsdl路径为http://localhost/CxfService/ws/ServiceForNetGeo?wsdl。那么,浏览器中打开第一个的地址的时候,可以发现生成的wsdl是正确的。但是当打开第二个地址的时候,会发现生成的wsdl和第一个地址的是一样的。

        查找了CXF提供的示例,都是只发布一个类的,没有发现有同时发布两个类的例子。或者这是CXF的bug?

分享到:
评论
2 楼 Frederick 2007-10-18  
谢谢Jnn同学的指点。我做过测试以后,确实如此。
1 楼 jnn 2007-10-15  

你需要为不同的endpoint设置不同的ServiceFactory,具体的原因在CXF的mail list中有讨论

You can't reuse the service factory for two jaxws endpoints.
When the service factory create the endpoint, it will not create a new service model if the service factory's model is already there.
You need create a new service factory for endpoint to use.

相关推荐

    cxf开发webservice所用jar包

    CXF支持这两种模式,使得开发者可以方便地创建、发布和消费Web服务。CXF的强项在于其丰富的API,强大的WS-*规范支持(如WS-Security、WS-Addressing等),以及与Spring的无缝集成,这使得在Spring应用中使用CXF变得...

    CXF拦截器(Interceptor)的使用

    这两个抽象类分别代表了具有属性存储功能和仅实现基础拦截器提供功能的实现。`AbstractAttributedInterceptorProvider`继承了`HashMap`,允许存储额外的属性信息,而`AbstractBasicInterceptorProvider`则专注于提供...

    Java2WSDL和WSDL2Java操作指南.doc

    本指南将详细解释这两个工具的用途、工作原理以及如何在实际项目中应用。 Java2WSDL工具允许开发者从已经实现的Java类或者接口生成WSDL(Web Services Description Language)文件。WSDL是一种XML格式的规范,用于...

    通向架构师的道路(第十天)之Axis2 Web Service(一).docx

    * 在工程和 src 平级处新建一个目录叫 external-lib,并将 tomcat 里的用于 jsp, servlet 解析的两个 lib 拷入此 external-lib 目录,并且以“加载外部jar”的方式加入工程的 classpath 中去。 * 在工程的 WEB-INF ...

    xfirespring整合使用原代码

    1. **添加依赖**:在项目中引入XFire和Spring的相关库,确保项目可以识别和使用这两个框架。 2. **配置Spring**:在Spring的配置文件(如`applicationContext.xml`)中定义Web服务的bean,包括服务接口和服务实现。...

    java.net.SocketException Connection reset 解决方法

    Conexion reset by peer 异常的原因有两个: 1. 一端的 Socket 被关闭(或主动关闭,或因为异常退出而引起的关闭),另一端仍发送数据,发送的第一个数据包引发该异常。 2. 一端退出,但退出时并未关闭该连接,另...

    同花顺笔试

    #### 一个网页的登录界面,有两个输入框和两个按钮,请列出测试要点和具体用例。 - **测试要点**: - **必填项验证**:用户名、密码是否为必填项。 - **输入限制**:验证输入框的最大字符限制。 - **密码复杂度*...

Global site tag (gtag.js) - Google Analytics