手动组装WebLogic Web Service

时间:2018-02-21 10:27:29

标签: web-services weblogic12c

我通过简单地使用以下内容创建“web-services.xml”来实现此guide中所述的webservice(并且我创建了'com.example.WorkFlowEntry'处理程序类):

<web-services>
<handler-chains>
   <handler-chain name="enterWorkflowChain">
       <handler class-name="com.example.WorkFlowEntry">
           <init-params>
               <init-param name="workflow-eng-jndi-name" 
                           value="workflow.entry" />
            </init-params>
       </handler>
   </handler-chain>
</handler-chains>
<web-service targetNamespace="http://example.com" 
              name="myworkflow" uri="myWorkflowService">
    <operations xmlns:xsd="http://www.w3.org/2001/XMLSchema" >
       <operation name="enterWorkflow" 
                  handler-chain="enterWorkflowChain"
                  invocation-style="one-way" />
    </operations>
</web-service>

我的问题是,当我在weblogic 11g中部署EAR文件时,''webservice已成功部署,我可以访问webservice的WSDL。当我在weblogic 12c中部署相同的EAR时,它已成功部署,但WSDL无法访问我得到404!

1 个答案:

答案 0 :(得分:0)

  

如果您正在使用手动组装weblogic Web服务,   Webservice 8.1环境。为此的最后一个Weblogic版本   可以使用的方法是Weblogic 12.1.1,从Weblogic 12.1.2发行,   8.1 WebLogic Web服务的运行时已删除。

表示使用'web-services.xml'来构建Web服务在Weblogic 12.1.1版本之前一直有效。对于较新的版本,您必须按照本link所述升级Web服务实现,这主要要进行(将10.x WebLogic Web Service(JAX-WS或JAX-RPC)升级到12.1.x)。 但是此解决方案可能会影响当前正在运行的客户端

就我而言,我不能要求客户更改其代码。因此,对于这种情况,我的解决方法是采用当前的WSDL并由 ant 手动生成Webservice,如本link中所述,该文档描述了如何使用wsdlc Ant任务生成以下工件:

  • 实现所描述的Web服务的JWS服务端点接口(SEI) 通过WSDL文件。

  • JWS实现文件,其中包含的部分(残端)实现 生成的JWS SEI。此文件必须由开发人员自定义。

  • JAXB数据绑定工件。

  • 生成的JWS SEI的可选Javadocs。