jakarta.jws.WebMethod Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of jakarta.jws-api Show documentation
Show all versions of jakarta.jws-api Show documentation
Jakarta Web Services Metadata API
/*
* Copyright (c) 2018, 2020 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
*/
package jakarta.jws;
import java.lang.annotation.Target;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
/**
* Customizes a method that is exposed as a Web Service operation.
* The associated method must be public and its parameters return value,
* and exceptions must follow the rules defined in Jakarta XML Web Services Specification, section 5.
*
* The method is not required to throw java.rmi.RemoteException.
*
* @since 1.6
*/
@Retention(value = RetentionPolicy.RUNTIME)
@Target({ElementType.METHOD})
public @interface WebMethod {
/**
* Name of the wsdl:operation matching this method.
*
* @specdefault Name of the Java method.
*/
String operationName() default "";
/**
* The action for this operation.
*
* For SOAP bindings, this determines the value of the soap action.
*/
String action() default "";
/**
* Marks a method to NOT be exposed as a web method.
*
* Used to stop an inherited method from being exposed as part of this web service.
* If this element is specified, other elements MUST NOT be specified for the @WebMethod.
*
* This member-value is not allowed on endpoint interfaces.
*
* @since 2.0
*/
boolean exclude() default false;
};