Author: mmerz
Date: Wed Oct 6 09:04:00 2004
New Revision: 53871
Added:
incubator/beehive/trunk/wsm/src/api/javax/jws/security/
incubator/beehive/trunk/wsm/src/api/javax/jws/security/SecurityIdentity.java
- copied, changed from rev 53826,
incubator/beehive/trunk/wsm/src/api/javax/jws/SecurityIdentity.java
incubator/beehive/trunk/wsm/src/api/javax/jws/security/SecurityRoles.java
- copied, changed from rev 53826,
incubator/beehive/trunk/wsm/src/api/javax/jws/SecurityRoles.java
incubator/beehive/trunk/wsm/src/api/javax/jws/soap/InitParam.java
- copied, changed from rev 53826,
incubator/beehive/trunk/wsm/src/api/javax/jws/InitParam.java
Removed:
incubator/beehive/trunk/wsm/drt/tests/org/apache/beehive/wsm/jsr181/model/fakeAnnotations/FakeDocumentWrapper.java
incubator/beehive/trunk/wsm/drt/tests/org/apache/beehive/wsm/jsr181/model/fakeAnnotations/FakeQName.java
incubator/beehive/trunk/wsm/src/api/javax/jws/InitParam.java
incubator/beehive/trunk/wsm/src/api/javax/jws/QName.java
incubator/beehive/trunk/wsm/src/api/javax/jws/SecurityIdentity.java
incubator/beehive/trunk/wsm/src/api/javax/jws/SecurityRoles.java
incubator/beehive/trunk/wsm/src/api/javax/jws/soap/DocumentWrapper.java
incubator/beehive/trunk/wsm/src/runtime/org/apache/beehive/wsm/jsr181/model/QNameInfo.java
Modified:
incubator/beehive/trunk/wsm/drt/tests/Bar.java
incubator/beehive/trunk/wsm/drt/tests/org/apache/beehive/wsm/jsr181/model/Jsr181ModelTest.java
incubator/beehive/trunk/wsm/drt/tests/org/apache/beehive/wsm/jsr181/model/fakeAnnotations/FakeInitParamAnnotation.java
incubator/beehive/trunk/wsm/drt/tests/org/apache/beehive/wsm/jsr181/model/fakeAnnotations/FakeSOAPMessageHandlerAnnotation.java
incubator/beehive/trunk/wsm/drt/tests/org/apache/beehive/wsm/jsr181/model/fakeAnnotations/FakeSecurityIdentityAnnotation.java
incubator/beehive/trunk/wsm/drt/tests/org/apache/beehive/wsm/jsr181/model/fakeAnnotations/FakeSecurityRoleAnnotation.java
incubator/beehive/trunk/wsm/drt/tests/org/apache/beehive/wsm/jsr181/model/fakeAnnotations/FakeWebParamAnnotation.java
incubator/beehive/trunk/wsm/drt/tests/org/apache/beehive/wsm/jsr181/model/fakeAnnotations/FakeWebResultAnnotation.java
incubator/beehive/trunk/wsm/src/api/javax/jws/HandlerChain.java
incubator/beehive/trunk/wsm/src/api/javax/jws/Oneway.java
incubator/beehive/trunk/wsm/src/api/javax/jws/WebMethod.java
incubator/beehive/trunk/wsm/src/api/javax/jws/WebParam.java
incubator/beehive/trunk/wsm/src/api/javax/jws/WebResult.java
incubator/beehive/trunk/wsm/src/api/javax/jws/WebService.java
incubator/beehive/trunk/wsm/src/api/javax/jws/soap/SOAPBinding.java
incubator/beehive/trunk/wsm/src/api/javax/jws/soap/SOAPMessageHandler.java
incubator/beehive/trunk/wsm/src/api/javax/jws/soap/SOAPMessageHandlers.java
incubator/beehive/trunk/wsm/src/runtime/org/apache/beehive/wsm/jsr181/model/InitParamInfo.java
incubator/beehive/trunk/wsm/src/runtime/org/apache/beehive/wsm/jsr181/model/SOAPBindingInfo.java
incubator/beehive/trunk/wsm/src/runtime/org/apache/beehive/wsm/jsr181/model/SOAPMessageHandlerInfo.java
incubator/beehive/trunk/wsm/src/runtime/org/apache/beehive/wsm/jsr181/model/SecurityRolesInfo.java
incubator/beehive/trunk/wsm/src/runtime/org/apache/beehive/wsm/jsr181/model/WebServiceMETHODMetadata.java
incubator/beehive/trunk/wsm/src/runtime/org/apache/beehive/wsm/jsr181/model/WebServiceTYPEMetadata.java
Log:
Upgraded codebase to the new version of JSR-181 ("public review", see
http://www.jcp.org/en/jsr/detail?id=181).
Modified: incubator/beehive/trunk/wsm/drt/tests/Bar.java
==============================================================================
--- incubator/beehive/trunk/wsm/drt/tests/Bar.java (original)
+++ incubator/beehive/trunk/wsm/drt/tests/Bar.java Wed Oct 6 09:04:00 2004
@@ -14,11 +14,6 @@
* limitations under the License.
*/
-
-import javax.jws.Oneway;
-import javax.jws.WebMethod;
-import javax.jws.WebParam;
-import javax.jws.WebResult;
import javax.jws.WebService;
/*******************************************************************************
@@ -29,16 +24,12 @@
@WebService(name = "Abacus", endpointInterface = "Cheetorama")
public class Bar
{
- @WebMethod(operationName = "GoLoco", action="LocoAction")
- @WebResult
- public boolean getNutty(@WebParam int level, @WebParam(name="detail")
String detail)
+ public boolean getNutty(int level, String detail)
{
return (level > 5);
}
- @WebMethod
- @Oneway
- public void goHome(@WebParam(name="when") long time)
+ public void goHome(long time)
{
return;
}
Modified:
incubator/beehive/trunk/wsm/drt/tests/org/apache/beehive/wsm/jsr181/model/Jsr181ModelTest.java
==============================================================================
---
incubator/beehive/trunk/wsm/drt/tests/org/apache/beehive/wsm/jsr181/model/Jsr181ModelTest.java
(original)
+++
incubator/beehive/trunk/wsm/drt/tests/org/apache/beehive/wsm/jsr181/model/Jsr181ModelTest.java
Wed Oct 6 09:04:00 2004
@@ -25,8 +25,7 @@
import java.util.List;
import java.util.Map;
-import javax.jws.InitParam;
-import javax.jws.QName;
+import javax.jws.soap.InitParam;
import javax.jws.WebMethod;
import javax.jws.WebParam;
import javax.jws.WebService;
@@ -36,7 +35,6 @@
import
org.apache.beehive.wsm.jsr181.model.fakeAnnotations.FakeHandlerChainAnnotation;
import
org.apache.beehive.wsm.jsr181.model.fakeAnnotations.FakeInitParamAnnotation;
import
org.apache.beehive.wsm.jsr181.model.fakeAnnotations.FakeOneWayAnnotation;
-import org.apache.beehive.wsm.jsr181.model.fakeAnnotations.FakeQName;
import
org.apache.beehive.wsm.jsr181.model.fakeAnnotations.FakeSOAPBindingAnnotation;
import
org.apache.beehive.wsm.jsr181.model.fakeAnnotations.FakeSOAPMessageHandlerAnnotation;
import
org.apache.beehive.wsm.jsr181.model.fakeAnnotations.FakeSOAPMessageHandlersAnnotation;
@@ -90,7 +88,7 @@
Collection<Annotation> typeAnnotations = new ArrayList<Annotation>();
typeAnnotations.add(new FakeSOAPBindingAnnotation(
SOAPBinding.Style.RPC, SOAPBinding.Use.ENCODED,
- SOAPBinding.ParameterStyle.DEFAULT)
+ SOAPBinding.ParameterStyle.WRAPPED)
);
try {
WebServiceTYPEMetadata type = new WebServiceTYPEMetadata(
@@ -147,8 +145,8 @@
"testendpointinterface");
typeAnnotations.add(wsAnnotation);
typeAnnotations.add(new FakeSOAPBindingAnnotation(
- SOAPBinding.Style.DEFAULT, SOAPBinding.Use.DEFAULT,
- SOAPBinding.ParameterStyle.DEFAULT));
+ SOAPBinding.Style.DOCUMENT, SOAPBinding.Use.LITERAL,
+ SOAPBinding.ParameterStyle.WRAPPED));
WebServiceTYPEMetadata type = new WebServiceTYPEMetadata(
wsAnnotation, "a.b.c.testclass", typeAnnotations,
methodMetadata);
assertTrue(type.getSoapBinding().getStyle() ==
SOAPBinding.Style.DOCUMENT);
@@ -216,7 +214,7 @@
SOAPMessageHandler[] defaultHandlers = new
FakeSOAPMessageHandlerAnnotation[1];
defaultHandlers[0] = new FakeSOAPMessageHandlerAnnotation("",
"soaphandlerclass", new FakeInitParamAnnotation[0],
- new String[0], new FakeQName[0]);
+ new String[0], new String[0]);
typeAnnotations.add(new FakeSOAPMessageHandlersAnnotation(
defaultHandlers));
WebServiceTYPEMetadata type = new WebServiceTYPEMetadata(
@@ -241,8 +239,7 @@
InitParam[] params = { new FakeInitParamAnnotation("paramname",
"paramvalue") };
String[] roles = { "messagehandlerroles" };
- QName[] headers = { new FakeQName("messagehanderheadernamespace",
- "messagehanderheaderlocalname") };
+ String[] headers = {
"messagehanderheadernamespace.messagehanderheaderlocalname" };
SOAPMessageHandler[] defaultHandlers = { new
FakeSOAPMessageHandlerAnnotation(
"", "soaphandlerclass", params, roles, headers) };
typeAnnotations.add(new FakeSOAPMessageHandlersAnnotation(
@@ -267,9 +264,8 @@
assert (handler.getRoles().iterator().next().compareTo(
"messagehandlerroles") == 0);
- QNameInfo q = handler.getHeaders().iterator().next();
- assert (q.getNamespaceURI().compareTo("messagehanderheadernamespace")
== 0);
- assert (q.getLocalName().compareTo("messagehanderheaderlocalname") ==
0);
+ String s = handler.getHeaders().iterator().next();
+ assertEquals(s,
"messagehanderheadernamespace.messagehanderheaderlocalname");
}
public void testTYPESecurityRolesDefaults() throws Exception {
@@ -315,7 +311,7 @@
WebServiceTYPEMetadata type = new WebServiceTYPEMetadata(
wsAnnotation, "a.b.c.testclass", typeAnnotations,
methodMetadata);
- assertNull(type.getSiRunAs());
+ assertNull(type.getSiValue());
}
@@ -328,7 +324,7 @@
.add(new FakeSecurityIdentityAnnotation("runasidentity"));
WebServiceTYPEMetadata type = new WebServiceTYPEMetadata(
wsAnnotation, "a.b.c.testclass", typeAnnotations,
methodMetadata);
- assertTrue(type.getSiRunAs().compareTo("runasidentity") == 0);
+ assertEquals(type.getSiValue(), "runasidentity");
}
public void testTYPESOAPHandlerWithHandlerChain() throws Exception
@@ -459,7 +455,7 @@
Collection<Annotation> methodAnnotations = new ArrayList<Annotation>();
WebMethod mAnnotation = new FakeWebMethodAnnotation("operationname",
"action");
methodAnnotations.add(mAnnotation);
- methodAnnotations.add(new FakeWebResultAnnotation("result"));
+ methodAnnotations.add(new FakeWebResultAnnotation("result", ""));
WebServiceMETHODMetadata method = new WebServiceMETHODMetadata(
mAnnotation, "methodname", void.class, false,
methodAnnotations, null);
assertTrue(method.getWrName().compareTo("result") == 0);
@@ -469,7 +465,7 @@
Collection<Annotation> methodAnnotations = new ArrayList<Annotation>();
WebMethod mAnnotation = new FakeWebMethodAnnotation("operationname",
"action");
methodAnnotations.add(mAnnotation);
- methodAnnotations.add(new FakeWebResultAnnotation("resultname"));
+ methodAnnotations.add(new FakeWebResultAnnotation("resultname", ""));
WebServiceMETHODMetadata method = new WebServiceMETHODMetadata(
mAnnotation, "methodname", void.class, false,
methodAnnotations, null);
assertTrue(method.getWrName().compareTo("resultname") == 0);
@@ -517,7 +513,7 @@
new FakeWebMethodAnnotation("operationname", "action");
methodAnnotations.add(mAnnotation);
methodAnnotations.add(new FakeOneWayAnnotation());
- methodAnnotations.add(new FakeWebResultAnnotation("result"));
+ methodAnnotations.add(new FakeWebResultAnnotation("result", ""));
WebServiceMETHODMetadata method = new WebServiceMETHODMetadata(
mAnnotation,
"methodname",
@@ -611,7 +607,7 @@
Collection<Annotation> paramAnnotations =
new ArrayList<Annotation>();
FakeWebParamAnnotation pAnnotation =
- new FakeWebParamAnnotation("param", WebParam.Mode.OUT, false);
+ new FakeWebParamAnnotation("param", "", WebParam.Mode.OUT,
false);
paramAnnotations.add(pAnnotation);
WebServicePARAMETERMetadata param =
new WebServicePARAMETERMetadata(
@@ -678,7 +674,7 @@
public void testPARAMETERWebParamDefault3() {
Collection<Annotation> paramAnnotations = new
ArrayList<Annotation>();
- WebParam wpAnnotation = new FakeWebParamAnnotation("",
WebParam.Mode.IN, false);
+ WebParam wpAnnotation = new FakeWebParamAnnotation("", "",
WebParam.Mode.IN, false);
paramAnnotations.add(wpAnnotation);
WebServicePARAMETERMetadata param = new WebServicePARAMETERMetadata (
wpAnnotation, String.class, "paramname", paramAnnotations);
@@ -690,7 +686,7 @@
public void testPARAMETERWebParam() {
Collection<Annotation> paramAnnotations = new ArrayList<Annotation>();
- WebParam wpAnnotation = new
FakeWebParamAnnotation("paramannotationname", WebParam.Mode.INOUT, true);
+ WebParam wpAnnotation = new
FakeWebParamAnnotation("paramannotationname", "", WebParam.Mode.INOUT, true);
paramAnnotations.add(wpAnnotation);
WebServicePARAMETERMetadata param = new WebServicePARAMETERMetadata (
wpAnnotation, String.class, "paramname", paramAnnotations);
Modified:
incubator/beehive/trunk/wsm/drt/tests/org/apache/beehive/wsm/jsr181/model/fakeAnnotations/FakeInitParamAnnotation.java
==============================================================================
---
incubator/beehive/trunk/wsm/drt/tests/org/apache/beehive/wsm/jsr181/model/fakeAnnotations/FakeInitParamAnnotation.java
(original)
+++
incubator/beehive/trunk/wsm/drt/tests/org/apache/beehive/wsm/jsr181/model/fakeAnnotations/FakeInitParamAnnotation.java
Wed Oct 6 09:04:00 2004
@@ -3,7 +3,7 @@
import java.lang.annotation.Annotation;
-import javax.jws.InitParam;
+import javax.jws.soap.InitParam;
/*
* Copyright 2004 The Apache Software Foundation
*
Modified:
incubator/beehive/trunk/wsm/drt/tests/org/apache/beehive/wsm/jsr181/model/fakeAnnotations/FakeSOAPMessageHandlerAnnotation.java
==============================================================================
---
incubator/beehive/trunk/wsm/drt/tests/org/apache/beehive/wsm/jsr181/model/fakeAnnotations/FakeSOAPMessageHandlerAnnotation.java
(original)
+++
incubator/beehive/trunk/wsm/drt/tests/org/apache/beehive/wsm/jsr181/model/fakeAnnotations/FakeSOAPMessageHandlerAnnotation.java
Wed Oct 6 09:04:00 2004
@@ -3,8 +3,7 @@
import java.lang.annotation.Annotation;
-import javax.jws.InitParam;
-import javax.jws.QName;
+import javax.jws.soap.InitParam;
import javax.jws.soap.SOAPMessageHandler;
/*
* Copyright 2004 The Apache Software Foundation
@@ -32,7 +31,7 @@
String className;
InitParam[] initParams;
String[] roles;
- QName[] headers;
+ String[] headers;
/**
* @param name
@@ -42,7 +41,7 @@
* @param headers
*/
public FakeSOAPMessageHandlerAnnotation(String name, String className,
- InitParam[] initParams, String[] roles, QName[] headers) {
+ InitParam[] initParams, String[] roles, String[] headers) {
super();
this.name = name;
this.className = className;
@@ -93,7 +92,7 @@
/* (non-Javadoc)
* @see javax.jws.soap.SOAPMessageHandler#headers()
*/
- public QName[] headers() {
+ public String[] headers() {
return headers;
}
Modified:
incubator/beehive/trunk/wsm/drt/tests/org/apache/beehive/wsm/jsr181/model/fakeAnnotations/FakeSecurityIdentityAnnotation.java
==============================================================================
---
incubator/beehive/trunk/wsm/drt/tests/org/apache/beehive/wsm/jsr181/model/fakeAnnotations/FakeSecurityIdentityAnnotation.java
(original)
+++
incubator/beehive/trunk/wsm/drt/tests/org/apache/beehive/wsm/jsr181/model/fakeAnnotations/FakeSecurityIdentityAnnotation.java
Wed Oct 6 09:04:00 2004
@@ -3,7 +3,7 @@
import java.lang.annotation.Annotation;
-import javax.jws.SecurityIdentity;
+import javax.jws.security.SecurityIdentity;
/*
* Copyright 2004 The Apache Software Foundation
*
@@ -26,14 +26,14 @@
public class FakeSecurityIdentityAnnotation implements Annotation,
SecurityIdentity {
- private String runAs;
+ private String value;
/**
*
*/
- public FakeSecurityIdentityAnnotation(String runAs) {
+ public FakeSecurityIdentityAnnotation(String value) {
super();
- this.runAs = runAs;
+ this.value = value;
}
/* (non-Javadoc)
@@ -46,8 +46,8 @@
/* (non-Javadoc)
* @see javax.jws.SecurityIdentity#runAs()
*/
- public String runAs() {
- return runAs;
+ public String value() {
+ return value;
}
}
Modified:
incubator/beehive/trunk/wsm/drt/tests/org/apache/beehive/wsm/jsr181/model/fakeAnnotations/FakeSecurityRoleAnnotation.java
==============================================================================
---
incubator/beehive/trunk/wsm/drt/tests/org/apache/beehive/wsm/jsr181/model/fakeAnnotations/FakeSecurityRoleAnnotation.java
(original)
+++
incubator/beehive/trunk/wsm/drt/tests/org/apache/beehive/wsm/jsr181/model/fakeAnnotations/FakeSecurityRoleAnnotation.java
Wed Oct 6 09:04:00 2004
@@ -2,7 +2,7 @@
import java.lang.annotation.Annotation;
-import javax.jws.SecurityRoles;
+import javax.jws.security.SecurityRoles;
/*
* Copyright 2004 The Apache Software Foundation
*
Modified:
incubator/beehive/trunk/wsm/drt/tests/org/apache/beehive/wsm/jsr181/model/fakeAnnotations/FakeWebParamAnnotation.java
==============================================================================
---
incubator/beehive/trunk/wsm/drt/tests/org/apache/beehive/wsm/jsr181/model/fakeAnnotations/FakeWebParamAnnotation.java
(original)
+++
incubator/beehive/trunk/wsm/drt/tests/org/apache/beehive/wsm/jsr181/model/fakeAnnotations/FakeWebParamAnnotation.java
Wed Oct 6 09:04:00 2004
@@ -27,15 +27,17 @@
public class FakeWebParamAnnotation implements Annotation, WebParam {
private String name;
+ private String targetNamespace;
private Mode mode;
private boolean header;
/**
*
*/
- public FakeWebParamAnnotation(String name, WebParam.Mode mode, boolean
header) {
+ public FakeWebParamAnnotation(String name, String targetNamespace,
WebParam.Mode mode, boolean header) {
super();
this.name=name;
+ this.targetNamespace = targetNamespace;
this.mode=mode;
this.header=header;
}
@@ -52,6 +54,13 @@
*/
public String name() {
return name;
+ }
+
+ /* (non-Javadoc)
+ * @see javax.jws.WebParam#name()
+ */
+ public String targetNamespace() {
+ return targetNamespace;
}
/* (non-Javadoc)
Modified:
incubator/beehive/trunk/wsm/drt/tests/org/apache/beehive/wsm/jsr181/model/fakeAnnotations/FakeWebResultAnnotation.java
==============================================================================
---
incubator/beehive/trunk/wsm/drt/tests/org/apache/beehive/wsm/jsr181/model/fakeAnnotations/FakeWebResultAnnotation.java
(original)
+++
incubator/beehive/trunk/wsm/drt/tests/org/apache/beehive/wsm/jsr181/model/fakeAnnotations/FakeWebResultAnnotation.java
Wed Oct 6 09:04:00 2004
@@ -26,13 +26,15 @@
public class FakeWebResultAnnotation implements Annotation, WebResult {
private String name;
-
+ private String targetNamespace;
+
/**
*
*/
- public FakeWebResultAnnotation(String name) {
+ public FakeWebResultAnnotation(String name, String targetNamespace) {
super();
this.name = name;
+ this.targetNamespace = targetNamespace;
}
/* (non-Javadoc)
@@ -47,6 +49,13 @@
*/
public String name() {
return name;
+ }
+
+ /* (non-Javadoc)
+ * @see javax.jws.WebResult#targetNamespace()
+ */
+ public String targetNamespace() {
+ return targetNamespace;
}
}
Modified: incubator/beehive/trunk/wsm/src/api/javax/jws/HandlerChain.java
==============================================================================
--- incubator/beehive/trunk/wsm/src/api/javax/jws/HandlerChain.java
(original)
+++ incubator/beehive/trunk/wsm/src/api/javax/jws/HandlerChain.java Wed Oct
6 09:04:00 2004
@@ -1,37 +1,32 @@
package javax.jws;
-import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
+import java.lang.annotation.ElementType;
/**
- * The <code>HandlerChain</code> annotation associates the Web Service
- * with an externally defined handler chain. This annotation is
- * typically used in scenarios where embedding the handler configuration
- * directly in the Java source is not appropriate; for example, where the
- * handler configuration needs to be shared across multiple Web Services.
+ * Associates the Web Service with an externally defined handler chain. This
annotation is typically used in scenarios
+ * where embedding the handler configuration directly in the Java source is
not appropriate; for example, where the
+ * handler configuration needs to be shared across multiple Web Services, or
where the handler chain consists of
+ * handlers for multiple transports.
*
- * It is an error to combine this annotation with the
- * <code>SOAPMessageHandlerInfo</code> annotation.
- *
- * @author Copyright (c) 2003-2005 BEA Systems, Inc.
+ * It is an error to combine this annotation with the @SOAPMessageHandlers
annotation.
*
+ * @author Copyright (c) 2004 by BEA Systems, Inc. All Rights Reserved.
*/
[EMAIL PROTECTED](RetentionPolicy.RUNTIME)
[EMAIL PROTECTED]({ElementType.TYPE})
[EMAIL PROTECTED](value = RetentionPolicy.RUNTIME)
[EMAIL PROTECTED](value = {ElementType.TYPE})
public @interface HandlerChain {
-
+
/**
- * Location of the handler chain file. The location is a URL, which
- * may be relative or absolute. Relative URLs are relative to
- * the location of the Java WS file at the time of processing.
+ * Location of the handler chain file. The location is a URL, which may
be relative or absolute. Relative URLs
+ * are relative to the location of the service implementation bean at the
time of processing.
*/
-// String location(); // this does not comply to the JSR-181 spec;
- String file(); // added in compliance to the JSR-181 spec;
+ String file();
/**
- * The name of the handler chain within the file
+ * Name of the handler chain in the configuration file
*/
String name();
};
Modified: incubator/beehive/trunk/wsm/src/api/javax/jws/Oneway.java
==============================================================================
--- incubator/beehive/trunk/wsm/src/api/javax/jws/Oneway.java (original)
+++ incubator/beehive/trunk/wsm/src/api/javax/jws/Oneway.java Wed Oct 6
09:04:00 2004
@@ -6,16 +6,14 @@
import java.lang.annotation.ElementType;
/**
- * Indicates that the given @WebMethod has only an input message and no
- * output. Typically, a oneway method returns the thread of control to the
- * calling application prior to executing the actual business method. A 181
- * processor should report an error if an operation marked oneway as a return
- * value, out/in-out parameters, or throws any exceptions.
- *
- * @author Copyright (c) 2003-2005 BEA Systems, Inc.
+ * Indicates that the given @WebMethod has only an input message and no
output. Typically, a oneway method returns
+ * the thread of control to the calling application prior to executing the
actual business method. A 181 processor
+ * should report an error if an operation marked @Oneway has a return value or
Holder parameters, or declares any
+ * checked exceptions.
*
+ * @author Copyright (c) 2004 by BEA Systems, Inc. All Rights Reserved.
*/
[EMAIL PROTECTED](RetentionPolicy.RUNTIME)
[EMAIL PROTECTED]({ElementType.METHOD})
[EMAIL PROTECTED](value = RetentionPolicy.RUNTIME)
[EMAIL PROTECTED](value = {ElementType.METHOD})
public @interface Oneway {
-};
+}
Modified: incubator/beehive/trunk/wsm/src/api/javax/jws/WebMethod.java
==============================================================================
--- incubator/beehive/trunk/wsm/src/api/javax/jws/WebMethod.java
(original)
+++ incubator/beehive/trunk/wsm/src/api/javax/jws/WebMethod.java Wed Oct
6 09:04:00 2004
@@ -1,38 +1,30 @@
package javax.jws;
+import java.lang.annotation.Target;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
-import java.lang.annotation.Target;
/**
- * Specifies that the logic of the associated method is exposed as a Web
- * Service operation, making it part of the Web Service's public
- * contract. A client may invoke the Web Service using one of the
- * available protocols and message formats. A WebMethod annotation is
- * required for each method that is published by the Web Service. The
- * associated method must be public and its parameters, return value, and
- * exceptions must follow the rules defined in JAX-RPC 1.1 section 5.
- * The method is not required to throw java.rmi.RemoteException.
- *
- * @author Copyright (c) 2003-2005 BEA Systems, Inc.
+ * Specifies that the given method is exposed as a Web Service operation,
making it part of the Web Service�s public
+ * contract. A WebMethod annotation is required for each method that is
published by the Web Service. The associated
+ * method must be public and its parameters return value, and exceptions must
follow the rules defined in JAX-RPC 1.1,
+ * section 5. The method is not required to throw java.rmi.RemoteException.
*
+ * @author Copyright (c) 2004 by BEA Systems, Inc. All Rights Reserved.
*/
[EMAIL PROTECTED](RetentionPolicy.RUNTIME)
[EMAIL PROTECTED](value = RetentionPolicy.RUNTIME)
@Target({ElementType.METHOD})
-public @interface WebMethod {
+public @interface WebMethod {
- /**
- * Name of the WSDL <operation> matching this method. Defaults
- * to the name of the Java method
+ /**
+ * Name of the wsdl:operation matching this method. By default the WSDL
operation name will be the same
+ * as the Java method name.
*/
- String operationName() default "";
+ String operationName() default "";
/**
- * The action for this operation. For SOAP binding, this determines
- * the value of <code>soap:action</code> header.
- *
+ * The action for this operation. For SOAP bindings, this determines the
value of the SOAPAction header.
*/
String action() default "";
-};
-
+};
Modified: incubator/beehive/trunk/wsm/src/api/javax/jws/WebParam.java
==============================================================================
--- incubator/beehive/trunk/wsm/src/api/javax/jws/WebParam.java (original)
+++ incubator/beehive/trunk/wsm/src/api/javax/jws/WebParam.java Wed Oct 6
09:04:00 2004
@@ -1,45 +1,51 @@
package javax.jws;
-import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
import java.lang.annotation.ElementType;
/**
- * Customizes the mapping of an individual parameter to a Web Service message
- * part or element.
- *
- * @author Copyright (c) 2003-2005 BEA Systems, Inc.
+ * Customizes the mapping of an individual parameter to a Web Service message
part and XML element.
*
+ * @author Copyright (c) 2004 by BEA Systems, Inc. All Rights Reserved.
*/
[EMAIL PROTECTED](RetentionPolicy.RUNTIME)
[EMAIL PROTECTED]({ElementType.PARAMETER})
[EMAIL PROTECTED](value = RetentionPolicy.RUNTIME)
[EMAIL PROTECTED](value = {ElementType.PARAMETER})
public @interface WebParam {
/**
- * The parameter mode
+ * The direction in which the parameter flows
*/
- public enum Mode { IN, OUT, INOUT };
+ public enum Mode {
+ IN,
+ OUT,
+ INOUT
+ };
/**
- * Name of the parameter as it appears in the WSDL. Maps to the
- * <code>wsdl:part</code> for RPC style bindings, and to an element
- * name for document-style bindings. Defaults to the name of the
- * parameter as it appears in the argument list.
+ * Name of the parameter as it appears in the WSDL. For RPC bindings,
this is name of the wsdl:part representing
+ * the parameter. For document bindings, this is the local name of the
XML element representing the parameter.
+ *
+ * Defaults to the name of the parameter as it appears in the argument
list.
*/
String name() default "";
/**
- * The direction in which the parameter is flowing. One of IN,
- * OUT, or INOUT. The OUT and INOUT modes may only be specified
- * for parameter types that conform to the JAX-RPC definition
- * of Holder types.
+ * The XML namespace for the parameter. Only used with document bindings,
where the parameter maps to an XML
+ * element. Defaults to the targetNamespace for the Web Service.
+ */
+ String targetNamespace() default "";
+
+ /**
+ * The direction in which the parameter is flowing. One of IN, OUT, or
INOUT. The OUT and INOUT modes may only be
+ * specified for parameter types that conform to the JAX-RPC definition of
Holder types. See JAX-RPC 1.1, section
+ * 4.3.5. OUT and INOUT modes are only supported for RPC bindings or for
parameters that map to headers.
*/
Mode mode() default Mode.IN;
/**
- * If true, the parameter is pulled from a header rather then the
- * message body.
+ * If true, the parameter is pulled from a message header rather then the
message body.
*/
boolean header() default false;
};
Modified: incubator/beehive/trunk/wsm/src/api/javax/jws/WebResult.java
==============================================================================
--- incubator/beehive/trunk/wsm/src/api/javax/jws/WebResult.java
(original)
+++ incubator/beehive/trunk/wsm/src/api/javax/jws/WebResult.java Wed Oct
6 09:04:00 2004
@@ -1,25 +1,29 @@
package javax.jws;
-import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
+import java.lang.annotation.ElementType;
/**
- * Customizes the mapping of a method return value onto a WSDL message
- * part or XML element.
- *
- * @author Copyright (c) 2003-2005 BEA Systems, Inc.
+ * Customizes the mapping of the return value to a WSDL part and XML element.
*
+ * @author Copyright (c) 2004 by BEA Systems, Inc. All Rights Reserved.
*/
[EMAIL PROTECTED](RetentionPolicy.RUNTIME)
[EMAIL PROTECTED]({ElementType.METHOD})
[EMAIL PROTECTED](value = RetentionPolicy.RUNTIME)
[EMAIL PROTECTED](value = {ElementType.METHOD})
public @interface WebResult {
-
+
+ /**
+ * Name of return value as it appears in the WSDL and messages on the
wire. For RPC bindings, this is the name of
+ * the wsdl:part representing the return value. For document bindings,
this is the local name of the XML element
+ * representing the return value.
+ */
+ String name() default "result";
+
/**
- * Name of the return value as it appears in the WSDL or XML. Used
- * as the name of the wsdl:part for RPC bindings, and as the local name
- * of the XML element matching the return value for document bindings.
+ * The XML namespace for the return value. Only used with document
bindings, where the return value maps to an
+ * XML element. Defaults to the targetNamespace of the Web Service.
*/
- public String name() default "result";
+ String targetNamespace() default "";
};
Modified: incubator/beehive/trunk/wsm/src/api/javax/jws/WebService.java
==============================================================================
--- incubator/beehive/trunk/wsm/src/api/javax/jws/WebService.java
(original)
+++ incubator/beehive/trunk/wsm/src/api/javax/jws/WebService.java Wed Oct
6 09:04:00 2004
@@ -1,57 +1,57 @@
package javax.jws;
-import java.lang.annotation.ElementType;
+import java.lang.annotation.Target;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
-import java.lang.annotation.Target;
+import java.lang.annotation.ElementType;
/**
- * Specifies that a particular Java class implements a Web Service
+ * Marks a Java class as implementing a Web Service, or a Java interface as
defining a Web Service interface.
*
- * @author Copyright (c) 2003-2005 BEA Systems, Inc.
+ * @author Copyright (c) 2004 by BEA Systems, Inc. All Rights Reserved.
*/
[EMAIL PROTECTED](RetentionPolicy.RUNTIME)
[EMAIL PROTECTED]({ElementType.TYPE})
-public @interface WebService {
- /**
- * Name of the Web service. Maps to the name of the <wsdl:portType>
- */
- String name() default "";
-
[EMAIL PROTECTED](value = RetentionPolicy.RUNTIME)
[EMAIL PROTECTED](value = {ElementType.TYPE})
+public @interface WebService {
- String serviceName() default "";
+ /**
+ * The name of the Web Service. Used as the name of the wsdl:portType
when mapped to WSDL 1.1.
+ * Defaults to the simple name of the Java class or interface
+ */
+ String name() default "";
+
+ /**
+ * The XML namespace used for the WSDL and XML elements generated from
this Web Service.
+ */
+ String targetNamespace() default "";
- /**
- * The location of a pre-defined WSDL describing the service. The
- * <code>wsdlLocation</code> is a URL (relative or absolute) that refers
- * to a pre-existing WSDL file. The presence of a
- * <code>wsdlLocation</code> value indicates that the JSR 181 processor
- * should not
- * generate WSDL from the Java WS, but should instead provide feedback if
- * the the Java WS is inconsistent with the <code>portType</code> and
- * bindings declared in this WSDL. Note that a single WSDL file might
- * contain multiple <code>portTypes</code> and multiple bindings. The
- * annotations on the Java WS file determine the specific
- * <code>portType</code> and bindings that correspond to the Web Service.
+ /**
+ * The service name of the Web Service. Used as the name of the
wsdl:service when mapped to WSDL 1.1.
+ * Not allowed on interfaces. Defaults to the simple name of the Java
class + �Service".
*/
- String wsdlLocation() default "";
+ String serviceName() default "";
- /**
- * The XML namespace used for WSDL elements generated from this
- * interface/class.
+ /**
+ * The location of a pre-defined WSDL describing the service. The
wsdlLocation is a URL (relative or absolute)
+ * that refers to a pre-existing WSDL file. The presence of a
wsdlLocation value indicates that the service
+ * implementation bean is implementing a pre-defined WSDL contract. The
JSR-181 tool should instead feedback
+ * if the service implementation bean is inconsistent with the portType
and bindings declared in this WSDL. Note
+ * that a single WSDL file might contain multiple portTypes and multiple
bindings. The annotations on the service
+ * implementation bean determine the specific portType and bindings that
correspond to the Web Service.
*/
- String targetNamespace() default "";
+ String wsdlLocation() default "";
/**
+ * The complete name of the service endpoint interface defining the
service�s abstract Web Service contract. This
+ * annotation allows the developer to separate the interface contract from
the implementation. If this annotation
+ * is present, the service endpoint interface is used to determine the
abstract WSDL contract (portType and
+ * bindings). The service endpoint interface may include JSR-181
annotations to customize the mapping from Java to
+ * WSDL. The service implementation bean may implement the service
endpoint interface, but is not required to do
+ * so.
*
- * The name of the Service Endpoint Interface defining the public
- * contract to this object. For convenience, Java programmers may share
- * the service endpoint interface as the interface between the client and
- * server. This member-value allows the developer to explicitly control
- * the name of the service endpoint interface. Defaults to an interface
- * in the same package as the Web service implementation using the Web
- * service name.
- *
+ * If this annotation is not present, the Web Service contract will be
generated from annotations on the service
+ * implementation bean itself. If a service endpoint interface is
required by the target environment, it will be
+ * generated into an implementation-defined package with an implementation
defined name.
*/
String endpointInterface() default "";
-};
+};
Copied:
incubator/beehive/trunk/wsm/src/api/javax/jws/security/SecurityIdentity.java
(from rev 53826,
incubator/beehive/trunk/wsm/src/api/javax/jws/SecurityIdentity.java)
==============================================================================
--- incubator/beehive/trunk/wsm/src/api/javax/jws/SecurityIdentity.java
(original)
+++
incubator/beehive/trunk/wsm/src/api/javax/jws/security/SecurityIdentity.java
Wed Oct 6 09:04:00 2004
@@ -1,4 +1,4 @@
-package javax.jws;
+package javax.jws.security;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
@@ -6,27 +6,21 @@
import java.lang.annotation.ElementType;
/**
- * Defines the identity the Web Service assumes during execution. Normally a
- * Web Service assumes the identity of the authenticated caller. This
- * annotation allows the developer to override this behavior so that the Web
- * Service instead executes as a particular role. The role must map to
- * user/group information in the container's security realm. <p/>
- *
- * This annotation is only supported by JSR 181 processors that target the
- * J2EE platform. Processors targeting J2SE are not required to support this
- * annotation.
- *
- * @author Copyright (c) 2003-2005 BEA Systems, Inc.
+ * Defines the identity the Web Service assumes during execution. Normally a
Web Service assumes the identity of the
+ * authenticated caller. This annotation allows the developer to override
this behavior so that the Web Service
+ * instead executes as a particular role. The role must map to user/group
information in the container�s
+ * security realm.
*
+ * @author Copyright (c) 2004 by BEA Systems, Inc. All Rights Reserved.
*/
[EMAIL PROTECTED](RetentionPolicy.RUNTIME)
[EMAIL PROTECTED]({ElementType.TYPE})
[EMAIL PROTECTED](value = RetentionPolicy.RUNTIME)
[EMAIL PROTECTED](value = {ElementType.TYPE})
public @interface SecurityIdentity {
/**
- * A Web Service that includes this member-value assumes the
- * permission-level of the role specified and may access other resources
- * accordingly.
+ * A Web Service that includes this member-value assumes the
permission-level of the role specified and may access
+ * other resources accordingly. This annotation is the equivalent of the
<security-identity> entry in
+ * ejb-jar.xml.
*/
- public String runAs() default "";
+ String value();
};
Copied:
incubator/beehive/trunk/wsm/src/api/javax/jws/security/SecurityRoles.java (from
rev 53826, incubator/beehive/trunk/wsm/src/api/javax/jws/SecurityRoles.java)
==============================================================================
--- incubator/beehive/trunk/wsm/src/api/javax/jws/SecurityRoles.java
(original)
+++ incubator/beehive/trunk/wsm/src/api/javax/jws/security/SecurityRoles.java
Wed Oct 6 09:04:00 2004
@@ -1,4 +1,4 @@
-package javax.jws;
+package javax.jws.security;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
@@ -6,41 +6,29 @@
import java.lang.annotation.ElementType;
/**
- * Defines a list of roles that are allowed to access the methods on the
- * service. Roles may be applied at either the service (class) level or
- * at the level of an individual method. The container is responsible
- * for ensuring that only the security settings of the service can be
- * honored.<p/>
- *
- * This annotation is only supported by JSR 181 processors that target the
- * J2EE platform. Processors targeting J2SE are not required to support this
- * annotation.
- *
- * @author Copyright (c) 2003-2005 BEA Systems, Inc.
+ * Defines the roles that are allowed to access the operations on the service.
Roles may be applied at either
+ * the service (class) level or at the level of an individual method. The
hosting container is responsible for ensuring
+ * that the security settings of the service are honored.
*
+ * @author Copyright (c) 2002 by BEA Systems, Inc. All Rights Reserved.
*/
[EMAIL PROTECTED](RetentionPolicy.RUNTIME)
[EMAIL PROTECTED]({ElementType.TYPE, ElementType.METHOD})
+
[EMAIL PROTECTED](value = RetentionPolicy.RUNTIME)
[EMAIL PROTECTED](value = {ElementType.TYPE, ElementType.METHOD})
public @interface SecurityRoles {
+
/**
- * Specifies a list of roles permitted to access the Web Service. If the
- * <code>SecurityRoles</code> annotation is applied at the class level,
- * then the roles referenced may access all individual methods within the
- * Web Service. If the <code>SecurityRoles</code> annotation is applied
- * at the method level, then the roles expand the list of roles allowed
- * to access that method. This annotation is the equivalent of the
- * <method-permission> deployment descriptor entry in ejb-jar.xml.
- * The roles must map to user/group information in the container's
- * security realm.
+ * Specifies a list of roles permitted to access the Web Service. If the
@SecurityRoles annotation is applied at
+ * the class level, then the roles listed may call any method on the Web
Service. If the @SecurityRoles annotation
+ * is applied at the method level, then the roles expand the list of roles
allowed to access that operation. This
+ * annotation is the equivalent of the <method-permission> entry in
ejb-jar.xml
*/
- public String[] rolesAllowed() default {};
+ String[] rolesAllowed() default {};
/**
- * Specifies a list of roles referenced by the Web Service. The Web
- * Service may access other resources using the credentials of the roles
- * listed. This annotation is the equivalent of the
- * <security-role-ref> entry in ejb-jar.xml
+ * Specifies a list of roles referenced by the Web Service. The Web
Service may access other resources using the
+ * credentials of the roles listed. This annotation is the equivalent of
the <security-role-ref> entry in
+ * ejb-jar.xml
*/
- public String[] rolesReferenced() default {};
-
+ String[] rolesReferenced() default {};
};
Copied: incubator/beehive/trunk/wsm/src/api/javax/jws/soap/InitParam.java (from
rev 53826, incubator/beehive/trunk/wsm/src/api/javax/jws/InitParam.java)
==============================================================================
--- incubator/beehive/trunk/wsm/src/api/javax/jws/InitParam.java
(original)
+++ incubator/beehive/trunk/wsm/src/api/javax/jws/soap/InitParam.java Wed Oct
6 09:04:00 2004
@@ -1,16 +1,19 @@
-package javax.jws;
+package javax.jws.soap;
/**
- * An initialization parameter for a handler.
- *
- * @author Copyright (c) 2003-2005 BEA Systems, Inc.
- *
+ * An initialization parameter
+ * @author Copyright (c) 2004 by BEA Systems, Inc. All Rights Reserved.
*/
public @interface InitParam {
- /** Name of the initialization parameter */
- public String name();
+ /**
+ * Name of the initialization parameter
+ */
+ String name();
- /** Value of the initialization parameter */
- public String value();
+ /**
+ * Value of the initialization parameter
+ */
+ String value();
};
+
Modified: incubator/beehive/trunk/wsm/src/api/javax/jws/soap/SOAPBinding.java
==============================================================================
--- incubator/beehive/trunk/wsm/src/api/javax/jws/soap/SOAPBinding.java
(original)
+++ incubator/beehive/trunk/wsm/src/api/javax/jws/soap/SOAPBinding.java Wed Oct
6 09:04:00 2004
@@ -6,84 +6,52 @@
import java.lang.annotation.ElementType;
/**
- * Specifies the mapping of the Web Service onto the SOAP message protocol.
- * The <code>SOAPBinding</code> annotation may be applied at either the class
- * or method level. If applied at the class level, the annotation affects the
- * SOAP binding for all operations on the Web Service. If applied at the
- * method level, the annotation overrides any settings applied at the class
- * level for that individual method.
+ * Specifies the mapping of the Web Service onto the SOAP message protocol.
*
- * @author Copyright (c) 2003-2005 BEA Systems, Inc.
+ * @author Copyright (c) 2004 by BEA Systems, Inc. All Rights Reserved.
*
*/
[EMAIL PROTECTED](RetentionPolicy.RUNTIME)
[EMAIL PROTECTED]({ElementType.TYPE, ElementType.METHOD})
-public @interface SOAPBinding {
[EMAIL PROTECTED](value = RetentionPolicy.RUNTIME)
[EMAIL PROTECTED](value = {ElementType.TYPE})
+public @interface SOAPBinding {
/**
- * The encoding style for messages sent to and from the Web Service
+ * The SOAP binding style
*/
public enum Style {
- /** Messages are encoded document style */
- DOCUMENT,
-
- /** Messages are encoded in RPC style */
- RPC,
- DEFAULT
+ DOCUMENT,
+ RPC
};
/**
- * The message formatting style.
+ * The SOAP binding use
*/
public enum Use {
- /** Messages are formatted according to their predefined XSD schema */
- LITERAL,
-
- /** Messages are formatted according to SOAP section 5 */
- ENCODED,
- DEFAULT
+ LITERAL,
+ ENCODED
};
-
+
/**
- * The parameter style for methods on this Web Service.
+ * The style of mapping parameters onto SOAP messages
*/
public enum ParameterStyle {
-
- /**
- * Each parameter is encoded as its own child element following the
- * SOAP body.
- */
- BARE,
-
- /**
- * Parameters are wrapped with a single element following the SOAP
- * body. The name and namespace of the wrapper elements may be
- * controlled through the <code>DocumentWrapper.requestElement</code>
- * and <code>DocumentWrapper.responseElement</code>
- *
- */
- WRAPPED,
- DEFAULT
- };
+ BARE,
+ WRAPPED
+ }
/**
- * Defines the encoding style for messages send to and from the
- * Web Service.
- *
+ * Defines the encoding style for messages send to and from the Web
Service.
*/
- Style style() default Style.DEFAULT;
+ Style style() default Style.DOCUMENT;
/**
- * Defines the formatting style for messages sent to and from the Web
- * Service.
+ * Defines the formatting style for messages sent to and from the Web
Service.
*/
- Use use() default Use.DEFAULT;
+ Use use() default Use.LITERAL;
/**
- * The default parameter style for SOAP request and responses sent to and
- * from methods on the Web Service. The parameter style controls whether
- * the parameters are wrapped within a single element following the SOAP
- * body. This member-value is only used for document/literal Web Services.
+ * Determines whether method parameters represent the entire message body,
or whether the parameters are elements
+ * wrapped inside a top-level element named after the operation
*/
ParameterStyle parameterStyle() default ParameterStyle.WRAPPED;
}
Modified:
incubator/beehive/trunk/wsm/src/api/javax/jws/soap/SOAPMessageHandler.java
==============================================================================
--- incubator/beehive/trunk/wsm/src/api/javax/jws/soap/SOAPMessageHandler.java
(original)
+++ incubator/beehive/trunk/wsm/src/api/javax/jws/soap/SOAPMessageHandler.java
Wed Oct 6 09:04:00 2004
@@ -1,29 +1,38 @@
package javax.jws.soap;
-import javax.jws.InitParam;
-import javax.jws.QName;
-
/**
- * Defines the configuration for a SOAP message handler which runs before
- * and after the business method of a service.
- *
- * @author Copyright (c) 2003-2005 BEA Systems, Inc.
+ * A single SOAP message handler
*
+ * @author Copyright (c) 2004 by BEA Systems, Inc. All Rights Reserved.
*/
public @interface SOAPMessageHandler {
- /** Name of the handler */
+ /**
+ * Name of the handler. Defaults to the name of the handler class.
+ */
String name() default "";
- /** Name of the handler class */
+ /**
+ * Name of the handler class.
+ */
String className();
- /** Initialization parameters for the handler */
+ /**
+ * Array of name/value pairs that should be passed to the handler during
initialization.
+ */
InitParam[] initParams() default {};
- /** List of SOAP roles implemented by the handler */
+ /**
+ * List of SOAP roles/actors implemented by the handler
+ */
String[] roles() default {};
-
- /** List of SOAP headers processed by the handler */
- QName[] headers() default {};
+
+ /**
+ * List of SOAP headers processed by the handler. Each element in this
array contains a QName which defines the
+ * header element processed by the handler. The QNames are specified
using the string notation described in the
+ * documentation for javax.xml.namespace.QName.valueOf(String
qNameAsString)
+ */
+ String[] headers() default {};
};
+
+
Modified:
incubator/beehive/trunk/wsm/src/api/javax/jws/soap/SOAPMessageHandlers.java
==============================================================================
--- incubator/beehive/trunk/wsm/src/api/javax/jws/soap/SOAPMessageHandlers.java
(original)
+++ incubator/beehive/trunk/wsm/src/api/javax/jws/soap/SOAPMessageHandlers.java
Wed Oct 6 09:04:00 2004
@@ -6,20 +6,17 @@
import java.lang.annotation.ElementType;
/**
- * Specifies a list of SOAP protocol handlers that run before and after
- * business methods on the Web Service. These handlers are called in
- * response to SOAP messages targeting the service. The handler API and
- * processing rules are described in JAX-RPC 1.1, section 12.
+ * Specifies a list of SOAP protocol handlers that run before and after
business methods on the Web Service. These
+ * handlers are called in response to SOAP messages targeting the service.
*
- * It is an error to combine this annotation with the <code>HandlerChain</code>
- * annotation.
- *
- * @author Copyright (c) 2003-2005 BEA Systems, Inc.
+ * The @SOAPMessageHandlers annotation is an array of SOAPMessageHandler
types. The handlers are run in the order in
+ * which they appear in the annotation, starting with the first handler in the
array.
*
+ * @author Copyright (c) 2004 by BEA Systems, Inc. All Rights Reserved.
*/
[EMAIL PROTECTED](RetentionPolicy.RUNTIME)
[EMAIL PROTECTED]({ElementType.TYPE})
[EMAIL PROTECTED](value = RetentionPolicy.RUNTIME)
[EMAIL PROTECTED](value = {ElementType.TYPE})
public @interface SOAPMessageHandlers {
- /** The list of SOAP message handlers */
- public SOAPMessageHandler[] value();
+
+ SOAPMessageHandler[] value();
};
Modified:
incubator/beehive/trunk/wsm/src/runtime/org/apache/beehive/wsm/jsr181/model/InitParamInfo.java
==============================================================================
---
incubator/beehive/trunk/wsm/src/runtime/org/apache/beehive/wsm/jsr181/model/InitParamInfo.java
(original)
+++
incubator/beehive/trunk/wsm/src/runtime/org/apache/beehive/wsm/jsr181/model/InitParamInfo.java
Wed Oct 6 09:04:00 2004
@@ -1,6 +1,6 @@
package org.apache.beehive.wsm.jsr181.model;
-import javax.jws.InitParam;
+import javax.jws.soap.InitParam;
/*
* Copyright 2004 The Apache Software Foundation
Modified:
incubator/beehive/trunk/wsm/src/runtime/org/apache/beehive/wsm/jsr181/model/SOAPBindingInfo.java
==============================================================================
---
incubator/beehive/trunk/wsm/src/runtime/org/apache/beehive/wsm/jsr181/model/SOAPBindingInfo.java
(original)
+++
incubator/beehive/trunk/wsm/src/runtime/org/apache/beehive/wsm/jsr181/model/SOAPBindingInfo.java
Wed Oct 6 09:04:00 2004
@@ -80,9 +80,6 @@
setUse(annotation.use());
setParameterStyle(annotation.parameterStyle());
- // set the defaults
- if(getStyle() == SOAPBinding.Style.DEFAULT)
setStyle(SOAPBinding.Style.DOCUMENT);
- if(getUse() == SOAPBinding.Use.DEFAULT)
setUse(SOAPBinding.Use.LITERAL);
- if(getParameterStyle() == SOAPBinding.ParameterStyle.DEFAULT)
setParameterStyle(SOAPBinding.ParameterStyle.WRAPPED);
+ // set the defaults -- no defaults to set
}
}
Modified:
incubator/beehive/trunk/wsm/src/runtime/org/apache/beehive/wsm/jsr181/model/SOAPMessageHandlerInfo.java
==============================================================================
---
incubator/beehive/trunk/wsm/src/runtime/org/apache/beehive/wsm/jsr181/model/SOAPMessageHandlerInfo.java
(original)
+++
incubator/beehive/trunk/wsm/src/runtime/org/apache/beehive/wsm/jsr181/model/SOAPMessageHandlerInfo.java
Wed Oct 6 09:04:00 2004
@@ -8,8 +8,7 @@
import java.util.HashMap;
import java.util.Map;
-import javax.jws.InitParam;
-import javax.jws.QName;
+import javax.jws.soap.InitParam;
import javax.jws.soap.SOAPMessageHandler;
@@ -36,7 +35,7 @@
String className;
HashMap<String, String> parameterMap = new HashMap<String, String>();
Collection<String> roles = new ArrayList<String>();
- Collection<QNameInfo> headers = new ArrayList<QNameInfo>();
+ Collection<String> headers = new ArrayList<String>();
/**
*
*/
@@ -57,8 +56,8 @@
addInitParam(p.name(), p.value());
}
addRoles(Arrays.asList(annotation.roles()));
- for (QName q : annotation.headers()) {
- addHeader(new QNameInfo(q));
+ for (String s : annotation.headers()) {
+ addHeader(s);
}
}
}
@@ -67,7 +66,7 @@
String handlerName,
Map<String, String> initParams,
Collection<String> roles,
- Collection<QNameInfo> headers)
+ Collection<String> headers)
{
setClassName(handlerClassName);
setName((handlerName != null && handlerName.length() > 0)
@@ -105,17 +104,17 @@
/**
* @return Returns the headers.
*/
- public Collection<QNameInfo> getHeaders() {
+ public Collection<String> getHeaders() {
return Collections.unmodifiableCollection(headers);
}
- public void addHeader(QNameInfo header) {
+ public void addHeader(String header) {
this.headers.add(header);
}
/**
* @param collection
*/
- private void addHeaders(Collection<QNameInfo> headers) {
+ private void addHeaders(Collection<String> headers) {
this.headers.addAll(headers);
}
Modified:
incubator/beehive/trunk/wsm/src/runtime/org/apache/beehive/wsm/jsr181/model/SecurityRolesInfo.java
==============================================================================
---
incubator/beehive/trunk/wsm/src/runtime/org/apache/beehive/wsm/jsr181/model/SecurityRolesInfo.java
(original)
+++
incubator/beehive/trunk/wsm/src/runtime/org/apache/beehive/wsm/jsr181/model/SecurityRolesInfo.java
Wed Oct 6 09:04:00 2004
@@ -5,7 +5,7 @@
import java.util.Collection;
import java.util.Collections;
-import javax.jws.SecurityRoles;
+import javax.jws.security.SecurityRoles;
/*
* Copyright 2004 The Apache Software Foundation
Modified:
incubator/beehive/trunk/wsm/src/runtime/org/apache/beehive/wsm/jsr181/model/WebServiceMETHODMetadata.java
==============================================================================
---
incubator/beehive/trunk/wsm/src/runtime/org/apache/beehive/wsm/jsr181/model/WebServiceMETHODMetadata.java
(original)
+++
incubator/beehive/trunk/wsm/src/runtime/org/apache/beehive/wsm/jsr181/model/WebServiceMETHODMetadata.java
Wed Oct 6 09:04:00 2004
@@ -26,7 +26,7 @@
import java.util.List;
import javax.jws.Oneway;
-import javax.jws.SecurityRoles;
+import javax.jws.security.SecurityRoles;
import javax.jws.WebMethod;
import javax.jws.WebParam;
import javax.jws.WebResult;
@@ -40,8 +40,8 @@
new ArrayList<WebServicePARAMETERMetadata>();
private String wrName; // webresults
private SOAPBindingInfo soapBinding;
- private QNameInfo dwRequestElement;
- private QNameInfo dwResponseElement;
+// private QNameInfo dwRequestElement;
+// private QNameInfo dwResponseElement;
private SecurityRolesInfo securityRoles;
private String javaMethodName;
private Class javaReturnType;
@@ -131,9 +131,9 @@
{
initFromAnnotation((javax.jws.Oneway) a);
}
- else if (a.annotationType() == javax.jws.SecurityRoles.class)
+ else if (a.annotationType() ==
javax.jws.security.SecurityRoles.class)
{
- initFromAnnotation((javax.jws.SecurityRoles) a);
+ initFromAnnotation((javax.jws.security.SecurityRoles) a);
}
else if (a.annotationType() == javax.jws.WebResult.class)
{
@@ -186,7 +186,7 @@
setWmAction("");
}
}
-
+/*
public QNameInfo getDwRequestElement()
{
return dwRequestElement;
@@ -206,7 +206,7 @@
{
this.dwResponseElement = dwResponseElement;
}
-
+*/
public boolean isOneWay()
{
return oneway;
Modified:
incubator/beehive/trunk/wsm/src/runtime/org/apache/beehive/wsm/jsr181/model/WebServiceTYPEMetadata.java
==============================================================================
---
incubator/beehive/trunk/wsm/src/runtime/org/apache/beehive/wsm/jsr181/model/WebServiceTYPEMetadata.java
(original)
+++
incubator/beehive/trunk/wsm/src/runtime/org/apache/beehive/wsm/jsr181/model/WebServiceTYPEMetadata.java
Wed Oct 6 09:04:00 2004
@@ -32,8 +32,8 @@
import java.util.Map;
import javax.jws.HandlerChain;
-import javax.jws.SecurityIdentity;
-import javax.jws.SecurityRoles;
+import javax.jws.security.SecurityIdentity;
+import javax.jws.security.SecurityRoles;
import javax.jws.WebService;
import javax.jws.soap.SOAPBinding;
import javax.jws.soap.SOAPMessageHandler;
@@ -67,7 +67,7 @@
private String hcName;
private List<SOAPMessageHandlerInfo> soapHandlers = new
ArrayList<SOAPMessageHandlerInfo>();
private SecurityRolesInfo securityRoles;
- private String siRunAs;
+ private String siValue;
private String javaFQClassName;
public WebServiceTYPEMetadata(String fqClassName)
@@ -118,13 +118,13 @@
}
// @SecurityIdentity
- else if (a.annotationType() == javax.jws.SecurityIdentity.class) {
- initFromAnnotation((javax.jws.SecurityIdentity) a);
+ else if (a.annotationType() ==
javax.jws.security.SecurityIdentity.class) {
+ initFromAnnotation((javax.jws.security.SecurityIdentity) a);
}
// @SecurityRoles
- else if (a.annotationType() == javax.jws.SecurityRoles.class) {
- initFromAnnotation((javax.jws.SecurityRoles) a);
+ else if (a.annotationType() ==
javax.jws.security.SecurityRoles.class) {
+ initFromAnnotation((javax.jws.security.SecurityRoles) a);
}
// @SOAPBinding (TYPE-level)
@@ -197,7 +197,7 @@
"illegal SOAPBinding annotation on WebService class:\n\t"
+ sbi);
}
-
+/* not defaults to set anymore...
// style
if (javax.jws.soap.SOAPBinding.Style.DEFAULT == sbi.getStyle()) {
sbi.setStyle(javax.jws.soap.SOAPBinding.Style.DOCUMENT);
@@ -214,7 +214,7 @@
sbi
.setParameterStyle(javax.jws.soap.SOAPBinding.ParameterStyle.WRAPPED);
}
-
+*/
}
private void initFromAnnotation(HandlerChain annotation) {
@@ -272,7 +272,7 @@
private void initFromAnnotation(SecurityIdentity annotation) {
if (null != annotation) {
- setSiRunAs(annotation.runAs());
+ setSiValue(annotation.value());
}
// no defaults to handle
@@ -374,7 +374,7 @@
String handlerClassName = null;
Map<String, String> initParams = new HashMap<String, String>();
Collection<String> roles = new ArrayList<String>();
- Collection<QNameInfo> headers = new ArrayList<QNameInfo>();
+ Collection<String> headers = new ArrayList<String>();
Node currentChild = handlerNode.getFirstChild();
while (currentChild != null) {
@@ -392,9 +392,7 @@
.getFirstChild().getNodeValue());
}
else if ("soap-header".equals(nodeName)) {
- headers.add(new QNameInfo(QName.valueOf(currentChild
- .getFirstChild()
- .getNodeValue())));
+ headers.add(currentChild.getFirstChild().getNodeValue());
}
else if ("init-param".equals(nodeName)) {
nodeName = currentChild.getFirstChild().getNodeName();
@@ -479,16 +477,16 @@
/**
* @return Returns the siRunAs.
*/
- public String getSiRunAs() {
- return siRunAs;
+ public String getSiValue() {
+ return siValue;
}
/**
* @param siRunAs
* The siRunAs to set.
*/
- public void setSiRunAs(String siRunAs) {
- this.siRunAs = siRunAs;
+ public void setSiValue(String siValue) {
+ this.siValue = siValue;
}
/**