geronimo-scm mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From dblev...@apache.org
Subject svn commit: r153028 [1/5] - in geronimo/trunk: etc/ specs/j2ee/ specs/jaxrpc/ specs/jaxrpc/src/ specs/jaxrpc/src/javax/ specs/jaxrpc/src/javax/xml/ specs/jaxrpc/src/javax/xml/rpc/ specs/jaxrpc/src/javax/xml/rpc/encoding/ specs/jaxrpc/src/javax/xml/rpc/handler/ specs/jaxrpc/src/javax/xml/rpc/handler/soap/ specs/jaxrpc/src/javax/xml/rpc/holders/ specs/jaxrpc/src/javax/xml/rpc/server/ specs/jaxrpc/src/javax/xml/rpc/soap/ specs/qname/ specs/qname/src/ specs/qname/src/javax/ specs/qname/src/javax/xml/ specs/qname/src/javax/xml/namespace/ specs/saaj/ specs/saaj/src/ specs/saaj/src/javax/ specs/saaj/src/javax/xml/ specs/saaj/src/javax/xml/soap/
Date Wed, 09 Feb 2005 06:01:03 GMT
Author: dblevins
Date: Tue Feb  8 22:00:44 2005
New Revision: 153028

URL: http://svn.apache.org/viewcvs?view=rev&rev=153028
Log:
Added more required J2EE libraries

Added:
    geronimo/trunk/specs/jaxrpc/
    geronimo/trunk/specs/jaxrpc/LICENSE.txt
    geronimo/trunk/specs/jaxrpc/NOTICE.txt
    geronimo/trunk/specs/jaxrpc/project.xml
    geronimo/trunk/specs/jaxrpc/src/
    geronimo/trunk/specs/jaxrpc/src/javax/
    geronimo/trunk/specs/jaxrpc/src/javax/xml/
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/Call.java
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/FactoryFinder.java
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/JAXRPCException.java
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/NamespaceConstants.java
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/ParameterMode.java
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/Service.java
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/ServiceException.java
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/ServiceFactory.java
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/Stub.java
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/encoding/
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/encoding/DeserializationContext.java
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/encoding/Deserializer.java
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/encoding/DeserializerFactory.java
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/encoding/SerializationContext.java
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/encoding/Serializer.java
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/encoding/SerializerFactory.java
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/encoding/TypeMapping.java
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/encoding/TypeMappingRegistry.java
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/encoding/XMLType.java
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/handler/
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/handler/GenericHandler.java
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/handler/Handler.java
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/handler/HandlerChain.java
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/handler/HandlerInfo.java
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/handler/HandlerRegistry.java
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/handler/MessageContext.java
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/handler/soap/
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/handler/soap/SOAPMessageContext.java
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/holders/
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/holders/BigDecimalHolder.java
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/holders/BigIntegerHolder.java
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/holders/BooleanHolder.java
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/holders/BooleanWrapperHolder.java
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/holders/ByteArrayHolder.java
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/holders/ByteHolder.java
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/holders/ByteWrapperHolder.java
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/holders/CalendarHolder.java
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/holders/DoubleHolder.java
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/holders/DoubleWrapperHolder.java
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/holders/FloatHolder.java
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/holders/FloatWrapperHolder.java
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/holders/Holder.java
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/holders/IntHolder.java
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/holders/IntegerWrapperHolder.java
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/holders/LongHolder.java
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/holders/LongWrapperHolder.java
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/holders/ObjectHolder.java
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/holders/QNameHolder.java
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/holders/ShortHolder.java
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/holders/ShortWrapperHolder.java
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/holders/StringHolder.java
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/server/
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/server/ServiceLifecycle.java
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/server/ServletEndpointContext.java
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/soap/
    geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/soap/SOAPFaultException.java
    geronimo/trunk/specs/qname/
    geronimo/trunk/specs/qname/LICENSE.txt
    geronimo/trunk/specs/qname/NOTICE.txt
    geronimo/trunk/specs/qname/project.xml
    geronimo/trunk/specs/qname/src/
    geronimo/trunk/specs/qname/src/javax/
    geronimo/trunk/specs/qname/src/javax/xml/
    geronimo/trunk/specs/qname/src/javax/xml/namespace/
    geronimo/trunk/specs/qname/src/javax/xml/namespace/QName.java
    geronimo/trunk/specs/saaj/
    geronimo/trunk/specs/saaj/LICENSE.txt
    geronimo/trunk/specs/saaj/NOTICE.txt
    geronimo/trunk/specs/saaj/project.xml
    geronimo/trunk/specs/saaj/src/
    geronimo/trunk/specs/saaj/src/javax/
    geronimo/trunk/specs/saaj/src/javax/xml/
    geronimo/trunk/specs/saaj/src/javax/xml/soap/
    geronimo/trunk/specs/saaj/src/javax/xml/soap/AttachmentPart.java
    geronimo/trunk/specs/saaj/src/javax/xml/soap/Detail.java
    geronimo/trunk/specs/saaj/src/javax/xml/soap/DetailEntry.java
    geronimo/trunk/specs/saaj/src/javax/xml/soap/FactoryFinder.java
    geronimo/trunk/specs/saaj/src/javax/xml/soap/MessageFactory.java
    geronimo/trunk/specs/saaj/src/javax/xml/soap/MimeHeader.java
    geronimo/trunk/specs/saaj/src/javax/xml/soap/MimeHeaders.java
    geronimo/trunk/specs/saaj/src/javax/xml/soap/Name.java
    geronimo/trunk/specs/saaj/src/javax/xml/soap/Node.java
    geronimo/trunk/specs/saaj/src/javax/xml/soap/SOAPBody.java
    geronimo/trunk/specs/saaj/src/javax/xml/soap/SOAPBodyElement.java
    geronimo/trunk/specs/saaj/src/javax/xml/soap/SOAPConnection.java
    geronimo/trunk/specs/saaj/src/javax/xml/soap/SOAPConnectionFactory.java
    geronimo/trunk/specs/saaj/src/javax/xml/soap/SOAPConstants.java
    geronimo/trunk/specs/saaj/src/javax/xml/soap/SOAPElement.java
    geronimo/trunk/specs/saaj/src/javax/xml/soap/SOAPElementFactory.java
    geronimo/trunk/specs/saaj/src/javax/xml/soap/SOAPEnvelope.java
    geronimo/trunk/specs/saaj/src/javax/xml/soap/SOAPException.java
    geronimo/trunk/specs/saaj/src/javax/xml/soap/SOAPFactory.java
    geronimo/trunk/specs/saaj/src/javax/xml/soap/SOAPFault.java
    geronimo/trunk/specs/saaj/src/javax/xml/soap/SOAPFaultElement.java
    geronimo/trunk/specs/saaj/src/javax/xml/soap/SOAPHeader.java
    geronimo/trunk/specs/saaj/src/javax/xml/soap/SOAPHeaderElement.java
    geronimo/trunk/specs/saaj/src/javax/xml/soap/SOAPMessage.java
    geronimo/trunk/specs/saaj/src/javax/xml/soap/SOAPPart.java
    geronimo/trunk/specs/saaj/src/javax/xml/soap/Text.java
Modified:
    geronimo/trunk/etc/project.properties
    geronimo/trunk/specs/j2ee/project.xml

Modified: geronimo/trunk/etc/project.properties
URL: http://svn.apache.org/viewcvs/geronimo/trunk/etc/project.properties?view=diff&r1=153027&r2=153028
==============================================================================
--- geronimo/trunk/etc/project.properties (original)
+++ geronimo/trunk/etc/project.properties Tue Feb  8 22:00:44 2005
@@ -84,10 +84,13 @@
 geronimo_spec_j2ee_management_version=1.0-rc3
 geronimo_spec_javamail_version=1.3.1-SNAPSHOT
 geronimo_spec_jaxr_version=1.0-rc3
+geronimo_spec_jaxrpc_version=1.1-rc3
 geronimo_spec_jms_version=1.1-rc3
 geronimo_spec_jsp_version=2.0-rc3
 geronimo_spec_jta_version=1.0.1B-rc3
+geronimo_spec_saaj_version=1.1-rc3
 geronimo_spec_servlet_version=2.4-rc3
+geronimo_spec_qname_version=1.1-rc3
 
 activecluster_version=1.0-SNAPSHOT
 activemq_jetty_version=4.2.20RC0

Modified: geronimo/trunk/specs/j2ee/project.xml
URL: http://svn.apache.org/viewcvs/geronimo/trunk/specs/j2ee/project.xml?view=diff&r1=153027&r2=153028
==============================================================================
--- geronimo/trunk/specs/j2ee/project.xml (original)
+++ geronimo/trunk/specs/j2ee/project.xml Tue Feb  8 22:00:44 2005
@@ -142,18 +142,27 @@
         </dependency>
 
         <dependency>
-            <groupId>axis</groupId>
-            <artifactId>axis-jaxrpc</artifactId>
-            <version>${axis_jaxrpc_version}</version>
+            <groupId>geronimo-spec</groupId>
+            <artifactId>geronimo-jaxrpc</artifactId>
+            <version>${geronimo_spec_jaxrpc_version}</version>
             <properties>
                 <geronimo.spec.bundle>true</geronimo.spec.bundle>
             </properties>
         </dependency>
 
         <dependency>
-            <groupId>axis</groupId>
-            <artifactId>axis-saaj</artifactId>
-            <version>${axis_saaj_version}</version>
+            <groupId>geronimo-spec</groupId>
+            <artifactId>geronimo-spec-saaj</artifactId>
+            <version>${geronimo_spec_saaj_version}</version>
+            <properties>
+                <geronimo.spec.bundle>true</geronimo.spec.bundle>
+            </properties>
+        </dependency>
+
+        <dependency>
+            <groupId>geronimo-spec</groupId>
+            <artifactId>geronimo-spec-qname</artifactId>
+            <version>${geronimo_spec_qname_version}</version>
             <properties>
                 <geronimo.spec.bundle>true</geronimo.spec.bundle>
             </properties>

Added: geronimo/trunk/specs/jaxrpc/LICENSE.txt
URL: http://svn.apache.org/viewcvs/geronimo/trunk/specs/jaxrpc/LICENSE.txt?view=auto&rev=153028
==============================================================================
--- geronimo/trunk/specs/jaxrpc/LICENSE.txt (added)
+++ geronimo/trunk/specs/jaxrpc/LICENSE.txt Tue Feb  8 22:00:44 2005
@@ -0,0 +1,203 @@
+
+                                 Apache License
+                           Version 2.0, January 2004
+                        http://www.apache.org/licenses/
+
+   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+   1. Definitions.
+
+      "License" shall mean the terms and conditions for use, reproduction,
+      and distribution as defined by Sections 1 through 9 of this document.
+
+      "Licensor" shall mean the copyright owner or entity authorized by
+      the copyright owner that is granting the License.
+
+      "Legal Entity" shall mean the union of the acting entity and all
+      other entities that control, are controlled by, or are under common
+      control with that entity. For the purposes of this definition,
+      "control" means (i) the power, direct or indirect, to cause the
+      direction or management of such entity, whether by contract or
+      otherwise, or (ii) ownership of fifty percent (50%) or more of the
+      outstanding shares, or (iii) beneficial ownership of such entity.
+
+      "You" (or "Your") shall mean an individual or Legal Entity
+      exercising permissions granted by this License.
+
+      "Source" form shall mean the preferred form for making modifications,
+      including but not limited to software source code, documentation
+      source, and configuration files.
+
+      "Object" form shall mean any form resulting from mechanical
+      transformation or translation of a Source form, including but
+      not limited to compiled object code, generated documentation,
+      and conversions to other media types.
+
+      "Work" shall mean the work of authorship, whether in Source or
+      Object form, made available under the License, as indicated by a
+      copyright notice that is included in or attached to the work
+      (an example is provided in the Appendix below).
+
+      "Derivative Works" shall mean any work, whether in Source or Object
+      form, that is based on (or derived from) the Work and for which the
+      editorial revisions, annotations, elaborations, or other modifications
+      represent, as a whole, an original work of authorship. For the purposes
+      of this License, Derivative Works shall not include works that remain
+      separable from, or merely link (or bind by name) to the interfaces of,
+      the Work and Derivative Works thereof.
+
+      "Contribution" shall mean any work of authorship, including
+      the original version of the Work and any modifications or additions
+      to that Work or Derivative Works thereof, that is intentionally
+      submitted to Licensor for inclusion in the Work by the copyright owner
+      or by an individual or Legal Entity authorized to submit on behalf of
+      the copyright owner. For the purposes of this definition, "submitted"
+      means any form of electronic, verbal, or written communication sent
+      to the Licensor or its representatives, including but not limited to
+      communication on electronic mailing lists, source code control systems,
+      and issue tracking systems that are managed by, or on behalf of, the
+      Licensor for the purpose of discussing and improving the Work, but
+      excluding communication that is conspicuously marked or otherwise
+      designated in writing by the copyright owner as "Not a Contribution."
+
+      "Contributor" shall mean Licensor and any individual or Legal Entity
+      on behalf of whom a Contribution has been received by Licensor and
+      subsequently incorporated within the Work.
+
+   2. Grant of Copyright License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      copyright license to reproduce, prepare Derivative Works of,
+      publicly display, publicly perform, sublicense, and distribute the
+      Work and such Derivative Works in Source or Object form.
+
+   3. Grant of Patent License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      (except as stated in this section) patent license to make, have made,
+      use, offer to sell, sell, import, and otherwise transfer the Work,
+      where such license applies only to those patent claims licensable
+      by such Contributor that are necessarily infringed by their
+      Contribution(s) alone or by combination of their Contribution(s)
+      with the Work to which such Contribution(s) was submitted. If You
+      institute patent litigation against any entity (including a
+      cross-claim or counterclaim in a lawsuit) alleging that the Work
+      or a Contribution incorporated within the Work constitutes direct
+      or contributory patent infringement, then any patent licenses
+      granted to You under this License for that Work shall terminate
+      as of the date such litigation is filed.
+
+   4. Redistribution. You may reproduce and distribute copies of the
+      Work or Derivative Works thereof in any medium, with or without
+      modifications, and in Source or Object form, provided that You
+      meet the following conditions:
+
+      (a) You must give any other recipients of the Work or
+          Derivative Works a copy of this License; and
+
+      (b) You must cause any modified files to carry prominent notices
+          stating that You changed the files; and
+
+      (c) You must retain, in the Source form of any Derivative Works
+          that You distribute, all copyright, patent, trademark, and
+          attribution notices from the Source form of the Work,
+          excluding those notices that do not pertain to any part of
+          the Derivative Works; and
+
+      (d) If the Work includes a "NOTICE" text file as part of its
+          distribution, then any Derivative Works that You distribute must
+          include a readable copy of the attribution notices contained
+          within such NOTICE file, excluding those notices that do not
+          pertain to any part of the Derivative Works, in at least one
+          of the following places: within a NOTICE text file distributed
+          as part of the Derivative Works; within the Source form or
+          documentation, if provided along with the Derivative Works; or,
+          within a display generated by the Derivative Works, if and
+          wherever such third-party notices normally appear. The contents
+          of the NOTICE file are for informational purposes only and
+          do not modify the License. You may add Your own attribution
+          notices within Derivative Works that You distribute, alongside
+          or as an addendum to the NOTICE text from the Work, provided
+          that such additional attribution notices cannot be construed
+          as modifying the License.
+
+      You may add Your own copyright statement to Your modifications and
+      may provide additional or different license terms and conditions
+      for use, reproduction, or distribution of Your modifications, or
+      for any such Derivative Works as a whole, provided Your use,
+      reproduction, and distribution of the Work otherwise complies with
+      the conditions stated in this License.
+
+   5. Submission of Contributions. Unless You explicitly state otherwise,
+      any Contribution intentionally submitted for inclusion in the Work
+      by You to the Licensor shall be under the terms and conditions of
+      this License, without any additional terms or conditions.
+      Notwithstanding the above, nothing herein shall supersede or modify
+      the terms of any separate license agreement you may have executed
+      with Licensor regarding such Contributions.
+
+   6. Trademarks. This License does not grant permission to use the trade
+      names, trademarks, service marks, or product names of the Licensor,
+      except as required for reasonable and customary use in describing the
+      origin of the Work and reproducing the content of the NOTICE file.
+
+   7. Disclaimer of Warranty. Unless required by applicable law or
+      agreed to in writing, Licensor provides the Work (and each
+      Contributor provides its Contributions) on an "AS IS" BASIS,
+      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+      implied, including, without limitation, any warranties or conditions
+      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+      PARTICULAR PURPOSE. You are solely responsible for determining the
+      appropriateness of using or redistributing the Work and assume any
+      risks associated with Your exercise of permissions under this License.
+
+   8. Limitation of Liability. In no event and under no legal theory,
+      whether in tort (including negligence), contract, or otherwise,
+      unless required by applicable law (such as deliberate and grossly
+      negligent acts) or agreed to in writing, shall any Contributor be
+      liable to You for damages, including any direct, indirect, special,
+      incidental, or consequential damages of any character arising as a
+      result of this License or out of the use or inability to use the
+      Work (including but not limited to damages for loss of goodwill,
+      work stoppage, computer failure or malfunction, or any and all
+      other commercial damages or losses), even if such Contributor
+      has been advised of the possibility of such damages.
+
+   9. Accepting Warranty or Additional Liability. While redistributing
+      the Work or Derivative Works thereof, You may choose to offer,
+      and charge a fee for, acceptance of support, warranty, indemnity,
+      or other liability obligations and/or rights consistent with this
+      License. However, in accepting such obligations, You may act only
+      on Your own behalf and on Your sole responsibility, not on behalf
+      of any other Contributor, and only if You agree to indemnify,
+      defend, and hold each Contributor harmless for any liability
+      incurred by, or claims asserted against, such Contributor by reason
+      of your accepting any such warranty or additional liability.
+
+   END OF TERMS AND CONDITIONS
+
+   APPENDIX: How to apply the Apache License to your work.
+
+      To apply the Apache License to your work, attach the following
+      boilerplate notice, with the fields enclosed by brackets "[]"
+      replaced with your own identifying information. (Don't include
+      the brackets!)  The text should be enclosed in the appropriate
+      comment syntax for the file format. We also recommend that a
+      file or class name and description of purpose be included on the
+      same "printed page" as the copyright notice for easier
+      identification within third-party archives.
+
+   Copyright [yyyy] [name of copyright owner]
+
+   Licensed under the Apache License, Version 2.0 (the "License");
+   you may not use this file except in compliance with the License.
+   You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+

Added: geronimo/trunk/specs/jaxrpc/NOTICE.txt
URL: http://svn.apache.org/viewcvs/geronimo/trunk/specs/jaxrpc/NOTICE.txt?view=auto&rev=153028
==============================================================================
--- geronimo/trunk/specs/jaxrpc/NOTICE.txt (added)
+++ geronimo/trunk/specs/jaxrpc/NOTICE.txt Tue Feb  8 22:00:44 2005
@@ -0,0 +1,3 @@
+This product includes software developed by
+The Apache Software Foundation (http://www.apache.org/).
+

Added: geronimo/trunk/specs/jaxrpc/project.xml
URL: http://svn.apache.org/viewcvs/geronimo/trunk/specs/jaxrpc/project.xml?view=auto&rev=153028
==============================================================================
--- geronimo/trunk/specs/jaxrpc/project.xml (added)
+++ geronimo/trunk/specs/jaxrpc/project.xml Tue Feb  8 22:00:44 2005
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+    Copyright 2003-2004 The Apache Software Foundation
+
+    Licensed under the Apache License, Version 2.0 (the "License");
+    you may not use this file except in compliance with the License.
+    You may obtain a copy of the License at
+  
+       http://www.apache.org/licenses/LICENSE-2.0
+  
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+-->
+  
+                                   
+<!-- $Rev: 46019 $ $Date: 2004-09-14 02:56:06 -0700 (Tue, 14 Sep 2004) $ -->
+
+<project>
+    <pomVersion>3</pomVersion>
+    <extend>../../etc/project.xml</extend>
+
+    <name>Geronimo :: Java API for XML-Based RPC (JAXRPC)</name>
+    <groupId>geronimo-spec</groupId>
+    <id>geronimo-spec-jaxrpc</id>
+    <shortDescription>Java API for XML-Based RPC</shortDescription>
+    <description></description>
+    <siteDirectory></siteDirectory>
+    <distributionDirectory></distributionDirectory>
+
+    <package>javax.xml.rpc</package>
+
+    <currentVersion>${geronimo_spec_jaxrpc_version}</currentVersion>
+
+    <!-- ============ -->
+    <!-- Dependencies -->
+    <!-- ============ -->
+
+    <dependencies>
+        <dependency>
+            <groupId>geronimo-spec</groupId>
+            <artifactId>geronimo-spec-qname</artifactId>
+            <version>${geronimo_spec_qname_version}</version>
+        </dependency>
+    </dependencies>
+</project>

Added: geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/Call.java
URL: http://svn.apache.org/viewcvs/geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/Call.java?view=auto&rev=153028
==============================================================================
--- geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/Call.java (added)
+++ geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/Call.java Tue Feb  8 22:00:44 2005
@@ -0,0 +1,427 @@
+/*
+ * Copyright 2001-2004 The Apache Software Foundation.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package javax.xml.rpc;
+
+import javax.xml.namespace.QName;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * The <code>javax.xml.rpc.Call</code> interface provides support
+ * for the dynamic invocation of a service endpoint. The
+ * <code>javax.xml.rpc.Service</code> interface acts as a factory
+ * for the creation of <code>Call</code> instances.
+ * <p>
+ * Once a <code>Call</code> instance is created, various setter
+ * and getter methods may be used to configure this <code>Call</code>
+ * instance.
+ *
+ * @version 1.0
+ */
+public interface Call {
+
+    /**
+     * Standard property: User name for authentication
+     * <p>Type: <code>java.lang.String
+     */
+    public static final String USERNAME_PROPERTY =
+        "javax.xml.rpc.security.auth.username";
+
+    /**
+     * Standard property: Password for authentication
+     * <p>Type: <code>java.lang.String</code>
+     */
+    public static final String PASSWORD_PROPERTY =
+        "javax.xml.rpc.security.auth.password";
+
+    /**
+     * Standard property for operation style. This property is
+     * set to "rpc" if the operation style is rpc; "document"
+     * if the operation style is document.
+     * <p>Type: <code>java.lang.String</code>
+     */
+    public static final String OPERATION_STYLE_PROPERTY =
+        "javax.xml.rpc.soap.operation.style";
+
+    /**
+     * Standard property for SOAPAction. This boolean property
+     * indicates whether or not SOAPAction is to be used. The
+     * default value of this property is false indicating that
+     * the SOAPAction is not used.
+     * <p>Type: <code>java.lang.Boolean</code>
+     */
+    public static final String SOAPACTION_USE_PROPERTY =
+        "javax.xml.rpc.soap.http.soapaction.use";
+
+    /**
+     * Standard property for SOAPAction. Indicates the SOAPAction
+     * URI if the <code>javax.xml.rpc.soap.http.soapaction.use</code>
+     * property is set to <code>true</code>.
+     * <p>Type: <code>java.lang.String</code>
+     */
+    public static final String SOAPACTION_URI_PROPERTY =
+        "javax.xml.rpc.soap.http.soapaction.uri";
+
+    /**
+     * Standard property for encoding Style:  Encoding style specified
+     * as a namespace URI. The default value is the SOAP 1.1 encoding
+     * <code>http://schemas.xmlsoap.org/soap/encoding/</code>
+     * <p>Type: <code>java.lang.String</code>
+     */
+    public static final String ENCODINGSTYLE_URI_PROPERTY =
+        "javax.xml.rpc.encodingstyle.namespace.uri";
+
+    /**
+     * Standard property: This boolean property is used by a service
+     * client to indicate whether or not it wants to participate in
+     * a session with a service endpoint. If this property is set to
+     * true, the service client indicates that it wants the session
+     * to be maintained. If set to false, the session is not maintained.
+     * The default value for this property is <code>false</code>.
+     * <p>Type: <code>java.lang.Boolean</code>
+     */
+    public static final String SESSION_MAINTAIN_PROPERTY =
+        "javax.xml.rpc.session.maintain";
+
+    /**
+     * Indicates whether <code>addParameter</code> and
+     * <code>setReturnType</code> methods
+     * are to be invoked to specify the parameter and return type
+     * specification for a specific operation.
+     *
+     * @param operationName Qualified name of the operation
+     *
+     * @return Returns true if the Call implementation class
+     *      requires addParameter and setReturnType to be
+     *      invoked in the client code for the specified
+     *      operation. This method returns false otherwise.
+     */
+    public boolean isParameterAndReturnSpecRequired(QName operationName);
+
+    /**
+     * Adds a parameter type and mode for a specific  operation.
+     * Note that the client code may not call any
+     * <code>addParameter</code> and <code>setReturnType</code>
+     * methods before calling the <code>invoke</code> method. In
+     * this case, the Call implementation class determines the
+     * parameter types by using reflection on parameters, using
+     * the WSDL description and configured type mapping registry.
+     *
+     * @param paramName Name of the parameter
+     * @param xmlType XML datatype of the parameter
+     * @param parameterMode Mode of the parameter-whether
+     *                <code>ParameterMode.IN</code>,
+     *                <code>ParameterMode.OUT</code>,
+     *                or <code>ParameterMode.INOUT
+     * @throws JAXRPCException This exception may
+     *     be thrown if the method <code>isParameterAndReturnSpecRequired</code>
+     *     returns <code>false</code> for this operation.
+     * @throws java.lang.IllegalArgumentException If any illegal
+     *     parameter name or XML type is specified
+     */
+    public void addParameter(String paramName, QName xmlType,
+                             ParameterMode parameterMode);
+
+    /**
+     * Adds a parameter type and mode for a specific  operation.
+     * This method is used to specify the Java type for either
+     * OUT or INOUT parameters.
+     *
+     * @param paramName Name of the parameter
+     * @param xmlType XML datatype of the parameter
+     * @param javaType The Java class of the parameter
+     * @param parameterMode Mode of the parameter-whether
+     *                ParameterMode.IN, OUT or INOUT
+     * @throws JAXRPCException <ul>
+     *
+     *     <li>This exception may be thrown if this method is
+     *     invoked when the method <code>isParameterAndReturnSpecRequired</code>
+     *     returns <code>false</code>.
+     *     <li>If specified XML type and Java type mapping
+     *     is not valid. For example, <code>TypeMappingRegistry</code>
+     *     has no serializers for this mapping.
+     *     </ul>
+     * @throws java.lang.IllegalArgumentException  If any illegal
+     *     parameter name or XML type is specified
+     * @throws java.lang.UnsupportedOperationException If this
+     *     method is not supported
+     */
+    public void addParameter(String paramName, QName xmlType, Class javaType,
+                             ParameterMode parameterMode);
+
+    /**
+     * Gets the XML type of a parameter by name.
+     *
+     * @param paramName name of the parameter
+     *
+     * @return Returns XML type for the specified parameter
+     */
+    public QName getParameterTypeByName(String paramName);
+
+    /**
+     * Sets the return type for a specific operation. Invoking
+     * <code>setReturnType(null)</code> removes the return
+     * type for this Call object.
+     *
+     * @param xmlType XML data type of the return value
+     * @throws JAXRPCException This exception
+     *     may be thrown when the method
+     *     <code>isParameterAndReturnSpecRequired</code> returns
+     *     <code>false</code>.
+     * @throws java.lang.IllegalArgumentException If an illegal
+     *     XML type is specified
+     */
+    public void setReturnType(QName xmlType);
+
+    /**
+     * Sets the return type for a specific operation.
+     *
+     * @param xmlType XML data type of the return value
+     * @param javaType Java class of the return value
+     * @throws JAXRPCException <ul>
+     *     <li>This exception may be thrown if this method is
+     *     invoked when the method <code>isParameterAndReturnSpecRequired</code>
+     *     returns <code>false</code>.
+     *     <li>If XML type and Java type cannot be mapped
+     *     using the standard type mapping or TypeMapping
+     *     registry
+     *     </ul>
+     * @throws java.lang.UnsupportedOperationException If this
+     *     method is not supported
+     * @throws java.lang.IllegalArgumentException If an illegal
+     *     XML type is specified
+     */
+    public void setReturnType(QName xmlType, Class javaType);
+
+    /**
+     * Gets the return type for a specific operation.
+     *
+     * @return  the XML type for the return value
+     */
+    public QName getReturnType();
+
+    /**
+     * Removes all specified parameters from this <code>Call</code> instance.
+     * Note that this method removes only the parameters and not
+     * the return type. The <code>setReturnType(null)</code> is
+     * used to remove the return type.
+     *
+     * @throws JAXRPCException This exception may be
+     *     thrown If this method is called when the method
+     *     <code>isParameterAndReturnSpecRequired</code>
+     *     returns <code>false</code> for this Call's operation.
+     */
+    public void removeAllParameters();
+
+    /**
+     * Gets the name of the operation to be invoked using this Call instance.
+     *
+     * @return Qualified name of the operation
+     */
+    public QName getOperationName();
+
+    /**
+     * Sets the name of the operation to be invoked using this
+     * <code>Call</code> instance.
+     *
+     * @param operationName QName of the operation to be
+     *                   invoked using the Call instance
+     */
+    public void setOperationName(QName operationName);
+
+    /**
+     * Gets the qualified name of the port type.
+     *
+     * @return Qualified name of the port type
+     */
+    public QName getPortTypeName();
+
+    /**
+     * Sets the qualified name of the port type.
+     *
+     * @param portType Qualified name of the port type
+     */
+    public void setPortTypeName(QName portType);
+
+    /**
+     * Sets the address of the target service endpoint.
+     * This address must correspond to the transport specified
+     * in the binding for this <code>Call</code> instance.
+     *
+     * @param address Address of the target service endpoint;
+     *             specified as an URI
+     */
+    public void setTargetEndpointAddress(String address);
+
+    /**
+     * Gets the address of a target service endpoint.
+     *
+     * @return Endpoint address of the target service port as an URI
+     */
+    public String getTargetEndpointAddress();
+
+    /**
+     * Sets the value for a named property. JAX-RPC specification
+     * specifies a standard set of properties that may be passed
+     * to the <code>Call.setProperty</code> method.
+     *
+     * @param name Name of the property
+     * @param value Value of the property
+     * @throws JAXRPCException <ul>
+     *     <li>If an optional standard property name is
+     *         specified, however this <code>Call</code> implementation
+     *         class does not support the configuration of
+     *         this property.
+     *     <li>If an invalid (or unsupported) property name is
+     *         specified or if a value of mismatched property
+     *         type is passed.
+     *     <li>If there is any error in the configuration of
+     *         a valid property.
+     *     </ul>
+     */
+    public void setProperty(String name, Object value);
+
+    /**
+     * Gets the value of a named property.
+     *
+     * @param name Name of the property
+     *
+     * @return Value of the named property
+     * @throws JAXRPCException if an invalid or
+     *     unsupported property name is passed.
+     */
+    public Object getProperty(String name);
+
+    /**
+     * Removes a named property.
+     *
+     * @param name Name of the property
+     * @throws JAXRPCException if an invalid or
+     *     unsupported property name is passed.
+     */
+    public void removeProperty(String name);
+
+    /**
+     * Gets the names of configurable properties supported by
+     * this <code>Call</code> object.
+     *
+     * @return Iterator for the property names
+     */
+    public Iterator getPropertyNames();
+
+    // Remote Method Invocation methods
+
+    /**
+     * Invokes a specific operation using a synchronous request-response
+     * interaction mode.
+     *
+     * @param inputParams Object[]--Parameters for this invocation. This
+     *     includes only the input params
+     *
+     * @return Returns the return value or <code>null</code>
+     *
+     * @throws java.rmi.RemoteException if there is any error in the remote
+     *                                    method invocation or if the Call
+     *                                    object is not configured properly.
+     * @throws javax.xml.rpc.soap.SOAPFaultException Indicates a SOAP fault
+     * @throws JAXRPCException <ul>
+     *
+     *     <li>If there is an error in the configuration of the
+     *         <code>Call</code> object
+     *     <li>If <code>inputParams</code> do not match the required parameter
+     *         set (as specified through the <code>addParameter</code>
+     *         invocations or in the corresponding WSDL)
+     *     <li>If parameters and return type are incorrectly
+     *         specified
+     *     </ul>
+     */
+    public Object invoke(Object[] inputParams) throws java.rmi.RemoteException;
+
+    /**
+     * Invokes a specific operation using a synchronous request-response
+     * interaction mode.
+     *
+     * @param operationName QName of the operation
+     * @param inputParams Object[]--Parameters for this invocation. This
+     *     includes only the input params.
+     *
+     * @return Return value or null
+     *
+     * @throws java.rmi.RemoteException if there is any error in the
+     *     remote method invocation.
+     * @throws javax.xml.rpc.soap.SOAPFaultException Indicates a SOAP fault
+     * @throws JAXRPCException <ul>
+     *     <li>If there is an error in the configuration of the
+     *         <code>Cal</code>l object
+     *     <li>If <code>inputParam</code>s do not match the required parameter
+     *         set (as specified through the <code>addParameter</code>
+     *         invocations or in the corresponding WSDL)
+     *     <li>If parameters and return type are incorrectly
+     *         specified
+     *     </ul>
+     */
+    public Object invoke(QName operationName, Object[] inputParams)
+        throws java.rmi.RemoteException;
+
+    /**
+     * Invokes a remote method using the one-way interaction mode. The
+     * client thread does not block waiting for the completion of the
+     * server processing for this remote method invocation. This method
+     * must not throw any remote exceptions. This method may throw a
+     * <code>JAXRPCException</code> during the processing of the one-way
+     * remote call.
+     *
+     * @param params  Object[]--Parameters for this invocation. This
+     *     includes only the input params.
+     *
+     * @throws JAXRPCException if there is an error in the
+     *     configuration of the <code>Call</code> object (example: a
+     *     non-void return type has been incorrectly specified for the
+     *     one-way call) or if there is any error during the
+     *     invocation of the one-way remote call
+     */
+    public void invokeOneWay(Object[] params);
+
+    /**
+     * Returns a <code>Map</code> of {name, value} for the output parameters of
+     * the last invoked operation. The parameter names in the
+     * returned Map are of type <code>java.lang.String</code>.
+     *
+     * @return Map Output parameters for the last <code>Call.invoke()</code>.
+     *         Empty <code>Map</code> is returned if there are no output
+     *         parameters.
+     * @throws javax.xml.rpc.JAXRPCException If this method is invoked for a
+     *     one-way operation or is invoked before any
+     *     <code>invoke</code> method has been called.
+     */
+    public Map getOutputParams();
+
+    /**
+     * Returns a <code>List</code> values for the output parameters
+     * of the last invoked operation.
+     *
+     * @return java.util.List Values for the output parameters. An
+     *         empty <code>List</code> is returned if there are
+     *         no output values.
+     *
+     * @throws JAXRPCException If this method is invoked for a
+     *     one-way operation or is invoked before any
+     *     <code>invoke</code> method has been called.
+     */
+    public List getOutputValues();
+}
+

Added: geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/FactoryFinder.java
URL: http://svn.apache.org/viewcvs/geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/FactoryFinder.java?view=auto&rev=153028
==============================================================================
--- geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/FactoryFinder.java (added)
+++ geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/FactoryFinder.java Tue Feb  8 22:00:44 2005
@@ -0,0 +1,247 @@
+/*
+ * Copyright 2001-2004 The Apache Software Foundation.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package javax.xml.rpc;
+
+import java.io.BufferedReader;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+import java.lang.reflect.InvocationTargetException;
+import java.lang.reflect.Method;
+import java.util.Properties;
+
+/**
+ * This code is designed to implement the pluggability
+ * feature and is designed to both compile and run on JDK version 1.1 and
+ * later.  The code also runs both as part of an unbundled jar file and
+ * when bundled as part of the JDK.
+ *
+ * This class is duplicated for each subpackage so keep it in sync.
+ * It is package private and therefore is not exposed as part of the JAXRPC
+ * API.
+ */
+class FactoryFinder {
+    /** Set to true for debugging. */
+    private static final boolean debug = false;
+
+    private static void debugPrintln(String msg) {
+        if (debug) {
+            System.err.println("JAXRPC: " + msg);
+        }
+    }
+
+    /**
+     * Figure out which ClassLoader to use.  For JDK 1.2 and later use
+     * the context ClassLoader.
+     *
+     * @return the <code>ClassLoader</code>
+     * @throws ConfigurationError   if this class is unable to work with the
+     *              host JDK
+     */
+    private static ClassLoader findClassLoader()
+        throws ConfigurationError
+    {
+        Method m = null;
+
+        try {
+            m = Thread.class.getMethod("getContextClassLoader", null);
+        } catch (NoSuchMethodException e) {
+            // Assume that we are running JDK 1.1, use the current ClassLoader
+            debugPrintln("assuming JDK 1.1");
+            return FactoryFinder.class.getClassLoader();
+        }
+
+        try {
+            return (ClassLoader) m.invoke(Thread.currentThread(), null);
+        } catch (IllegalAccessException e) {
+            // assert(false)
+            throw new ConfigurationError("Unexpected IllegalAccessException",
+                                         e);
+        } catch (InvocationTargetException e) {
+            // assert(e.getTargetException() instanceof SecurityException)
+            throw new ConfigurationError("Unexpected InvocationTargetException",
+                                         e);
+        }
+    }
+
+    /**
+     * Create an instance of a class using the specified
+     * <code>ClassLoader</code>, or if that fails from the
+     * <code>ClassLoader</code> that loaded this class.
+     *
+     * @param className     the name of the class to instantiate
+     * @param classLoader   a <code>ClassLoader</code> to load the class from
+     *
+     * @return a new <code>Object</code> that is an instance of the class of
+     *              the given name from the given class loader
+     * @throws ConfigurationError   if the class could not be found or
+     *              instantiated
+     */
+    private static Object newInstance(String className,
+                                      ClassLoader classLoader)
+        throws ConfigurationError
+    {
+        try {
+            if (classLoader != null) {
+                try {
+                    return classLoader.loadClass(className).newInstance ();
+                } catch (ClassNotFoundException x) {
+                      // try again
+                }
+            }
+            return Class.forName(className).newInstance();
+        } catch (ClassNotFoundException x) {
+            throw new ConfigurationError(
+                "Provider " + className + " not found", x);
+        } catch (Exception x) {
+            throw new ConfigurationError(
+                "Provider " + className + " could not be instantiated: " + x,
+                x);
+        }
+    }
+
+    /**
+     * Finds the implementation Class object in the specified order.  Main
+     * entry point.
+     * @return Class object of factory, never null
+     *
+     * @param factoryId             Name of the factory to find, same as
+     *                              a property name
+     * @param fallbackClassName     Implementation class name, if nothing else
+     *                              is found.  Use null to mean no fallback.
+     *
+     * @exception FactoryFinder.ConfigurationError
+     *
+     * Package private so this code can be shared.
+     */
+    static Object find(String factoryId, String fallbackClassName)
+        throws ConfigurationError
+    {
+        debugPrintln("debug is on");
+
+        ClassLoader classLoader = findClassLoader();
+
+        // Use the system property first
+        try {
+            String systemProp =
+                System.getProperty( factoryId );
+            if( systemProp!=null) {
+                debugPrintln("found system property " + systemProp);
+                return newInstance(systemProp, classLoader);
+            }
+        } catch (SecurityException se) {
+        }
+
+        // try to read from $java.home/lib/xml.properties
+        try {
+            String javah=System.getProperty( "java.home" );
+            String configFile = javah + File.separator +
+                "lib" + File.separator + "jaxrpc.properties";
+            File f=new File( configFile );
+            if( f.exists()) {
+                Properties props=new Properties();
+                props.load( new FileInputStream(f));
+                String factoryClassName = props.getProperty(factoryId);
+                debugPrintln("found java.home property " + factoryClassName);
+                return newInstance(factoryClassName, classLoader);
+            }
+        } catch(Exception ex ) {
+            if( debug ) ex.printStackTrace();
+        }
+
+        String serviceId = "META-INF/services/" + factoryId;
+        // try to find services in CLASSPATH
+        try {
+            InputStream is=null;
+            if (classLoader == null) {
+                is=ClassLoader.getSystemResourceAsStream( serviceId );
+            } else {
+                is=classLoader.getResourceAsStream( serviceId );
+            }
+
+            if( is!=null ) {
+                debugPrintln("found " + serviceId);
+
+                // Read the service provider name in UTF-8 as specified in
+                // the jar spec.  Unfortunately this fails in Microsoft
+                // VJ++, which does not implement the UTF-8
+                // encoding. Theoretically, we should simply let it fail in
+                // that case, since the JVM is obviously broken if it
+                // doesn't support such a basic standard.  But since there
+                // are still some users attempting to use VJ++ for
+                // development, we have dropped in a fallback which makes a
+                // second attempt using the platform's default encoding. In
+                // VJ++ this is apparently ASCII, which is a subset of
+                // UTF-8... and since the strings we'll be reading here are
+                // also primarily limited to the 7-bit ASCII range (at
+                // least, in English versions), this should work well
+                // enough to keep us on the air until we're ready to
+                // officially decommit from VJ++. [Edited comment from
+                // jkesselm]
+                BufferedReader rd;
+                try {
+                    rd = new BufferedReader(new InputStreamReader(is, "UTF-8"));
+                } catch (java.io.UnsupportedEncodingException e) {
+                    rd = new BufferedReader(new InputStreamReader(is));
+                }
+
+                String factoryClassName = rd.readLine();
+                rd.close();
+
+                if (factoryClassName != null &&
+                    ! "".equals(factoryClassName)) {
+                    debugPrintln("loaded from services: " + factoryClassName);
+                    return newInstance(factoryClassName, classLoader);
+                }
+            }
+        } catch( Exception ex ) {
+            if( debug ) ex.printStackTrace();
+        }
+
+        if (fallbackClassName == null) {
+            throw new ConfigurationError(
+                "Provider for " + factoryId + " cannot be found", null);
+        }
+
+        debugPrintln("loaded from fallback value: " + fallbackClassName);
+        return newInstance(fallbackClassName, classLoader);
+    }
+
+    static class ConfigurationError extends Error {
+        // fixme: should this be refactored to use the jdk1.4 exception
+        // wrapping?
+
+        private Exception exception;
+
+        /**
+         * Construct a new instance with the specified detail string and
+         * exception.
+         *
+         * @param msg   the Message for this error
+         * @param x     an Exception that caused this failure, or null
+         */
+        ConfigurationError(String msg, Exception x) {
+            super(msg);
+            this.exception = x;
+        }
+
+        Exception getException() {
+            return exception;
+        }
+    }
+}

Added: geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/JAXRPCException.java
URL: http://svn.apache.org/viewcvs/geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/JAXRPCException.java?view=auto&rev=153028
==============================================================================
--- geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/JAXRPCException.java (added)
+++ geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/JAXRPCException.java Tue Feb  8 22:00:44 2005
@@ -0,0 +1,90 @@
+/*
+ * Copyright 2001-2004 The Apache Software Foundation.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package javax.xml.rpc;
+
+/**
+ * The <code>javax.xml.rpc.JAXRPCException</code> is thrown from
+ * the core JAX-RPC APIs to indicate an exception related to the
+ * JAX-RPC runtime mechanisms.
+ *
+ * @version 1.0
+ */
+public class JAXRPCException extends RuntimeException {
+
+    // fixme: Why doesn't this use the jdk1.4 exception wrapping APIs?
+
+    /** The cause of this error. */
+    Throwable cause;
+    
+    /**
+     * Constructs a new exception with <code>null</code> as its
+     * detail message. The cause is not initialized.
+     */
+    public JAXRPCException() {}
+    
+    /**
+     * Constructs a new exception with the specified detail
+     * message.  The cause is not initialized.
+     *
+     * @param message The detail message which is later
+     *            retrieved using the getMessage method
+     */
+    public JAXRPCException(String message) {
+        super(message);
+    }
+    
+    /**
+     * Constructs a new exception with the specified detail
+     * message and cause.
+     *
+     * @param message The detail message which is later retrieved
+     *            using the getMessage method
+     * @param cause The cause which is saved for the later
+     *            retrieval throw by the getCause method
+     */
+    public JAXRPCException(String message, Throwable cause) {
+        super(message);
+        this.cause = cause;
+    }
+    
+    /**
+     * Constructs a new JAXRPCException with the specified cause
+     * and a detail message of <tt>(cause==null ? null :
+     * cause.toString())</tt> (which typically contains the
+     * class and detail message of <tt>cause</tt>).
+     *
+     * @param cause The cause which is saved for the later
+     *            retrieval throw by the getCause method.
+     *            (A <tt>null</tt> value is permitted, and
+     *            indicates that the cause is nonexistent or
+     *          unknown.)
+     */
+    public JAXRPCException(Throwable cause) {
+        super( (cause == null) ? null : cause.toString() );
+        this.cause = cause;
+    }
+    
+    /**
+     * Gets the linked cause.
+     *
+     * @return The cause of this Exception or <code>null</code>
+     *     if the cause is noexistent or unknown
+     */
+    public Throwable getLinkedCause() {
+        return cause;
+    }
+    
+}

Added: geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/NamespaceConstants.java
URL: http://svn.apache.org/viewcvs/geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/NamespaceConstants.java?view=auto&rev=153028
==============================================================================
--- geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/NamespaceConstants.java (added)
+++ geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/NamespaceConstants.java Tue Feb  8 22:00:44 2005
@@ -0,0 +1,63 @@
+/*
+ * Copyright 2001-2004 The Apache Software Foundation.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package javax.xml.rpc;
+
+/**
+ * Constants used in JAX-RPC for namespace prefixes and URIs.
+ *
+ * @version 1.0
+ */
+public class NamespaceConstants {
+    // fixme: we should have a private constructor and/or be final
+
+    /**
+     * Constructor NamespaceConstants.
+     */
+    public NamespaceConstants() {}
+
+    /** Namespace prefix for SOAP Envelope. */
+    public static final String NSPREFIX_SOAP_ENVELOPE = "soapenv";
+
+    /** Namespace prefix for SOAP Encoding. */
+    public static final String NSPREFIX_SOAP_ENCODING = "soapenc";
+
+    /** Namespace prefix for XML schema XSD. */
+    public static final String NSPREFIX_SCHEMA_XSD = "xsd";
+
+    /** Namespace prefix for XML Schema XSI. */
+    public static final String NSPREFIX_SCHEMA_XSI = "xsi";
+
+    /** Nameapace URI for SOAP 1.1 Envelope. */
+    public static final String NSURI_SOAP_ENVELOPE =
+        "http://schemas.xmlsoap.org/soap/envelope/";
+
+    /** Nameapace URI for SOAP 1.1 Encoding. */
+    public static final String NSURI_SOAP_ENCODING =
+        "http://schemas.xmlsoap.org/soap/encoding/";
+
+    /** Nameapace URI for SOAP 1.1 next actor role. */
+    public static final String NSURI_SOAP_NEXT_ACTOR =
+        "http://schemas.xmlsoap.org/soap/actor/next";
+
+    /** Namespace URI for XML Schema XSD. */
+    public static final String NSURI_SCHEMA_XSD =
+        "http://www.w3.org/2001/XMLSchema";
+
+    /** Namespace URI for XML Schema XSI. */
+    public static final String NSURI_SCHEMA_XSI =
+        "http://www.w3.org/2001/XMLSchema-instance";
+}
+

Added: geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/ParameterMode.java
URL: http://svn.apache.org/viewcvs/geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/ParameterMode.java?view=auto&rev=153028
==============================================================================
--- geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/ParameterMode.java (added)
+++ geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/ParameterMode.java Tue Feb  8 22:00:44 2005
@@ -0,0 +1,52 @@
+/*
+ * Copyright 2001-2004 The Apache Software Foundation.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package javax.xml.rpc;
+
+/**
+ * The <code>javax.xml.rpc.ParameterMode</code> is a type-safe
+ * enumeration for parameter mode. This class is used in the
+ * <code>Call</code>API to specify parameter passing modes.
+ *
+ * @version 1.0
+ */
+public class ParameterMode {
+
+    /** Mode name. */
+    private final String mode;
+
+    /** The mode is 'IN'. */
+    public static final ParameterMode IN = new ParameterMode("IN");
+
+    /** The mode is 'INOUT'. */
+    public static final ParameterMode INOUT = new ParameterMode("INOUT");
+
+    /** The mode is 'OUT'. */
+    public static final ParameterMode OUT = new ParameterMode("OUT");
+
+    /**
+     * Make a new mode.
+     *
+     * @param mode  name for the mode
+     */
+    private ParameterMode(String mode) {
+        this.mode = mode;
+    }
+
+    public String toString() {
+        return mode;
+    }
+}
+

Added: geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/Service.java
URL: http://svn.apache.org/viewcvs/geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/Service.java?view=auto&rev=153028
==============================================================================
--- geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/Service.java (added)
+++ geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/Service.java Tue Feb  8 22:00:44 2005
@@ -0,0 +1,224 @@
+/*
+ * Copyright 2001-2004 The Apache Software Foundation.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package javax.xml.rpc;
+
+import javax.xml.namespace.QName;
+import javax.xml.rpc.encoding.TypeMappingRegistry;
+import javax.xml.rpc.handler.HandlerRegistry;
+
+/**
+ * <code>Service</code> class acts as a factory of the following:
+ * <ul>
+ * <li>Dynamic proxy for the target service endpoint.
+ * <li>Instance of the type <code>javax.xml.rpc.Call</code> for
+ *     the dynamic invocation of a remote operation on the
+ *     target service endpoint.
+ * <li>Instance of a generated stub class
+ * </ul>
+ *
+ * @version 1.0
+ */
+public interface Service {
+
+    /**
+     * The getPort method returns either an instance of a generated
+     * stub implementation class or a dynamic proxy. A service client
+     * uses this dynamic proxy to invoke operations on the target
+     * service endpoint. The <code>serviceEndpointInterface</code>
+     * specifies the service endpoint interface that is supported by
+     * the created dynamic proxy or stub instance.
+     *
+     * @param portName Qualified name of the service endpoint in
+     *              the WSDL service description
+     * @param serviceEndpointInterface Service endpoint interface
+     *              supported by the dynamic proxy or stub
+     *              instance
+     * @return java.rmi.Remote Stub instance or dynamic proxy that
+     *              supports the specified service endpoint
+     *              interface
+     * @throws ServiceException This exception is thrown in the
+     *              following cases:
+     *              <ul>
+     *              <li>If there is an error in creation of
+     *                  the dynamic proxy or stub instance
+     *              <li>If there is any missing WSDL metadata
+     *                  as required by this method
+     *              <li>Optionally, if an illegal
+     *                  <code>serviceEndpointInterface</code>
+     *                  or <code>portName</code> is specified
+     *              </ul>
+     */
+    public java.rmi
+        .Remote getPort(QName portName, Class serviceEndpointInterface)
+            throws ServiceException;
+
+    /**
+     * The getPort method returns either an instance of a generated
+     * stub implementation class or a dynamic proxy. The parameter
+     * <code>serviceEndpointInterface</code> specifies the service
+     * endpoint interface that is supported by the returned stub or
+     * proxy. In the implementation of this method, the JAX-RPC
+     * runtime system takes the responsibility of selecting a protocol
+     * binding (and a port) and configuring the stub accordingly.
+     * The returned <code>Stub</code> instance should not be
+     * reconfigured by the client.
+     *
+     * @param serviceEndpointInterface Service endpoint interface
+     * @return Stub instance or dynamic proxy that supports the
+     *              specified service endpoint interface
+     *
+     * @throws ServiceException <ul>
+     *              <li>If there is an error during creation
+     *                  of stub instance or dynamic proxy
+     *              <li>If there is any missing WSDL metadata
+     *                  as required by this method
+     *              <li>Optionally, if an illegal
+     *                  <code>serviceEndpointInterface</code>
+     *
+     *                  is specified
+     *              </ul>
+     */
+    public java.rmi.Remote getPort(Class serviceEndpointInterface)
+        throws ServiceException;
+
+    /**
+     * Gets an array of preconfigured <code>Call</code> objects for
+     * invoking operations on the specified port. There is one
+     * <code>Call</code> object per operation that can be invoked
+     * on the specified port. Each <code>Call</code> object is
+     * pre-configured and does not need to be configured using
+     * the setter methods on <code>Call</code> interface.
+     *
+     * <p>Each invocation of the <code>getCalls</code> method
+     * returns a new array of preconfigured <code>Call</code>
+     *
+     * objects
+     *
+     * <p>This method requires the <code>Service</code> implementation
+     * class to have access to the WSDL related metadata.
+     *
+     * @param portName Qualified name for the target service endpoint
+     * @return Call[]  Array of pre-configured Call objects
+     * @throws ServiceException If this Service class does not
+     *              have access to the required WSDL metadata
+     *              or if an illegal <code>portName</code> is
+     *              specified.
+     */
+    public Call[] getCalls(QName portName) throws ServiceException;
+
+    /**
+     * Creates a <code>Call</code> instance.
+     *
+     * @param portName Qualified name for the target service endpoint
+     * @return Call instance
+     * @throws ServiceException If any error in the creation of
+     *              the <code>Call</code> object
+     */
+    public Call createCall(QName portName) throws ServiceException;
+
+    /**
+     * Creates a <code>Call</code> instance.
+     *
+     * @param portName Qualified name for the target service
+     *              endpoint
+     * @param operationName Qualified Name of the operation for
+     *              which this <code>Call</code> object is to
+     *              be created.
+     * @return Call instance
+     * @throws ServiceException If any error in the creation of
+     *              the <code>Call</code> object
+     */
+    public Call createCall(QName portName, QName operationName)
+        throws ServiceException;
+
+    /**
+     * Creates a <code>Call</code> instance.
+     *
+     * @param portName Qualified name for the target service
+     *              endpoint
+     * @param operationName Name of the operation for which this
+     *                  <code>Call</code> object is to be
+     *                  created.
+     * @return Call instance
+     * @throws ServiceException If any error in the creation of
+     *              the <code>Call</code> object
+     */
+    public Call createCall(QName portName, String operationName)
+        throws ServiceException;
+
+    /**
+     * Creates a <code>Call</code> object not associated with
+     * specific operation or target service endpoint. This
+     * <code>Call</code> object needs to be configured using the
+     * setter methods on the <code>Call</code> interface.
+     *
+     * @return  Call object
+     * @throws ServiceException If any error in the creation of
+     *              the <code>Call</code> object
+     */
+    public Call createCall() throws ServiceException;
+
+    /**
+     * Gets the name of this Service.
+     *
+     * @return Qualified name of this service
+     */
+    public QName getServiceName();
+
+    /**
+     * Returns an <code>Iterator</code> for the list of
+     * <code>QName</code>s of service endpoints grouped by this
+     * service.
+     *
+     * @return Returns <code>java.util.Iterator</code> with elements
+     *     of type <code>javax.xml.namespace.QName</code>
+     * @throws ServiceException If this Service class does not
+     *     have access to the required WSDL metadata
+     */
+    public java.util.Iterator getPorts() throws ServiceException;
+
+    /**
+     * Gets location of the WSDL document for this Service.
+     *
+     * @return URL for the location of the WSDL document for
+     *     this service
+     */
+    public java.net.URL getWSDLDocumentLocation();
+
+    /**
+     * Gets the <code>TypeMappingRegistry</code> for this
+     * <code>Service</code> object. The returned
+     * <code>TypeMappingRegistry</code> instance is pre-configured
+     * to support the standard type mapping between XML and Java
+     * types types as required by the JAX-RPC specification.
+     *
+     * @return  The TypeMappingRegistry for this Service object.
+     * @throws java.lang.UnsupportedOperationException if the <code>Service</code> class does not support
+     *     the configuration of <code>TypeMappingRegistry</code>.
+     */
+    public TypeMappingRegistry getTypeMappingRegistry();
+
+    /**
+     * Returns the configured <code>HandlerRegistry</code> instance
+     * for this <code>Service</code> instance.
+     *
+     * @return HandlerRegistry
+     * @throws java.lang.UnsupportedOperationException - if the <code>Service</code> class does not support
+     *     the configuration of a <code>HandlerRegistry</code>
+     */
+    public HandlerRegistry getHandlerRegistry();
+}
+

Added: geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/ServiceException.java
URL: http://svn.apache.org/viewcvs/geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/ServiceException.java?view=auto&rev=153028
==============================================================================
--- geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/ServiceException.java (added)
+++ geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/ServiceException.java Tue Feb  8 22:00:44 2005
@@ -0,0 +1,92 @@
+/*
+ * Copyright 2001-2004 The Apache Software Foundation.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package javax.xml.rpc;
+
+/**
+ * The <code>javax.xml.rpc.ServiceException</code> is thrown from the
+ * methods in the <code>javax.xml.rpc.Service</code> interface and
+ * <code>ServiceFactory</code> class.
+ *
+ *
+ * @version 1.0
+ */
+public class ServiceException extends Exception {
+    
+    // fixme: could we refactor this to use the jdk1.4 exception wrapping stuff?
+    
+    /** The cause of this exception. */
+    Throwable cause;
+    
+    /**
+     * Constructs a new exception with <code>null</code> as its
+     * detail message. The cause is not initialized.
+     */
+    public ServiceException() {}
+    
+    /**
+     * Constructs a new exception with the specified detail
+     * message.  The cause is not initialized.
+     *
+     * @param message The detail message which is later
+     *            retrieved using the <code>getMessage</code> method
+     */
+    public ServiceException(String message) {
+        super(message);
+    }
+    
+    /**
+     * Constructs a new exception with the specified detail
+     * message and cause.
+     *
+     * @param message the detail message which is later retrieved
+     *            using the <code>getMessage</code> method
+     * @param cause the cause which is saved for the later
+     *            retrieval throw by the <code>getCause</code>
+     *            method
+     */
+    public ServiceException(String message, Throwable cause) {
+        super(message);
+        this.cause = cause;
+    }
+    
+    /**
+     * Constructs a new exception with the specified cause
+     * and a detail message of <tt>(cause==null ? null :
+     * cause.toString())</tt> (which typically contains the
+     * class and detail message of <tt>cause</tt>).
+     *
+     * @param cause the cause which is saved for the later
+     *            retrieval throw by the getCause method.
+     *            (A <tt>null</tt> value is permitted, and
+     *            indicates that the cause is nonexistent or
+     *          unknown.)
+     */
+    public ServiceException(Throwable cause) {
+        super( (cause == null) ? null : cause.toString() );
+        this.cause = cause;
+    }
+    
+    /**
+     * Gets the linked cause.
+     *
+     * @return the cause of this Exception or <code>null</code>
+     *     if the cause is noexistent or unknown
+     */
+    public Throwable getLinkedCause() {
+        return cause;
+    }
+    
+}

Added: geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/ServiceFactory.java
URL: http://svn.apache.org/viewcvs/geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/ServiceFactory.java?view=auto&rev=153028
==============================================================================
--- geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/ServiceFactory.java (added)
+++ geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/ServiceFactory.java Tue Feb  8 22:00:44 2005
@@ -0,0 +1,108 @@
+/*
+ * Copyright 2001-2004 The Apache Software Foundation.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package javax.xml.rpc;
+
+import javax.xml.namespace.QName;
+import java.net.URL;
+
+/**
+ * The <code>javax.xml.rpc.ServiceFactory</code> is an abstract class
+ * that provides a factory for the creation of instances of the type
+ * <code>javax.xml.rpc.Service</code>. This abstract class follows the
+ * abstract static factory design pattern. This enables a J2SE based
+ * client to create a <code>Service instance</code> in a portable manner
+ * without using the constructor of the <code>Service</code>
+ * implementation class.
+ * <p>
+ * The ServiceFactory implementation class is set using the
+ * system property <code>SERVICEFACTORY_PROPERTY</code>.
+ *
+ * @version 1.0
+ */
+public abstract class ServiceFactory {
+
+    /** Protected constructor. */
+    protected ServiceFactory() {}
+
+    /**
+     * A constant representing the property used to lookup the
+     * name of a <code>ServiceFactory</code> implementation
+     * class.
+     */
+    public static final java.lang.String SERVICEFACTORY_PROPERTY =
+        "javax.xml.rpc.ServiceFactory";
+
+    /**
+     * Gets an instance of the <code>ServiceFactory</code>
+     *
+     * <p>Only one copy of a factory exists and is returned to the
+     * application each time this method is called.
+     *
+     * <p> The implementation class to be used can be overridden by
+     * setting the javax.xml.rpc.ServiceFactory system property.
+     *
+     * @return  ServiceFactory.
+     * @throws  ServiceException
+     */
+    public static ServiceFactory newInstance() throws ServiceException {
+
+        try {
+            return (ServiceFactory) FactoryFinder.find(
+                /* The default property name according to the JAXRPC spec */
+                SERVICEFACTORY_PROPERTY,
+                /* The fallback implementation class name */
+                "org.apache.axis.client.ServiceFactory");
+        } catch (FactoryFinder.ConfigurationError e) {
+            throw new ServiceException(e.getException());
+        }
+    }
+
+    /**
+     * Create a <code>Service</code> instance.
+     *
+     * @param   wsdlDocumentLocation URL for the WSDL document location
+     * @param   serviceName  QName for the service.
+     * @return  Service.
+     * @throws  ServiceException If any error in creation of the
+     *                specified service
+     */
+    public abstract Service createService(
+        URL wsdlDocumentLocation, QName serviceName) throws ServiceException;
+
+    /**
+     * Create a <code>Service</code> instance.
+     *
+     * @param   serviceName QName for the service
+     * @return  Service.
+     * @throws  ServiceException If any error in creation of the specified service
+     */
+    public abstract Service createService(QName serviceName)
+        throws ServiceException;
+    
+    public abstract Service loadService(java.lang.Class class1)
+                             throws ServiceException;
+    
+    public abstract Service loadService(java.net.URL url,
+                                    java.lang.Class class1,
+                                    java.util.Properties properties)
+                             throws ServiceException;
+    
+    public abstract Service loadService(java.net.URL url,
+                                    QName qname,
+                                    java.util.Properties properties)
+                             throws ServiceException;
+}
+

Added: geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/Stub.java
URL: http://svn.apache.org/viewcvs/geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/Stub.java?view=auto&rev=153028
==============================================================================
--- geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/Stub.java (added)
+++ geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/Stub.java Tue Feb  8 22:00:44 2005
@@ -0,0 +1,119 @@
+/*
+ * Copyright 2001-2004 The Apache Software Foundation.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package javax.xml.rpc;
+
+import java.util.Iterator;
+
+/**
+ * The interface <code>javax.xml.rpc.Stub</code> is the common base interface
+ * for the stub classes. All generated stub classes are required to
+ * implement the <code>javax.xml.rpc.Stub</code> interface. An instance
+ * of a stub class represents a client side proxy or stub instance for
+ * the target service endpoint.
+ *
+ * <p>The <code>javax.xml.rpc.Stub</code> interface provides an
+ * extensible property mechanism for the dynamic configuration of
+ * a stub instance.
+ *
+ * @version 1.0
+ */
+public interface Stub {
+
+    // Constants for the standard properties
+
+    /**
+     * Standard property: User name for authentication.
+     * <p>Type: java.lang.String
+     */
+    public static final String USERNAME_PROPERTY = Call.USERNAME_PROPERTY;
+
+    /**
+     * Standard property: Password for authentication.
+     * <p>Type: java.lang.String
+     */
+    public static final String PASSWORD_PROPERTY = Call.PASSWORD_PROPERTY;
+
+    /**
+     * Standard property: Target service endpoint address. The
+     * URI scheme for the endpoint address specification must
+     * correspond to the protocol/transport binding for this
+     * stub class.
+     * <p>Type: java.lang.String
+     */
+    public static final String ENDPOINT_ADDRESS_PROPERTY =
+        "javax.xml.rpc.service.endpoint.address";
+
+    /**
+     * Standard property: This boolean property is used by a service
+     * client to indicate whether or not it wants to participate in
+     * a session with a service endpoint. If this property is set to
+     * true, the service client indicates that it wants the session
+     * to be maintained. If set to false, the session is not maintained.
+     * The default value for this property is false.
+     * <p>Type: java.lang.Boolean
+     */
+    public static final String SESSION_MAINTAIN_PROPERTY =
+        Call.SESSION_MAINTAIN_PROPERTY;
+
+    /**
+     * Sets the name and value of a configuration property
+     * for this Stub instance. If the Stub instances contains
+     * a value of the same property, the old value is replaced.
+     * <p>Note that the <code>_setProperty</code> method may not
+     * perform validity check on a configured property value. An
+     * example is the standard property for the target service
+     * endpoint address that is not checked for validity in the
+     * <code>_setProperty</code> method.
+     * In this case, stub configuration errors are detected at
+     * the remote method invocation.
+     *
+     * @param name Name of the configuration property
+     * @param value Value of the property
+     * @throws JAXRPCException <ul>
+     *     <li>If an optional standard property name is
+     *         specified, however this Stub implementation
+     *         class does not support the configuration of
+     *         this property.
+     *     <li>If an invalid or unsupported property name is
+     *         specified or if a value of mismatched property
+     *         type is passed.
+     *     <li>If there is any error in the configuration of
+     *         a valid property.
+     *     </ul>
+     */
+    public void _setProperty(String name, Object value);
+
+    /**
+     * Gets the value of a specific configuration property.
+     *
+     * @param name Name of the property whose value is to be
+     *          retrieved
+     * @return Value of the configuration property
+     * @throws JAXRPCException if an invalid or
+     *     unsupported property name is passed.
+     */
+    public Object _getProperty(String name);
+
+    /**
+     * Returns an <code>Iterator</code> view of the names of the properties
+     * that can be configured on this stub instance.
+     *
+     * @return Iterator for the property names of the type
+     *     <code>java.lang.String</code>
+     */
+    public Iterator _getPropertyNames();
+}    // interface Stub
+

Added: geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/encoding/DeserializationContext.java
URL: http://svn.apache.org/viewcvs/geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/encoding/DeserializationContext.java?view=auto&rev=153028
==============================================================================
--- geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/encoding/DeserializationContext.java (added)
+++ geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/encoding/DeserializationContext.java Tue Feb  8 22:00:44 2005
@@ -0,0 +1,26 @@
+/*
+ * Copyright 2001-2004 The Apache Software Foundation.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package javax.xml.rpc.encoding;
+
+/**
+ * The javax.xml.rpc.encoding.DeserializationContext interface is implemented by the JAX-RPC runtime system in an XML
+ * processing mechanism specific manner. A deserializer uses this interface to access and maintain context information
+ * during the deserialization..
+ *
+ * @version 1.0
+ */
+public interface DeserializationContext {}
+

Added: geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/encoding/Deserializer.java
URL: http://svn.apache.org/viewcvs/geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/encoding/Deserializer.java?view=auto&rev=153028
==============================================================================
--- geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/encoding/Deserializer.java (added)
+++ geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/encoding/Deserializer.java Tue Feb  8 22:00:44 2005
@@ -0,0 +1,37 @@
+/*
+ * Copyright 2001-2004 The Apache Software Foundation.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package javax.xml.rpc.encoding;
+
+/**
+ * The javax.xml.rpc.encoding.Deserializer interface defines a
+ * base interface for deserializers. A Deserializer converts
+ * an XML representation to a Java object using a specific XML
+ * processing mechanism and based on the specified type
+ * mapping and encoding style.
+ *
+ * @version 1.0
+ */
+public interface Deserializer extends java.io.Serializable {
+
+    /**
+     * Gets the type of the XML processing mechanism and
+     * representation used by this Deserializer.
+     *
+     * @return XML processing mechanism type
+     */
+    public String getMechanismType();
+}
+

Added: geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/encoding/DeserializerFactory.java
URL: http://svn.apache.org/viewcvs/geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/encoding/DeserializerFactory.java?view=auto&rev=153028
==============================================================================
--- geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/encoding/DeserializerFactory.java (added)
+++ geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/encoding/DeserializerFactory.java Tue Feb  8 22:00:44 2005
@@ -0,0 +1,50 @@
+/*
+ * Copyright 2001-2004 The Apache Software Foundation.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package javax.xml.rpc.encoding;
+
+/**
+ * The javax.xml.rpc.encoding.DeserializerFactory is a factory of
+ * deserializers. A DeserializerFactory is registered with a
+ * TypeMapping instance as part of the TypeMappingRegistry.
+ *
+ * @version 1.0
+ */
+public interface DeserializerFactory extends java.io.Serializable {
+
+    /**
+     * Returns a Deserializer for the specified XML processing mechanism type.
+     *
+     * @param mechanismType XML processing mechanism type [TBD: definition of
+     *              valid constants]
+     *
+     * @return a Deserializer for the specified XML processing mechanism type
+     *
+     * @throws javax.xml.rpc.JAXRPCException if DeserializerFactory does not
+     *             support the specified XML processing mechanism
+     */
+    public Deserializer getDeserializerAs(String mechanismType);
+
+    /**
+     * Returns an <code>Iterator</code> over the list of all XML processing
+     * mechanism types supported by this <code>DeserializerFactory</code>.
+     *
+     * @return an <code>Iterator</code> over the unique identifiers for the
+     *              supported XML processing mechanism types (as
+     *              <code>String</code>s?)
+     */
+    public java.util.Iterator getSupportedMechanismTypes();
+}
+

Added: geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/encoding/SerializationContext.java
URL: http://svn.apache.org/viewcvs/geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/encoding/SerializationContext.java?view=auto&rev=153028
==============================================================================
--- geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/encoding/SerializationContext.java (added)
+++ geronimo/trunk/specs/jaxrpc/src/javax/xml/rpc/encoding/SerializationContext.java Tue Feb  8 22:00:44 2005
@@ -0,0 +1,29 @@
+/*
+ * Copyright 2001-2004 The Apache Software Foundation.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package javax.xml.rpc.encoding;
+
+/**
+ * The javax.xml.rpc.encoding.SerializationContext interface is
+ * implemented by the JAX-RPC runtime system in an XML processing
+ * mechanism specific manner. A serializer uses the
+ * SerializationContext interface during the serialization to get
+ * the context information related to the XML processing mechanism
+ * and to manage information specific to serialization.
+ *
+ * @version 1.0
+ */
+public interface SerializationContext {}
+



Mime
View raw message