• XML Web 服务 Eclipse实现中的sun-jaxws.xml文件


    说明

    在sun-jaxws.xml文件,可以配置endpoint、handler-chain等内容。在这个文件中配置的内容会覆盖在Java代码中使用注解属性配置的的内容。

    这个文件根据自己的项目内容修改完成以后,作为web应用的一部分部署到web容器中(放到web应用的WEB-INF目录下,和web.xml文件放到同一个目录下面):
    在这里插入图片描述

    这个文件可以自己从头编写,也可以在样例的基础上修改。

    如果要找样例文件,可以从下面官网下载实现的独立发布包:https://eclipse-ee4j.github.io/metro-jax-ws/
    解压后,在samples目录下的每个样例中都能找到这个文件,例如:
    在这里插入图片描述
    内容示例:

    <?xml version="1.0" encoding="UTF-8"?>
    <!--
    
        Copyright (c) 1997, 2019 Oracle and/or its affiliates. All rights reserved.
    
        This program and the accompanying materials are made available under the
        terms of the Eclipse Distribution License v. 1.0, which is available at
        http://www.eclipse.org/org/documents/edl-v10.php.
    
        SPDX-License-Identifier: BSD-3-Clause
    
    -->
    
    <endpoints
        xmlns="http://java.sun.com/xml/ns/jax-ws/ri/runtime"
        version="2.0">
    
        <endpoint
            name="catalog"
            interface="catalog.server.AddNumbersPortType"
            implementation="catalog.server.AddNumbersImpl"
            wsdl="WEB-INF/wsdl/AddNumbers.wsdl"
            service="{http://example.com}AddNumbersService"
            port="{http://example.com}AddNumbersPort"
            url-pattern="/addnumbers" />
    
    </endpoints>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27

    sun-jaxws.xml文件中可以包含多个endpoint

    endpoint就是web服务的端点。在sun-jaxws.xml文件中可以包含多个endpoint。

    示例:例如有两个RESTful的web服务,sun-jaxws.xml文件的内容:

    <?xml version="1.0" encoding="UTF-8"?>
    
    <endpoints
        xmlns="http://java.sun.com/xml/ns/jax-ws/ri/runtime"
        version="2.0">
    
        <endpoint
            name="power-restful-addnumbers"
            implementation="com.thb.server.AddNumbersImpl"
            url-pattern="/addnumbers/*" />
    
        <endpoint
            name="power-restful-addnumbers2"
            implementation="com.thb.server.AddNumbers2"
            url-pattern="/addnumbers2/*" />
    </endpoints>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16

    web.xml文件中的内容:

    <?xml version="1.0" encoding="UTF-8"?>
    
    <web-app version="6.0" xmlns="https://jakarta.ee/xml/ns/jakartaee"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/web-app_6_0.xsd">
        <description>restful</description>
        <display-name>restful</display-name>
        <listener>
            <listener-class>com.sun.xml.ws.transport.http.servlet.WSServletContextListener</listener-class>
        </listener>
        <servlet>
            <description>JAX-WS endpoint - restful</description>
            <display-name>restful</display-name>
            <servlet-name>restful-addnumbers</servlet-name>
            <servlet-class>com.sun.xml.ws.transport.http.servlet.WSServlet</servlet-class>
            <load-on-startup>1</load-on-startup>
        </servlet>
        <servlet-mapping>
            <servlet-name>restful-addnumbers</servlet-name>
            <url-pattern>/addnumbers/*
            /addnumbers2/*
        
        
            60
        
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26

    部署到tomcat以后:
    访问服务1:
    在这里插入图片描述
    访问服务2:
    在这里插入图片描述

  • 相关阅读:
    axios和Ajax
    RobotFramework自动化测试框架系列学习----(三)Web自动化原理+实操
    React组件 - 实现侧滑删除
    聊聊前端鉴权方案
    【华为OD机试真题 python】 连续字母长度【2022 Q4 | 100分】
    艾美捷试剂级SM-102解决方案
    文件扫描模块
    c++ 后台小练习--基于Vue的在线记事本
    RabbitMQ安装
    webScoket长连接人性化解读
  • 原文地址:https://blog.csdn.net/panghuangang/article/details/134373724