| <?xml version="1.0" encoding="UTF-8"?> |
| <xsd:schema xmlns="http://www.w3.org/2001/XMLSchema" |
| targetNamespace="https://jakarta.ee/xml/ns/jakartaee" |
| xmlns:jakartaee="https://jakarta.ee/xml/ns/jakartaee" |
| xmlns:xsd="http://www.w3.org/2001/XMLSchema" |
| elementFormDefault="qualified" |
| attributeFormDefault="unqualified" |
| version="2.0"> |
| <xsd:annotation> |
| <xsd:documentation> |
| |
| Copyright (c) 2009, 2020 Oracle and/or its affiliates. All rights reserved. |
| |
| This program and the accompanying materials are made available under the |
| terms of the Eclipse Public License v. 2.0, which is available at |
| http://www.eclipse.org/legal/epl-2.0. |
| |
| This Source Code may also be made available under the following Secondary |
| Licenses when the conditions for such availability set forth in the |
| Eclipse Public License v. 2.0 are satisfied: GNU General Public License, |
| version 2 with the GNU Classpath Exception, which is available at |
| https://www.gnu.org/software/classpath/license.html. |
| |
| SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 |
| |
| </xsd:documentation> |
| </xsd:annotation> |
| |
| <xsd:annotation> |
| <xsd:documentation> |
| |
| (C) Copyright International Business Machines Corporation 2002 |
| |
| </xsd:documentation> |
| </xsd:annotation> |
| |
| <xsd:annotation> |
| <xsd:documentation> |
| <![CDATA[ |
| The webservices element is the root element for the web services |
| deployment descriptor. It specifies the set of web service |
| descriptions that are to be deployed into the Jakarta EE Application |
| Server and the dependencies they have on container resources and |
| services. The deployment descriptor must be named |
| "META-INF/webservices.xml" in the web services' jar file. |
| |
| Used in: webservices.xml |
| |
| All webservices deployment descriptors must indicate the |
| webservices schema by using the Jakarta EE namespace: |
| |
| https://jakarta.ee/xml/ns/jakartaee |
| |
| and by indicating the version of the schema by using the version |
| element as shown below: |
| |
| <webservices 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/jakartaee_web_services_2_0.xsd" |
| version="2.0"> |
| ... |
| </webservices> |
| |
| The instance documents may indicate the published version of the |
| schema using the xsi:schemaLocation attribute for the Jakarta EE |
| namespace with the following location: |
| |
| https://jakarta.ee/xml/ns/jakartaee/jakartaee_web_services_2_0.xsd |
| |
| ]]> |
| </xsd:documentation> |
| </xsd:annotation> |
| |
| <xsd:annotation> |
| <xsd:documentation> |
| |
| The following conventions apply to all Jakarta EE |
| deployment descriptor elements unless indicated otherwise. |
| |
| - In elements that specify a pathname to a file within the |
| same JAR file, relative filenames (i.e., those not |
| starting with "/") are considered relative to the root of |
| the JAR file's namespace. Absolute filenames (i.e., those |
| starting with "/") also specify names in the root of the |
| JAR file's namespace. In general, relative names are |
| preferred. The exception is .war files where absolute |
| names are preferred for consistency with the Servlet API. |
| |
| </xsd:documentation> |
| </xsd:annotation> |
| |
| <xsd:include schemaLocation="jakartaee_9.xsd"/> |
| |
| |
| <!-- **************************************************** --> |
| |
| <xsd:element name="webservices" |
| type="jakartaee:webservicesType"> |
| <xsd:annotation> |
| <xsd:documentation> |
| |
| The webservices element is the root element for the web services |
| deployment descriptor. It specifies the set of web service |
| descriptions that are to be deployed into the Jakarta EE Application Server |
| and the dependencies they have on container resources and services. |
| |
| Used in: webservices.xml |
| |
| </xsd:documentation> |
| </xsd:annotation> |
| <xsd:key name="webservice-description-name-key"> |
| <xsd:annotation> |
| <xsd:documentation> |
| |
| The webservice-description-name identifies the collection of |
| port-components associated with a WSDL file and Jakarta XML RPC mapping. |
| The name must be unique within the deployment descriptor. |
| |
| </xsd:documentation> |
| </xsd:annotation> |
| <xsd:selector xpath="jakartaee:webservice-description"/> |
| <xsd:field xpath="jakartaee:webservice-description-name"/> |
| </xsd:key> |
| </xsd:element> |
| |
| |
| <!-- **************************************************** --> |
| |
| <xsd:complexType name="port-componentType"> |
| <xsd:annotation> |
| <xsd:documentation> |
| |
| The port-component element associates a WSDL port with a web service |
| interface and implementation. It defines the name of the port as a |
| component, optional description, optional display name, optional iconic |
| representations, WSDL port QName, Service Endpoint Interface, Service |
| Implementation Bean. |
| |
| This element also associates a WSDL service with a Jakarta XML Web Services |
| Provider implementation. |
| |
| </xsd:documentation> |
| </xsd:annotation> |
| <xsd:sequence> |
| <xsd:element name="description" |
| type="jakartaee:descriptionType" |
| minOccurs="0" |
| maxOccurs="1"/> |
| <xsd:element name="display-name" |
| type="jakartaee:display-nameType" |
| minOccurs="0" |
| maxOccurs="1"/> |
| <xsd:element name="icon" |
| type="jakartaee:iconType" |
| minOccurs="0" |
| maxOccurs="1"/> |
| <xsd:element name="port-component-name" |
| type="jakartaee:string"> |
| <xsd:annotation> |
| <xsd:documentation> |
| <![CDATA[ |
| The port-component-name element specifies a port component's |
| name. This name is assigned by the module producer to name |
| the service implementation bean in the module's deployment |
| descriptor. The name must be unique among the port component |
| names defined in the same module. |
| |
| Used in: port-component |
| |
| Example: |
| <port-component-name>EmployeeService |
| </port-component-name> |
| |
| ]]> |
| </xsd:documentation> |
| </xsd:annotation> |
| </xsd:element> |
| <xsd:element name="wsdl-service" |
| type="jakartaee:xsdQNameType" |
| minOccurs="0" |
| maxOccurs="1"> |
| <xsd:annotation> |
| <xsd:documentation> |
| |
| Defines the name space and local name part of the WSDL |
| service QName. This is required to be specified for |
| port components that are Jakarta XML Web Services |
| Provider implementations. |
| |
| </xsd:documentation> |
| </xsd:annotation> |
| </xsd:element> |
| <xsd:element name="wsdl-port" |
| type="jakartaee:xsdQNameType" |
| minOccurs="0" |
| maxOccurs="1"> |
| <xsd:annotation> |
| <xsd:documentation> |
| |
| Defines the name space and local name part of the WSDL |
| port QName. This is not required to be specified for port |
| components that are Jakarta XML Web Services Provider |
| implementations |
| |
| </xsd:documentation> |
| </xsd:annotation> |
| </xsd:element> |
| <xsd:element name="enable-mtom" |
| type="jakartaee:true-falseType" |
| minOccurs="0" |
| maxOccurs="1"> |
| <xsd:annotation> |
| <xsd:documentation> |
| |
| Used to enable or disable SOAP MTOM/XOP mechanism for an |
| endpoint implementation. |
| |
| Not to be specified for Jakarta XML RPC runtime |
| |
| </xsd:documentation> |
| </xsd:annotation> |
| </xsd:element> |
| <xsd:element name="mtom-threshold" |
| type="jakartaee:xsdNonNegativeIntegerType" |
| minOccurs="0" |
| maxOccurs="1"> |
| <xsd:annotation> |
| <xsd:documentation> |
| |
| When MTOM is enabled, binary data above this size in bytes |
| will be XOP encoded or sent as attachment. Default value is 0. |
| |
| Not to be specified for Jakarta XML RPC runtime |
| |
| </xsd:documentation> |
| </xsd:annotation> |
| </xsd:element> |
| <xsd:element name="addressing" |
| type="jakartaee:addressingType" |
| minOccurs="0" |
| maxOccurs="1"> |
| <xsd:annotation> |
| <xsd:documentation> |
| |
| This specifies the WS-Addressing requirements for a Jakarta XML |
| web service. It corresponds to jakarta.xml.ws.soap.Addressing |
| annotation or its feature jakarta.xml.ws.soap.AddressingFeature. |
| |
| See the addressingType for more information. |
| |
| Not to be specified for Jakarta XML RPC runtime |
| |
| </xsd:documentation> |
| </xsd:annotation> |
| </xsd:element> |
| <xsd:element name="respect-binding" |
| type="jakartaee:respect-bindingType" |
| minOccurs="0" |
| maxOccurs="1"> |
| <xsd:annotation> |
| <xsd:documentation> |
| |
| Corresponds to the jakarta.xml.ws.RespectBinding annotation |
| or its corresponding jakarta.xml.ws.RespectBindingFeature web |
| service feature. This is used to control whether a Jakarta XML Web |
| Services implementation must respect/honor the contents of the |
| wsdl:binding in the WSDL that is associated with the service. |
| |
| Not to be specified for Jakarta XML RPC runtime |
| |
| </xsd:documentation> |
| </xsd:annotation> |
| </xsd:element> |
| <xsd:element name="protocol-binding" |
| type="jakartaee:protocol-bindingType" |
| minOccurs="0" |
| maxOccurs="1"> |
| <xsd:annotation> |
| <xsd:documentation> |
| |
| Used to specify the protocol binding used by the port-component. |
| If this element is not specified, then the default binding is |
| used (SOAP 1.1 over HTTP) |
| |
| </xsd:documentation> |
| </xsd:annotation> |
| </xsd:element> |
| <xsd:element name="service-endpoint-interface" |
| type="jakartaee:fully-qualified-classType" |
| minOccurs="0" |
| maxOccurs="1"> |
| <xsd:annotation> |
| <xsd:documentation> |
| <![CDATA[ |
| The service-endpoint-interface element contains the |
| fully-qualified name of the port component's Service Endpoint |
| Interface. |
| |
| Used in: port-component |
| |
| Example: |
| <remote>com.wombat.empl.EmployeeService</remote> |
| |
| This may not be specified in case there is no Service |
| Enpoint Interface as is the case with directly using an |
| implementation class with the @WebService annotation. |
| |
| When the port component is a Provider implementation |
| this is not specified. |
| |
| ]]> |
| </xsd:documentation> |
| </xsd:annotation> |
| </xsd:element> |
| <xsd:element name="service-impl-bean" |
| type="jakartaee:service-impl-beanType"/> |
| <xsd:choice> |
| <xsd:element name="handler" |
| type="jakartaee:handlerType" |
| minOccurs="0" |
| maxOccurs="unbounded"> |
| <xsd:annotation> |
| <xsd:documentation> |
| |
| To be used with Jakarta XML RPC based runtime only. |
| |
| </xsd:documentation> |
| </xsd:annotation> |
| </xsd:element> |
| <xsd:element name="handler-chains" |
| type="jakartaee:handler-chainsType" |
| minOccurs="0" |
| maxOccurs="1"> |
| <xsd:annotation> |
| <xsd:documentation> |
| |
| To be used with Jakarta XML Web Services based runtime only. |
| |
| </xsd:documentation> |
| </xsd:annotation> |
| </xsd:element> |
| </xsd:choice> |
| </xsd:sequence> |
| <xsd:attribute name="id" |
| type="xsd:ID"/> |
| </xsd:complexType> |
| |
| |
| <!-- **************************************************** --> |
| |
| <xsd:complexType name="service-impl-beanType"> |
| <xsd:annotation> |
| <xsd:documentation> |
| |
| The service-impl-bean element defines the web service implementation. |
| A service implementation can be an enterprise bean class or Jakarta |
| XML RPC web component. Existing enterprise bean implementations |
| are exposed as a web service using an ejb-link. |
| |
| Used in: port-component |
| |
| </xsd:documentation> |
| </xsd:annotation> |
| <xsd:choice> |
| <xsd:element name="ejb-link" |
| type="jakartaee:ejb-linkType"/> |
| <xsd:element name="servlet-link" |
| type="jakartaee:servlet-linkType"/> |
| </xsd:choice> |
| <xsd:attribute name="id" |
| type="xsd:ID"/> |
| </xsd:complexType> |
| |
| |
| <!-- **************************************************** --> |
| |
| <xsd:complexType name="servlet-linkType"> |
| <xsd:annotation> |
| <xsd:documentation> |
| <![CDATA[ |
| The servlet-link element is used in the service-impl-bean element |
| to specify that a Service Implementation Bean is defined as a |
| Jakarta XML RPC Service Endpoint. |
| |
| The value of the servlet-link element must be the servlet-name of |
| a Jakarta XML RPC Service Endpoint in the same WAR file. |
| |
| Used in: service-impl-bean |
| |
| Example: |
| <servlet-link>StockQuoteService</servlet-link> |
| |
| ]]> |
| </xsd:documentation> |
| </xsd:annotation> |
| <xsd:simpleContent> |
| <xsd:restriction base="jakartaee:string"/> |
| </xsd:simpleContent> |
| </xsd:complexType> |
| |
| |
| <!-- **************************************************** --> |
| |
| <xsd:complexType name="webservice-descriptionType"> |
| <xsd:annotation> |
| <xsd:documentation> |
| |
| The webservice-description element defines a WSDL document file |
| and the set of Port components associated with the WSDL ports |
| defined in the WSDL document. There may be multiple |
| webservice-descriptions defined within a module. |
| |
| All WSDL file ports must have a corresponding port-component element |
| defined. |
| |
| Used in: webservices |
| |
| </xsd:documentation> |
| </xsd:annotation> |
| <xsd:sequence> |
| <xsd:element name="description" |
| type="jakartaee:descriptionType" |
| minOccurs="0" |
| maxOccurs="1"/> |
| <xsd:element name="display-name" |
| type="jakartaee:display-nameType" |
| minOccurs="0" |
| maxOccurs="1"/> |
| <xsd:element name="icon" |
| type="jakartaee:iconType" |
| minOccurs="0" |
| maxOccurs="1"/> |
| <xsd:element name="webservice-description-name" |
| type="jakartaee:string"> |
| <xsd:annotation> |
| <xsd:documentation> |
| |
| The webservice-description-name identifies the collection of |
| port-components associated with a WSDL file and Jakarta XML RPC |
| mapping. The name must be unique within the deployment descriptor. |
| |
| </xsd:documentation> |
| </xsd:annotation> |
| </xsd:element> |
| <xsd:element name="wsdl-file" |
| type="jakartaee:pathType" |
| minOccurs="0" |
| maxOccurs="1"> |
| <xsd:annotation> |
| <xsd:documentation> |
| |
| The wsdl-file element contains the name of a WSDL file in the |
| module. The file name is a relative path within the module. |
| |
| </xsd:documentation> |
| </xsd:annotation> |
| </xsd:element> |
| <xsd:element name="jaxrpc-mapping-file" |
| type="jakartaee:pathType" |
| minOccurs="0" |
| maxOccurs="1"> |
| <xsd:annotation> |
| <xsd:documentation> |
| |
| The jaxrpc-mapping-file element contains the name of a file that |
| describes the Jakarta XML RPC mapping between the Java interaces used by |
| the application and the WSDL description in the wsdl-file. The |
| file name is a relative path within the module. |
| |
| This is not required when JAX-Jakarta Enterprise Web Services based |
| runtime is used. |
| |
| </xsd:documentation> |
| </xsd:annotation> |
| </xsd:element> |
| <xsd:element name="port-component" |
| type="jakartaee:port-componentType" |
| minOccurs="1" |
| maxOccurs="unbounded"> |
| <xsd:key name="port-component_handler-name-key"> |
| <xsd:annotation> |
| <xsd:documentation> |
| |
| Defines the name of the handler. The name must be unique |
| within the module. |
| |
| </xsd:documentation> |
| </xsd:annotation> |
| <xsd:selector xpath="jakartaee:handler"/> |
| <xsd:field xpath="jakartaee:handler-name"/> |
| </xsd:key> |
| </xsd:element> |
| </xsd:sequence> |
| <xsd:attribute name="id" |
| type="xsd:ID"/> |
| </xsd:complexType> |
| |
| |
| <!-- **************************************************** --> |
| |
| <xsd:complexType name="webservicesType"> |
| <xsd:sequence> |
| <xsd:group ref="jakartaee:descriptionGroup"/> |
| <xsd:element name="webservice-description" |
| type="jakartaee:webservice-descriptionType" |
| minOccurs="1" |
| maxOccurs="unbounded"> |
| <xsd:key name="port-component-name-key"> |
| <xsd:annotation> |
| <xsd:documentation> |
| <![CDATA[ |
| The port-component-name element specifies a port |
| component's name. This name is assigned by the module |
| producer to name the service implementation bean in the |
| module's deployment descriptor. The name must be unique |
| among the port component names defined in the same module. |
| |
| Used in: port-component |
| |
| Example: |
| <port-component-name>EmployeeService |
| </port-component-name> |
| |
| |
| |
| ]]> |
| </xsd:documentation> |
| </xsd:annotation> |
| <xsd:selector xpath="jakartaee:port-component"/> |
| <xsd:field xpath="jakartaee:port-component-name"/> |
| </xsd:key> |
| </xsd:element> |
| </xsd:sequence> |
| <xsd:attribute name="version" |
| type="jakartaee:dewey-versionType" |
| fixed="2.0" |
| use="required"> |
| <xsd:annotation> |
| <xsd:documentation> |
| |
| The required value for the version is 2.0. |
| |
| </xsd:documentation> |
| </xsd:annotation> |
| </xsd:attribute> |
| <xsd:attribute name="id" |
| type="xsd:ID"/> |
| </xsd:complexType> |
| |
| </xsd:schema> |