jakarta.jws.WebMethod Maven / Gradle / Ivy
/*
* Copyright (c) 2018, 2021 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 {@code wsdl:operation} matching this method.
*
* @return the name of the {@code wsdl:operation}
* @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.
*
* @return the 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.
*
* @return value of {@code true} to mark the method to not be exposed or {@code false} otherwise
* @since 2.0
*/
boolean exclude() default false;
};
© 2015 - 2024 Weber Informatics LLC | Privacy Policy