@WebService |
이 어노테이션은 Java 클래스 또는
SEI(service endpoint interface)를 웹 서비스 인터페이스 구현으로 표시합니다. 세 개 어노테이션의 특성만
JavaBeans 엔드포인트의
서비스 엔드포인트 구현 클래스와 사용 가능합니다. 이 세 특성은
serviceName, portName, endpointInterface입니다.
어노테이션이 endpointInterface 속성을
통해 SEI를 참조하면 SEI에는 @WebService 어노테이션도 있어야 합니다.
기본적으로, @WebService 어노테이션을
지정하는 클래스의 전체 공용 메소드는 웹 서비스에 표시됩니다.
|
- 어노테이션 대상: 유형
- 특성:
- - name
- wsdl:portType 이름입니다. name 특성은
SEI 또는 Java 구현
클래스에 맵핑됩니다. 기본값은 Java 인터페이스
또는 클래스의 비정규화 이름입니다. (문자열)
- - targetNamespace
- 웹 서비스에서 생성된 WSDL 및 XML 요소의 XML 네임스페이스를 지정합니다.
- @WebService.targetNamespace 어노테이션이 서비스 엔드포인트 인터페이스에 있는
경우 targetNamespace가 wsdl:portType(및 연관 XML 요소)의 네임스페이스에 사용됩니다.
- @WebService.targetNamespace 어노테이션이 (endpointInterface 어노테이션 요소를 통해)
서비스 엔드포인트 인터페이스를 참조하지 않는 서비스 구현 Bean에 있는 경우,
targetNamespace가 wsdl:portType 및 wsdl:service(및 연관 XML 요소) 둘 다에 사용됩니다.
- @WebService.targetNamespace 어노테이션이 (endpointInterface 어노테이션 요소를 통해)
서비스 엔드포인트 인터페이스를 참조하는 서비스 구현 Bean에 있는 경우,
targetNamespace가 wsdl:service(및 연관 XML 요소)에만 사용됩니다.
기본값은
웹 서비스를 포함하는 패키지 이름에서 맵핑된 네임스페이스입니다. (문자열)
- - serviceName
- 웹 서비스의 서비스 이름(wsdl:service)을 지정합니다.
이 특성은 엔드포인트 인터페이스에 허용되지 않습니다. 기본값은 Java 클래스
+ Service의 단순 이름입니다. (문자열)
- - endpointInterface
- 서비스의 추상 웹 서비스 계약을 정의하는 SEI(Service Endpoint Interface)의 완전한 이름을
지정합니다. 지정한 경우 서비스 엔드포인트 인터페이스가 추상 WSDL 계약을 판별하는 데 사용됩니다. (문자열)
- - portName
- wsdl:portName입니다. portName 특성은
엔드포인트 포트 이름입니다. 기본값은 WebService.name + Port입니다.
(문자열)
- - wsdlLocation
- 웹 서비스를 정의하는 WSDL 문서의 웹 주소를 지정합니다. 웹 주소는 상대적 또는 절대적입니다. (문자열)
|
@Retention(value = RetentionPolicy.RUNTIME)
@Target({TYPE})
public @interface WebService{
String name() default “”;
String targetNamespace() default “”;
String serviceName() default “”';
String wsdlLocation() default “”;
String endpointInterface() default “”;
String portName() default “”;
};
|
@WebMethod |
이 어노테이션은 웹 서비스 오퍼레이션인 메소드를
표시합니다. 이 어노테이션을 클라이언트나 서버 SEI(Service Endpoint Interface) 또는
JavaBeans
엔드포인트의 서비스 엔드포인트 구현 클래스에서 공용 메소드에 적용할 수 있습니다.
@WebMethod 어노테이션은 @WebService 어노테이션이 있는 클래스에서만 지원됩니다.
|
- 어노테이션 대상: 메소드
- 특성:
- - operationName
- 이 메소드에 일치하는 wsdl:operation 이름을 지정합니다. 기본값은
Java 메소드 이름입니다. (문자열)
- - action
- 이 오퍼레이션의 조치를 정의합니다. SOAP 바인딩의 경우 이 값은 SOAPAction 헤더 값을 판별합니다. (문자열)
- - exclude
- 웹 서비스에서 메소드를 제외할지 여부를 지정합니다. 이 특성은 구현 클래스와만 같이 사용할 수 있습니다. 상속된 메소드가 이 웹 서비스의 일부로 노출되는 것을
중지하는 데 사용됩니다. 이 요소가 지정된 경우,
@WebMethod에 다른 요소를 지정하면 안 됩니다. 이 특성은 엔드포인트 인터페이스에 허용되지 않습니다.
기본값은 false입니다.
(부울)
|
@Retention(value = RetentionPolicy.RUNTIME)
@Target({TYPE})
public @interface WebMethod{
String operationName() default “”;
String action() default “”;
boolean exclude() default false;
};
|
@Oneway |
이 어노테이션은 웹 서비스의 단방향 오퍼레이션으로 메소드를 표시합니다. 여기에는
입력 메시지가 포함되지만 출력 메시지는 포함되지 않습니다. 이 어노테이션은 리턴값이 없는 메소드에서만 사용할 수 있습니다. 이 어노테이션을 클라이언트나 서버 SEI(Service Endpoint Interface) 또는
JavaBeans
엔드포인트의 서비스 엔드포인트 구현 클래스에서 공용 메소드에 적용할 수 있습니다.
|
- 어노테이션 대상: 메소드
- OneWay 어노테이션에는 특성이 없습니다.
|
@Retention(value = RetentionPolicy.RUNTIME)
@Target({TYPE})
public @interface OneWay{
};
|
@WebParam |
이 어노테이션은 개별적인 매개변수에서 웹 서비스 메시지 파트와 XML 요소로의
맵핑을 사용자 정의합니다. 이 어노테이션을 클라이언트나 서버 SEI(Service Endpoint Interface) 또는
JavaBeans
엔드포인트의 서비스 엔드포인트 구현 클래스에서 공용 메소드에 적용할 수 있습니다.
|
- 어노테이션 대상: 매개변수
- 특성:
- - name
- 오퍼레이션이 원격 프로시저 호출(RPC) 스타일이고 partName 속성이 지정되지 않은 경우
이는 매개변수를 나타내는 wsdl:part 속성 이름입니다. 오퍼레이션이 문서 스타일이거나 매개변수가
헤더에 맵핑되는 경우 name은 매개변수를 나타내는 XML 요소의
로컬 이름입니다. 오퍼레이션이 문서 스타일이고 매개변수 스타일은 BARE이며
모드가 OUT 또는 INOUT인 경우에는 이 속성이 필수입니다. partName
속성을 지정하는 경우 name 속성은 무시됩니다. (문자열)
- - partName
- 이 매개변수를 나타내는 wsdl:part 속성 이름을 정의합니다. 오퍼레이션이
RPC 스타일이거나 오퍼레이션이 문서 스타일이고 매개변수 스타일이 BARE인
경우에만 이를 사용하십시오. (문자열)
- - targetNamespace
- 매개변수에 대한 XML 요소의 XML 네임스페이스를 지정합니다. 속성이 XML 요소에 맵핑되는 경우에
문서 바인딩에만 적용됩니다. 웹 서비스에 대한 기본값은 targetNamespace입니다. (문자열)
- - mode
- 값은 이 메소드에 대한 매개변수 플로우 방향을 나타냅니다.
올바른 값은 IN, INOUT, OUT입니다.
(문자열)
- - header
- 매개변수가 메시지 본문이 아닌 메시지 헤더에 있는지를 지정합니다. 기본값은 false입니다.
(부울)
|
@Retention(value = RetentionPolicy.RUNTIME)
@Target({PARAMETER})
public @interface WebParam{
public enum Mode{
IN,
OUT,
INOUT
};
String name() default “”;
String partName() default "";
String targetNamespace() default “”;
Mode mode() default Mode.IN
boolean header() default false;
};
|
@WebResult |
이 어노테이션은 리턴값이 WSDL 파트 또는 XML 요소에 맵핑되는 방법을
사용자 정의합니다. 이 어노테이션을 클라이언트나 서버 SEI(Service Endpoint Interface) 또는
JavaBeans
엔드포인트의 서비스 엔드포인트 구현 클래스에서 공용 메소드에 적용할 수 있습니다.
|
- 어노테이션 대상: 메소드
- 특성:
- - name
- 리턴값 이름이 WSDL 파일에 나열되고 연결 중에 메시지에서 찾을 수 있기 때문에
리턴값 이름을 지정합니다. RPC 바인딩의 경우 리턴값을 나타내는 wsdl:part 속성 이름입니다. 문서 바인딩의
경우 name 매개변수는 리턴값을 나타내는 XML 요소의 로컬 이름입니다.
기본값은 RPC 및 DOCUMENT/WRAPPED 바인딩에 대한 return입니다.
기본값은 DOCUMENT/BARE 바인딩에 대해 메소드 이름 + Response입니다. (문자열)
- - targetNamespace
- 리턴값의 XML 네임스페이스를 지정합니다. 이 어노테이션은 리턴값이 XML 요소에 맵핑될 때
문서 바인딩에만 사용하십시오. 기본값은 웹 서비스의 targetNamespace입니다. (문자열)
- - header
- 결과가 헤더에서 제공되는지 여부를 지정합니다. 기본값은 false입니다.
(문자열)
- - partName
- RPC 또는 DOCUMENT/BARE 오퍼레이션의 결과에 대한 파트 이름을 지정합니다.
기본값은 @WebResult.name입니다. (부울)
|
@Retention(value = RetentionPolicy.RUNTIME)
@Target({METHOD})
public @interface WebResult{
String name() default “return”;
String targetNamespace default() “”;
boolean header() default false;
String partName() default "";
};
|
@HandlerChain |
이 어노테이션은 웹 서비스를 외부에 정의된 핸들러 체인에
연관시킵니다. 핸들러 구성이 여러 웹 서비스에서 공유되어야 하고 애플리케이션 소스에서
임베드하는 핸들러 구성이 비효율적인 경우에 이 어노테이션을 사용할 수 있습니다. 이 어노테이션을 클라이언트나 서버 SEI(Service Endpoint Interface) 또는
JavaBeans 엔드포인트의
서비스 엔드포인트 구현 클래스에 적용하십시오.
|
- 어노테이션 대상: 유형
- 특성:
- - file
- 핸들러 체인 파일 위치를 지정합니다. 파일 위치는 외부 양식으로 절대 java.net.URL 또는 소스나
클래스 파일의 상대 경로입니다. (문자열)
- - name
- 구성 파일의 핸들러 체인 이름을 지정합니다. (문자열)
|
@Retention(value = RetentionPolicy.RUNTIME)
@Target({TYPE})
public @interface HandlerChain{
String file();
String name();
};
|
@SOAPBinding |
이 어노테이션은 웹 서비스에서 SOAP 메시지 프로토콜로의 맵핑을
지정합니다. 이 어노테이션을 클라이언트나 서버 SEI(Service Endpoint Interface) 또는
Java Bean 엔드포인트의
서비스 엔드포인트 구현 클래스에서 유형이나 공용 메소드에 적용할 수 있습니다.
method-level
어노테이션은 지정 가능한 내용으로 제한됩니다.
style 특성에 DOCUMENT 값이 있는 경우에만 어노테이션을 사용하십시오.
method-level 어노테이션을 지정하지 않은 경우 유형에서 @SOAPBinding 동작이 사용됩니다.
|
- 어노테이션 대상: 유형 또는 메소드
- 특성:
- - style
- 웹 서비스와 송수신하는 메시지의 인코딩 스타일을 정의합니다.
올바른 값은 DOCUMENT 및 RPC입니다. 기본값은
DOCUMENT입니다.
(문자열)
- - use
- 웹 서비스와 송수신하는 메시지에 사용된 인코딩을
정의합니다. 기본값은 LITERAL입니다. ENCODED는 지원되는 값이 아닙니다. (문자열)
- - parameterStyle
- 메소드 매개변수가 전체 메시지 본문을 나타내는지 또는 오퍼레이션 후에 이름이 지정된 최상위 레벨
요소 내에서 랩핑되는 요소인지를 판별합니다. 올바른 값은 WRAPPED 또는
BARE입니다.
DOCUMENT 스타일 바인딩에서 BARE 값을 사용할 수 있습니다. 기본값은 WRAPPED입니다. (문자열)
|
@Retention(value = RetentionPolicy.RUNTIME)
@Target({TYPE})
public @interface SOAPBinding{
public enum Style{
DOCUMENT,
RPC
};
public enum Use{
LITERAL,
};
public enum ParameterStyle{
BARE,
WRAPPED
};
Style style() default Style.DOCUMENT
Use use() default Use.LITERAL
ParameterStyle parameterStyle() default ParameterStyle.WRAPPED;
};
|