You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@beehive.apache.org by ek...@apache.org on 2005/10/02 06:18:49 UTC
svn commit: r293069 - in /beehive/trunk/system-controls:
src/webservice/org/apache/beehive/controls/system/webservice/generator/
test/src/webservice/jcxgen-tests/wsdls/
Author: ekoneil
Date: Sat Oct 1 21:18:44 2005
New Revision: 293069
URL: http://svn.apache.org/viewcvs?rev=293069&view=rev
Log:
Patch for BEEHIVE-807. This addresses some issues with using class names in the java.lang package and with using Java keywords in the web service control generator.
Contribution from Chad Schoettger.
BB: self
Test: service control pass
Added:
beehive/trunk/system-controls/test/src/webservice/jcxgen-tests/wsdls/ReservedKeywordDocLit.wsdl
beehive/trunk/system-controls/test/src/webservice/jcxgen-tests/wsdls/ReservedKeywordRpcLit.wsdl
Modified:
beehive/trunk/system-controls/src/webservice/org/apache/beehive/controls/system/webservice/generator/GeneratorUtils.java
beehive/trunk/system-controls/src/webservice/org/apache/beehive/controls/system/webservice/generator/MethodInfo.java
beehive/trunk/system-controls/src/webservice/org/apache/beehive/controls/system/webservice/generator/ParameterInfo.java
Modified: beehive/trunk/system-controls/src/webservice/org/apache/beehive/controls/system/webservice/generator/GeneratorUtils.java
URL: http://svn.apache.org/viewcvs/beehive/trunk/system-controls/src/webservice/org/apache/beehive/controls/system/webservice/generator/GeneratorUtils.java?rev=293069&r1=293068&r2=293069&view=diff
==============================================================================
--- beehive/trunk/system-controls/src/webservice/org/apache/beehive/controls/system/webservice/generator/GeneratorUtils.java (original)
+++ beehive/trunk/system-controls/src/webservice/org/apache/beehive/controls/system/webservice/generator/GeneratorUtils.java Sat Oct 1 21:18:44 2005
@@ -17,6 +17,8 @@
import java.io.File;
import java.util.Arrays;
+import java.util.Set;
+import java.util.HashSet;
/**
* Utilities for service control generation.
@@ -28,43 +30,152 @@
/**
* List of java reserved words. Must be kept sorted in ascending order.
*/
- private static final String javaReservedWords[] =
+ private static final String JAVA_RESERVED_WORDS[] =
{
- "abstract", "assert", "boolean", "break", "byte",
- "case", "catch", "char", "class", "const",
- "continue", "default", "do", "double", "else",
- "extends", "false", "final", "finally", "float",
- "for", "goto", "if", "implements", "import",
- "instanceof", "int", "interface", "long", "native",
- "new", "null", "package", "private", "protected",
- "public", "return", "short", "static", "strictfp",
- "super", "switch", "synchronized", "this", "throw",
- "throws", "transient", "true", "try", "void",
- "volatile", "while"
+ "abstract", "assert", "boolean", "break", "byte",
+ "case", "catch", "char", "class", "const",
+ "continue", "default", "do", "double", "else",
+ "enum", "extends", "false", "final", "finally",
+ "float", "for", "goto", "if", "implements",
+ "import", "instanceof", "int", "interface", "long",
+ "native", "new", "null", "package", "private",
+ "protected", "public", "return", "short", "static",
+ "strictfp", "super", "switch", "synchronized", "this",
+ "throw", "throws", "transient", "true", "try",
+ "void", "volatile", "while"
};
+
+ /**
+ * List of java.lang classes (1.5 JDK).
+ */
+ private final static Set<String> JAVA_LANG_NAMES = new HashSet<String>(Arrays.asList(
+ new String[]
+ {
+ // Interfaces
+ "Appendable", "CharSequence", "Cloneable", "Comparable",
+ "Iterable", "Readable", "Runnable",
+
+ // Classes
+ "Boolean", "Byte", "Character", "Class",
+ "ClassLoader", "Compiler", "Double", "Enum",
+ "Float", "InheritableThreadLocal", "Integer", "Long",
+ "Math", "Number", "Object", "Package",
+ "Process", "ProcessBuilder", "Runtime", "RuntimePermission",
+ "SecurityManager", "Short", "StackTraceElement", "StrictMath",
+ "String", "StringBuffer", "StringBuilder", "System",
+ "Thread", "ThreadGroup", "ThreadLocal", "Throwable",
+ "Void",
+
+ // Exceptions
+ "ArithmeticException", "ArrayIndexOutOfBoundsException", "ArrayStoreException",
+ "ClassCastException", "ClassNotFoundException", "CloneNotSupportedException",
+ "EnumConstantNotPresentException", "Exception", "IllegalAccessException",
+ "IllegalArgumentException", "IllegalMonitorStateException", "IllegalStateException",
+ "IllegalThreadStateException", "IndexOutOfBoundsException", "InstantiationException",
+ "InterruptedException", "NegativeArraySizeException", "NoSuchFieldException",
+ "NoSuchMethodException", "NullPointerException", "NumberFormatException",
+ "RuntimeException", "SecurityException", "StringIndexOutOfBoundsException",
+ "TypeNotPresentException", "UnsupportedOperationException",
+
+ // Errors
+ "AbstractMethodError", "AssertionError", "ClassCircularityError",
+ "ClassFormatError", "Error", "ExceptionInInitializerError",
+ "IllegalAccessError", "IncompatibleClassChangeError", "InstantiationError",
+ "InternalError", "LinkageError", "NoClassDefFoundError",
+ "NoSuchFieldError", "NoSuchMethodError", "OutOfMemoryError",
+ "StackOverflowError", "ThreadDeath", "UnknownError",
+ "UnsatisfiedLinkError", "UnsupportedClassVersionError", "VerifyError",
+ "VirtualMachineError",
+
+ // Annotation types
+ "Deprecated", "Override", "SuppressWarnings"
+ }
+ ));
+
/**
* Is the value of checkString a java reserved word?
*
* @param checkString String value to check.
* @return true if checkString exactly matches a java reserved word
*/
- static boolean isJavaReservedWord(String checkString)
+ private static boolean isJavaReservedWord(String checkString)
{
- return Arrays.binarySearch(javaReservedWords, checkString) >= 0;
+ return Arrays.binarySearch(JAVA_RESERVED_WORDS, checkString) >= 0;
}
/**
- * Transform a Java reserved word into a string which is safe to use in a Java source file.
+ * Transform an invalid java identifier into a valid one. Any invalid
+ * characters are replaced with '_'s.
*
- * @param javaReservedWord reserved word to transform.
- * @return The transformed reserved word.
+ * @param id The invalid java identifier.
+ * @return The transformed java identifier.
*/
- static String transformJavaReservedWord(String javaReservedWord)
+ static String transformInvalidJavaIdentifier(String id)
{
- return JAVA_RESERVEDWORD_PREFIX + javaReservedWord;
+ if (id == null) throw new IllegalArgumentException("id cannot be null");
+
+ final int len = id.length();
+ if (len == 0) {
+ return "_";
+ }
+
+ //
+ // begin the transform
+ //
+
+ StringBuilder transformed = new StringBuilder(id);
+ if (isJavaReservedWord(id) || JAVA_LANG_NAMES.contains(id)) {
+ transformed.insert(0, JAVA_RESERVEDWORD_PREFIX);
+ }
+
+ if (!Character.isJavaIdentifierStart(transformed.charAt(0))) {
+ transformed.insert(0, JAVA_RESERVEDWORD_PREFIX);
+ }
+
+ for (int i = 1; i < transformed.length() ; i++)
+ {
+ if (!Character.isJavaIdentifierPart(transformed.charAt(i))) {
+ transformed.replace(i, i+1, ""+ JAVA_RESERVEDWORD_PREFIX);
+ }
+ }
+
+ return transformed.toString();
}
+ /**
+ * Check the identifer to see if it is a valid Java identifier.
+ *
+ * @param id The Java identifier to check.
+ * @return true if identifer is valid.
+ */
+ static boolean isValidJavaIdentifier(String id)
+ {
+ if (id == null) {
+ throw new IllegalArgumentException("id cannot be null");
+ }
+
+ final int len = id.length();
+ if (len == 0) {
+ return false;
+ }
+
+ if (isJavaReservedWord(id) || JAVA_LANG_NAMES.contains(id)) {
+ return false;
+ }
+
+ if (!Character.isJavaIdentifierStart(id.charAt(0))) {
+ return false;
+ }
+
+ for (int i = 1; i < len; i++)
+ {
+ if (!Character.isJavaIdentifierPart(id.charAt(i)))
+ return false;
+ }
+
+ return true;
+ }
/**
* Convert a java package name to a file directory name.
Modified: beehive/trunk/system-controls/src/webservice/org/apache/beehive/controls/system/webservice/generator/MethodInfo.java
URL: http://svn.apache.org/viewcvs/beehive/trunk/system-controls/src/webservice/org/apache/beehive/controls/system/webservice/generator/MethodInfo.java?rev=293069&r1=293068&r2=293069&view=diff
==============================================================================
--- beehive/trunk/system-controls/src/webservice/org/apache/beehive/controls/system/webservice/generator/MethodInfo.java (original)
+++ beehive/trunk/system-controls/src/webservice/org/apache/beehive/controls/system/webservice/generator/MethodInfo.java Sat Oct 1 21:18:44 2005
@@ -26,7 +26,7 @@
public final class MethodInfo {
private ArrayList<ParameterInfo> _params;
- private String _name;
+ private final String _name;
private String _returnTypeName;
/**
@@ -36,7 +36,14 @@
*/
MethodInfo(String name, Class returnType) {
_params = new ArrayList<ParameterInfo>();
- _name = name;
+
+ if (!GeneratorUtils.isValidJavaIdentifier(name)) {
+ _name = GeneratorUtils.transformInvalidJavaIdentifier(name);
+ System.out.println("Warning: method name " + name
+ + " is not a valid Java method name, changing to: " + _name);
+ } else {
+ _name = name;
+ }
_returnTypeName = returnType.getCanonicalName();
if (_returnTypeName.startsWith("java.lang.")) {
Modified: beehive/trunk/system-controls/src/webservice/org/apache/beehive/controls/system/webservice/generator/ParameterInfo.java
URL: http://svn.apache.org/viewcvs/beehive/trunk/system-controls/src/webservice/org/apache/beehive/controls/system/webservice/generator/ParameterInfo.java?rev=293069&r1=293068&r2=293069&view=diff
==============================================================================
--- beehive/trunk/system-controls/src/webservice/org/apache/beehive/controls/system/webservice/generator/ParameterInfo.java (original)
+++ beehive/trunk/system-controls/src/webservice/org/apache/beehive/controls/system/webservice/generator/ParameterInfo.java Sat Oct 1 21:18:44 2005
@@ -49,8 +49,10 @@
if (name == null) {
_name = PARAM_BASE_NAME + position;
- } else if (GeneratorUtils.isJavaReservedWord(name)) {
- _name = GeneratorUtils.transformJavaReservedWord(name);
+ } else if (!GeneratorUtils.isValidJavaIdentifier(name)) {
+ _name = GeneratorUtils.transformInvalidJavaIdentifier(name);
+ System.out.println("Warning: Parameter name " + name
+ + " is not a valid Java method parameter name, changing to: " + _name);
} else {
_name = name;
}
Added: beehive/trunk/system-controls/test/src/webservice/jcxgen-tests/wsdls/ReservedKeywordDocLit.wsdl
URL: http://svn.apache.org/viewcvs/beehive/trunk/system-controls/test/src/webservice/jcxgen-tests/wsdls/ReservedKeywordDocLit.wsdl?rev=293069&view=auto
==============================================================================
--- beehive/trunk/system-controls/test/src/webservice/jcxgen-tests/wsdls/ReservedKeywordDocLit.wsdl (added)
+++ beehive/trunk/system-controls/test/src/webservice/jcxgen-tests/wsdls/ReservedKeywordDocLit.wsdl Sat Oct 1 21:18:44 2005
@@ -0,0 +1,198 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<wsdl:definitions targetNamespace="http://beehive.apache.org/reservedWords"
+ xmlns:tns="http://beehive.apache.org/reservedWords"
+ xmlns:apachesoap="http://xml.apache.org/xml-soap"
+ xmlns:impl="http://beehive.apache.org/reservedWords"
+ xmlns:intf="http://beehive.apache.org/reservedWords"
+ xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
+ xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+ <!--WSDL created by Apache Axis version: 1.2
+Built on May 03, 2005 (02:20:24 EDT)-->
+ <wsdl:types>
+ <schema elementFormDefault="qualified"
+ targetNamespace="http://beehive.apache.org/reservedWords"
+ xmlns="http://www.w3.org/2001/XMLSchema">
+ <complexType name="reservedWordsType">
+ <sequence>
+ <xsd:element name="abstract" nillable="true" type="xsd:int"/>
+ <xsd:element name="assert" nillable="true" type="xsd:int"/>
+ <xsd:element name="boolean" nillable="true" type="xsd:int"/>
+ <xsd:element name="break" nillable="true" type="xsd:int"/>
+ <xsd:element name="byte" nillable="true" type="xsd:int"/>
+ <xsd:element name="case" nillable="true" type="xsd:int"/>
+ <xsd:element name="catch" nillable="true" type="xsd:int"/>
+ <xsd:element name="char" nillable="true" type="xsd:int"/>
+ <xsd:element name="class" nillable="true" type="xsd:int"/>
+ <xsd:element name="const" nillable="true" type="xsd:int"/>
+ <xsd:element name="continue" nillable="true" type="xsd:int"/>
+ <xsd:element name="default" nillable="true" type="xsd:int"/>
+ <xsd:element name="double" nillable="true" type="xsd:int"/>
+ <xsd:element name="else" nillable="true" type="xsd:int"/>
+ <xsd:element name="extends" nillable="true" type="xsd:int"/>
+ <xsd:element name="false" nillable="true" type="xsd:int"/>
+ <xsd:element name="final" nillable="true" type="xsd:int"/>
+ <xsd:element name="finally" nillable="true" type="xsd:int"/>
+ <xsd:element name="float" nillable="true" type="xsd:int"/>
+ <xsd:element name="for" nillable="true" type="xsd:int"/>
+ <xsd:element name="goto" nillable="true" type="xsd:int"/>
+ <xsd:element name="if" nillable="true" type="xsd:int"/>
+ <xsd:element name="implements" nillable="true" type="xsd:int"/>
+ <xsd:element name="import" nillable="true" type="xsd:int"/>
+ <xsd:element name="instanceof" nillable="true" type="xsd:int"/>
+ <xsd:element name="int" nillable="true" type="xsd:int"/>
+ <xsd:element name="interface" nillable="true" type="xsd:int"/>
+ <xsd:element name="long" nillable="true" type="xsd:int"/>
+ <xsd:element name="native" nillable="true" type="xsd:int"/>
+ <xsd:element name="new" nillable="true" type="xsd:int"/>
+ <xsd:element name="null" nillable="true" type="xsd:int"/>
+ <xsd:element name="package" nillable="true" type="xsd:int"/>
+ <xsd:element name="private" nillable="true" type="xsd:int"/>
+ <xsd:element name="protected" nillable="true" type="xsd:int"/>
+ <xsd:element name="public" nillable="true" type="xsd:int"/>
+ <xsd:element name="return" nillable="true" type="xsd:int"/>
+ <xsd:element name="short" nillable="true" type="xsd:int"/>
+ <xsd:element name="static" nillable="true" type="xsd:int"/>
+<!-- XMLBeans barfs - XMLBEANS-191 <xsd:element name="strictfp" nillable="true" type="xsd:int"/> -->
+ <xsd:element name="super" nillable="true" type="xsd:int"/>
+ <xsd:element name="switch" nillable="true" type="xsd:int"/>
+ <xsd:element name="synchronized" nillable="true" type="xsd:int"/>
+ <xsd:element name="this" nillable="true" type="xsd:int"/>
+ <xsd:element name="throw" nillable="true" type="xsd:int"/>
+ <xsd:element name="throws" nillable="true" type="xsd:int"/>
+ <xsd:element name="transient" nillable="true" type="xsd:int"/>
+ <xsd:element name="true" nillable="true" type="xsd:int"/>
+ <xsd:element name="try" nillable="true" type="xsd:int"/>
+ <xsd:element name="void" nillable="true" type="xsd:int"/>
+ <xsd:element name="volatile" nillable="true" type="xsd:int"/>
+ <xsd:element name="while" nillable="true" type="xsd:int"/>
+
+ <xsd:element name="threadsafe" nillable="true" type="xsd:int"/>
+ <xsd:element name="enum" nillable="true" type="xsd:int"/>
+ <xsd:element name="Exception" nillable="true" type="xsd:int"/>
+ </sequence>
+ </complexType>
+
+ <xsd:element name="abstract" nillable="true" type="xsd:int"/>
+ <xsd:element name="assert" nillable="true" type="xsd:int"/>
+ <xsd:element name="boolean" nillable="true" type="xsd:int"/>
+ <xsd:element name="break" nillable="true" type="xsd:int"/>
+ <xsd:element name="byte" nillable="true" type="xsd:int"/>
+ <xsd:element name="case" nillable="true" type="xsd:int"/>
+ <xsd:element name="catch" nillable="true" type="xsd:int"/>
+ <xsd:element name="char" nillable="true" type="xsd:int"/>
+ <xsd:element name="class" nillable="true" type="xsd:int"/>
+ <xsd:element name="const" nillable="true" type="xsd:int"/>
+ <xsd:element name="continue" nillable="true" type="xsd:int"/>
+ <xsd:element name="default" nillable="true" type="xsd:int"/>
+ <xsd:element name="double" nillable="true" type="xsd:int"/>
+ <xsd:element name="else" nillable="true" type="xsd:int"/>
+ <xsd:element name="extends" nillable="true" type="xsd:int"/>
+ <xsd:element name="false" nillable="true" type="xsd:int"/>
+ <xsd:element name="final" nillable="true" type="xsd:int"/>
+ <xsd:element name="finally" nillable="true" type="xsd:int"/>
+ <xsd:element name="float" nillable="true" type="xsd:int"/>
+ <xsd:element name="for" nillable="true" type="xsd:int"/>
+ <xsd:element name="goto" nillable="true" type="xsd:int"/>
+ <xsd:element name="if" nillable="true" type="xsd:int"/>
+ <xsd:element name="implements" nillable="true" type="xsd:int"/>
+ <xsd:element name="import" nillable="true" type="xsd:int"/>
+ <xsd:element name="instanceof" nillable="true" type="xsd:int"/>
+ <xsd:element name="int" nillable="true" type="xsd:int"/>
+ <xsd:element name="interface" nillable="true" type="xsd:int"/>
+ <xsd:element name="long" nillable="true" type="xsd:int"/>
+ <xsd:element name="native" nillable="true" type="xsd:int"/>
+ <xsd:element name="new" nillable="true" type="xsd:int"/>
+ <xsd:element name="null" nillable="true" type="xsd:int"/>
+ <xsd:element name="package" nillable="true" type="xsd:int"/>
+ <xsd:element name="private" nillable="true" type="xsd:int"/>
+ <xsd:element name="protected" nillable="true" type="xsd:int"/>
+ <xsd:element name="public" nillable="true" type="xsd:int"/>
+ <xsd:element name="return" nillable="true" type="xsd:int"/>
+ <xsd:element name="short" nillable="true" type="xsd:int"/>
+ <xsd:element name="static" nillable="true" type="xsd:int"/>
+<!-- XMLBeans barfs - XMLBEANS-191 <xsd:element name="strictfp" nillable="true" type="xsd:int"/> -->
+ <xsd:element name="super" nillable="true" type="xsd:int"/>
+ <xsd:element name="switch" nillable="true" type="xsd:int"/>
+ <xsd:element name="synchronized" nillable="true" type="xsd:int"/>
+ <xsd:element name="this" nillable="true" type="xsd:int"/>
+ <xsd:element name="throw" nillable="true" type="xsd:int"/>
+ <xsd:element name="throws" nillable="true" type="xsd:int"/>
+ <xsd:element name="transient" nillable="true" type="xsd:int"/>
+ <xsd:element name="true" nillable="true" type="xsd:int"/>
+ <xsd:element name="try" nillable="true" type="xsd:int"/>
+ <xsd:element name="void" nillable="true" type="xsd:int"/>
+ <xsd:element name="volatile" nillable="true" type="xsd:int"/>
+ <xsd:element name="while" nillable="true" type="xsd:int"/>
+
+ <xsd:element name="threadsafe" nillable="true" type="xsd:int"/>
+ <xsd:element name="enum" nillable="true" type="xsd:int"/>
+ <xsd:element name="Exception" nillable="true" type="xsd:int"/>
+
+ </schema>
+ </wsdl:types>
+
+ <wsdl:message name="reservedWordsWrappedMsg">
+ <wsdl:part element="tns:reservedWordsType" name="reserved"/>
+ </wsdl:message>
+
+
+ <wsdl:portType name="ReservedWordsWrapped">
+
+ <wsdl:operation name="abstract">
+ <wsdl:input message="tns:reservedWordsWrappedMsg" name="abstractReq"/>
+ <wsdl:output message="tns:reservedWordsWrappedMsg" name="abstractResp"/>
+ </wsdl:operation>
+
+ <wsdl:operation name="Exception">
+ <wsdl:input message="tns:reservedWordsWrappedMsg" name="ExceptionReq"/>
+ <wsdl:output message="tns:reservedWordsWrappedMsg" name="ExceptionResp"/>
+ </wsdl:operation>
+
+ <wsdl:operation name="dot.name">
+ <wsdl:input message="tns:reservedWordsWrappedMsg" name="dot.nameReq"/>
+ <wsdl:output message="tns:reservedWordsWrappedMsg" name="dot.nameResp"/>
+ </wsdl:operation>
+
+
+ </wsdl:portType>
+
+ <wsdl:binding name="ReservedWordsWrappedSoapBinding" type="tns:ReservedWordsWrapped">
+ <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
+ <wsdl:operation name="abstract">
+ <wsdlsoap:operation soapAction="abstract"/>
+ <wsdl:input name="abstractReq">
+ <wsdlsoap:body use="literal"/>
+ </wsdl:input>
+ <wsdl:output name="abstractResp">
+ <wsdlsoap:body use="literal"/>
+ </wsdl:output>
+ </wsdl:operation>
+ <wsdl:operation name="Exception">
+ <wsdlsoap:operation soapAction="Exception"/>
+ <wsdl:input name="ExceptionReq">
+ <wsdlsoap:body use="literal"/>
+ </wsdl:input>
+ <wsdl:output name="abstractResp">
+ <wsdlsoap:body use="literal"/>
+ </wsdl:output>
+ </wsdl:operation>
+
+ <!--<wsdl:operation name="dot.name">-->
+ <!--<wsdlsoap:operation soapAction="dot.name"/>-->
+ <!--<wsdl:input name="dot.nameReq">-->
+ <!--<wsdlsoap:body use="literal"/>-->
+ <!--</wsdl:input>-->
+ <!--<wsdl:output name="dot.nameResp">-->
+ <!--<wsdlsoap:body use="literal"/>-->
+ <!--</wsdl:output>-->
+ <!--</wsdl:operation>-->
+ </wsdl:binding>
+
+ <wsdl:service name="ReservedWordsSampleService">
+ <wsdl:port binding="tns:ReservedWordsWrappedeSoapBinding" name="ReservedWordsSample">
+ <wsdlsoap:address location="http://localhost:8080/ReservedWordsSampleServiceWrappedSample.jws"/>
+ </wsdl:port>
+ </wsdl:service>
+
+</wsdl:definitions>
Added: beehive/trunk/system-controls/test/src/webservice/jcxgen-tests/wsdls/ReservedKeywordRpcLit.wsdl
URL: http://svn.apache.org/viewcvs/beehive/trunk/system-controls/test/src/webservice/jcxgen-tests/wsdls/ReservedKeywordRpcLit.wsdl?rev=293069&view=auto
==============================================================================
--- beehive/trunk/system-controls/test/src/webservice/jcxgen-tests/wsdls/ReservedKeywordRpcLit.wsdl (added)
+++ beehive/trunk/system-controls/test/src/webservice/jcxgen-tests/wsdls/ReservedKeywordRpcLit.wsdl Sat Oct 1 21:18:44 2005
@@ -0,0 +1,363 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<wsdl:definitions targetNamespace="http://beehive.apache.org/rpc/reservedWords"
+ xmlns:tns="http://beehive.apache.org/rpc/reservedWords"
+ xmlns:apachesoap="http://xml.apache.org/xml-soap"
+ xmlns:impl="http://beehive.apache.org/rpc/reservedWords"
+ xmlns:intf="http://beehive.apache.org/rpc/reservedWords"
+ xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
+ xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+ <!--WSDL created by Apache Axis version: 1.2
+Built on May 03, 2005 (02:20:24 EDT)-->
+ <wsdl:types>
+ <schema elementFormDefault="qualified"
+ targetNamespace="http://beehive.apache.org/rpc/reservedWords"
+ xmlns="http://www.w3.org/2001/XMLSchema">
+ <complexType name="reservedWordsType">
+ <sequence>
+ <xsd:element name="abstract" nillable="true" type="xsd:int"/>
+ <xsd:element name="assert" nillable="true" type="xsd:int"/>
+ <xsd:element name="boolean" nillable="true" type="xsd:int"/>
+ <xsd:element name="break" nillable="true" type="xsd:int"/>
+ <xsd:element name="byte" nillable="true" type="xsd:int"/>
+ <xsd:element name="case" nillable="true" type="xsd:int"/>
+ <xsd:element name="catch" nillable="true" type="xsd:int"/>
+ <xsd:element name="char" nillable="true" type="xsd:int"/>
+ <xsd:element name="class" nillable="true" type="xsd:int"/>
+ <xsd:element name="const" nillable="true" type="xsd:int"/>
+ <xsd:element name="continue" nillable="true" type="xsd:int"/>
+ <xsd:element name="default" nillable="true" type="xsd:int"/>
+ <xsd:element name="double" nillable="true" type="xsd:int"/>
+ <xsd:element name="else" nillable="true" type="xsd:int"/>
+ <xsd:element name="extends" nillable="true" type="xsd:int"/>
+ <xsd:element name="false" nillable="true" type="xsd:int"/>
+ <xsd:element name="final" nillable="true" type="xsd:int"/>
+ <xsd:element name="finally" nillable="true" type="xsd:int"/>
+ <xsd:element name="float" nillable="true" type="xsd:int"/>
+ <xsd:element name="for" nillable="true" type="xsd:int"/>
+ <xsd:element name="goto" nillable="true" type="xsd:int"/>
+ <xsd:element name="if" nillable="true" type="xsd:int"/>
+ <xsd:element name="implements" nillable="true" type="xsd:int"/>
+ <xsd:element name="import" nillable="true" type="xsd:int"/>
+ <xsd:element name="instanceof" nillable="true" type="xsd:int"/>
+ <xsd:element name="int" nillable="true" type="xsd:int"/>
+ <xsd:element name="interface" nillable="true" type="xsd:int"/>
+ <xsd:element name="long" nillable="true" type="xsd:int"/>
+ <xsd:element name="native" nillable="true" type="xsd:int"/>
+ <xsd:element name="new" nillable="true" type="xsd:int"/>
+ <xsd:element name="null" nillable="true" type="xsd:int"/>
+ <xsd:element name="package" nillable="true" type="xsd:int"/>
+ <xsd:element name="private" nillable="true" type="xsd:int"/>
+ <xsd:element name="protected" nillable="true" type="xsd:int"/>
+ <xsd:element name="public" nillable="true" type="xsd:int"/>
+ <xsd:element name="return" nillable="true" type="xsd:int"/>
+ <xsd:element name="short" nillable="true" type="xsd:int"/>
+ <xsd:element name="static" nillable="true" type="xsd:int"/>
+<!-- XMLBeans barfs - XMLBEANS-191 <xsd:element name="strictfp" nillable="true" type="xsd:int"/> -->
+ <xsd:element name="super" nillable="true" type="xsd:int"/>
+ <xsd:element name="switch" nillable="true" type="xsd:int"/>
+ <xsd:element name="synchronized" nillable="true" type="xsd:int"/>
+ <xsd:element name="this" nillable="true" type="xsd:int"/>
+ <xsd:element name="throw" nillable="true" type="xsd:int"/>
+ <xsd:element name="throws" nillable="true" type="xsd:int"/>
+ <xsd:element name="transient" nillable="true" type="xsd:int"/>
+ <xsd:element name="true" nillable="true" type="xsd:int"/>
+ <xsd:element name="try" nillable="true" type="xsd:int"/>
+ <xsd:element name="void" nillable="true" type="xsd:int"/>
+ <xsd:element name="volatile" nillable="true" type="xsd:int"/>
+ <xsd:element name="while" nillable="true" type="xsd:int"/>
+
+ <xsd:element name="threadsafe" nillable="true" type="xsd:int"/>
+ <xsd:element name="enum" nillable="true" type="xsd:int"/>
+ <xsd:element name="Exception" nillable="true" type="xsd:int"/>
+ </sequence>
+ </complexType>
+
+ <xsd:element name="abstract" nillable="true" type="xsd:int"/>
+ <xsd:element name="assert" nillable="true" type="xsd:int"/>
+ <xsd:element name="boolean" nillable="true" type="xsd:int"/>
+ <xsd:element name="break" nillable="true" type="xsd:int"/>
+ <xsd:element name="byte" nillable="true" type="xsd:int"/>
+ <xsd:element name="case" nillable="true" type="xsd:int"/>
+ <xsd:element name="catch" nillable="true" type="xsd:int"/>
+ <xsd:element name="char" nillable="true" type="xsd:int"/>
+ <xsd:element name="class" nillable="true" type="xsd:int"/>
+ <xsd:element name="const" nillable="true" type="xsd:int"/>
+ <xsd:element name="continue" nillable="true" type="xsd:int"/>
+ <xsd:element name="default" nillable="true" type="xsd:int"/>
+ <xsd:element name="double" nillable="true" type="xsd:int"/>
+ <xsd:element name="else" nillable="true" type="xsd:int"/>
+ <xsd:element name="extends" nillable="true" type="xsd:int"/>
+ <xsd:element name="false" nillable="true" type="xsd:int"/>
+ <xsd:element name="final" nillable="true" type="xsd:int"/>
+ <xsd:element name="finally" nillable="true" type="xsd:int"/>
+ <xsd:element name="float" nillable="true" type="xsd:int"/>
+ <xsd:element name="for" nillable="true" type="xsd:int"/>
+ <xsd:element name="goto" nillable="true" type="xsd:int"/>
+ <xsd:element name="if" nillable="true" type="xsd:int"/>
+ <xsd:element name="implements" nillable="true" type="xsd:int"/>
+ <xsd:element name="import" nillable="true" type="xsd:int"/>
+ <xsd:element name="instanceof" nillable="true" type="xsd:int"/>
+ <xsd:element name="int" nillable="true" type="xsd:int"/>
+ <xsd:element name="interface" nillable="true" type="xsd:int"/>
+ <xsd:element name="long" nillable="true" type="xsd:int"/>
+ <xsd:element name="native" nillable="true" type="xsd:int"/>
+ <xsd:element name="new" nillable="true" type="xsd:int"/>
+ <xsd:element name="null" nillable="true" type="xsd:int"/>
+ <xsd:element name="package" nillable="true" type="xsd:int"/>
+ <xsd:element name="private" nillable="true" type="xsd:int"/>
+ <xsd:element name="protected" nillable="true" type="xsd:int"/>
+ <xsd:element name="public" nillable="true" type="xsd:int"/>
+ <xsd:element name="return" nillable="true" type="xsd:int"/>
+ <xsd:element name="short" nillable="true" type="xsd:int"/>
+ <xsd:element name="static" nillable="true" type="xsd:int"/>
+<!-- XMLBeans barfs - XMLBEANS-191 <xsd:element name="strictfp" nillable="true" type="xsd:int"/> -->
+ <xsd:element name="super" nillable="true" type="xsd:int"/>
+ <xsd:element name="switch" nillable="true" type="xsd:int"/>
+ <xsd:element name="synchronized" nillable="true" type="xsd:int"/>
+ <xsd:element name="this" nillable="true" type="xsd:int"/>
+ <xsd:element name="throw" nillable="true" type="xsd:int"/>
+ <xsd:element name="throws" nillable="true" type="xsd:int"/>
+ <xsd:element name="transient" nillable="true" type="xsd:int"/>
+ <xsd:element name="true" nillable="true" type="xsd:int"/>
+ <xsd:element name="try" nillable="true" type="xsd:int"/>
+ <xsd:element name="void" nillable="true" type="xsd:int"/>
+ <xsd:element name="volatile" nillable="true" type="xsd:int"/>
+ <xsd:element name="while" nillable="true" type="xsd:int"/>
+
+ <xsd:element name="threadsafe" nillable="true" type="xsd:int"/>
+ <xsd:element name="enum" nillable="true" type="xsd:int"/>
+ <xsd:element name="Exception" nillable="true" type="xsd:int"/>
+
+ </schema>
+ </wsdl:types>
+
+ <wsdl:message name="reservedWordsMsg">
+ <wsdl:part name="abstract" type="impl:abstract"/>
+ <wsdl:part name="assert" type="impl:assert"/>
+ <wsdl:part name="boolean" type="impl:boolean"/>
+ <wsdl:part name="break" type="impl:break"/>
+ <wsdl:part name="byte" type="impl:byte"/>
+ <wsdl:part name="case" type="impl:case"/>
+ <wsdl:part name="catch" type="impl:catch"/>
+ <wsdl:part name="char" type="impl:char"/>
+ <wsdl:part name="class" type="impl:class"/>
+ <wsdl:part name="const" type="impl:const"/>
+ <wsdl:part name="continue" type="impl:continue"/>
+ <wsdl:part name="default" type="impl:default"/>
+ <wsdl:part name="double" type="impl:double"/>
+ <wsdl:part name="else" type="impl:else"/>
+ <wsdl:part name="extends" type="impl:extends"/>
+ <wsdl:part name="false" type="impl:false"/>
+ <wsdl:part name="final" type="impl:final"/>
+ <wsdl:part name="finally" type="impl:finally"/>
+ <wsdl:part name="float" type="impl:float"/>
+ <wsdl:part name="for" type="impl:for"/>
+ <wsdl:part name="goto" type="impl:goto"/>
+ <wsdl:part name="if" type="impl:if"/>
+ <wsdl:part name="implements" type="impl:implements"/>
+ <wsdl:part name="import" type="impl:import"/>
+ <wsdl:part name="instanceof" type="impl:instanceof"/>
+ <wsdl:part name="int" type="impl:int"/>
+ <wsdl:part name="interface" type="impl:interface"/>
+ <wsdl:part name="long" type="impl:long"/>
+ <wsdl:part name="native" type="impl:native"/>
+ <wsdl:part name="new" type="impl:new"/>
+ <wsdl:part name="null" type="impl:null"/>
+ <wsdl:part name="package" type="impl:package"/>
+ <wsdl:part name="private" type="impl:private"/>
+ <wsdl:part name="protected" type="impl:protected"/>
+ <wsdl:part name="public" type="impl:public"/>
+ <wsdl:part name="return" type="impl:return"/>
+ <wsdl:part name="short" type="impl:short"/>
+ <wsdl:part name="static" type="impl:static"/>
+<!-- XMLBeans barfs - XMLBEANS-191 <wsdl:part name="strictfp" type="impl:strictfp"/> -->
+ <wsdl:part name="super" type="impl:super"/>
+ <wsdl:part name="switch" type="impl:switch"/>
+ <wsdl:part name="synchronized" type="impl:synchronized"/>
+ <wsdl:part name="this" type="impl:this"/>
+ <wsdl:part name="throw" type="impl:throw"/>
+ <wsdl:part name="throws" type="impl:throws"/>
+ <wsdl:part name="transient" type="impl:transient"/>
+ <wsdl:part name="true" type="impl:true"/>
+ <wsdl:part name="try" type="impl:try"/>
+ <wsdl:part name="void" type="impl:void"/>
+ <wsdl:part name="volatile" type="impl:volatile"/>
+ <wsdl:part name="while" type="impl:while"/>
+
+ <wsdl:part name="threadsafe" type="impl:threadsafe"/>
+ <wsdl:part name="enum" type="impl:enum"/>
+ <wsdl:part name="Exception" type="impl:Exception"/>
+ </wsdl:message>
+
+
+ <wsdl:portType name="ReservedWordsRpcLit">
+
+ <wsdl:operation name="abstract">
+ <wsdl:input message="tns:reservedWordsMsg" name="abstractReq"/>
+ <wsdl:output message="tns:reservedWordsMsg" name="abstractResp"/>
+ </wsdl:operation>
+
+ <wsdl:operation name="Exception">
+ <wsdl:input message="tns:reservedWordsMsg" name="ExceptionReq"/>
+ <wsdl:output message="tns:reservedWordsMsg" name="ExceptionResp"/>
+ </wsdl:operation>
+
+ <wsdl:operation name="dot.name1">
+ <wsdl:input message="tns:reservedWordsMsg" name="dot.nameReq"/>
+ <wsdl:output message="tns:reservedWordsMsg" name="dot.nameResp"/>
+ </wsdl:operation>
+
+
+ <wsdl:operation name="dot.name2">
+ <wsdl:input message="tns:reservedWordsMsg" name="dot.name2Req"/>
+ <wsdl:output message="tns:reservedWordsMsg" name="dot.name2Resp"/>
+ </wsdl:operation>
+
+ <wsdl:operation name="dot-name3">
+ <wsdl:input message="tns:reservedWordsMsg" name="dot-nameReq"/>
+ <wsdl:output message="tns:reservedWordsMsg" name="dot-nameResp"/>
+ </wsdl:operation>
+ <wsdl:operation name="String">
+ <wsdl:input message="tns:reservedWordsMsg" name="String"/>
+ <wsdl:output message="tns:reservedWordsMsg" name="String"/>
+ </wsdl:operation>
+ <wsdl:operation name="dot_name4">
+ <wsdl:input message="tns:reservedWordsMsg" name="dot_nameReq"/>
+ <wsdl:output message="tns:reservedWordsMsg" name="dot_nameResp"/>
+ </wsdl:operation>
+ <wsdl:operation name="dot">
+ <wsdl:input message="tns:reservedWordsMsg" name="dotReq"/>
+ <wsdl:output message="tns:reservedWordsMsg" name="dotResp"/>
+ </wsdl:operation>
+
+ <wsdl:operation name="do.t">
+ <wsdl:input message="tns:reservedWordsMsg" name="do.tReq"/>
+ <wsdl:output message="tns:reservedWordsMsg" name="do.tResp"/>
+ </wsdl:operation>
+ <wsdl:operation name="da-sh">
+ <wsdl:input message="tns:reservedWordsMsg" name="da-shReq"/>
+ <wsdl:output message="tns:reservedWordsMsg" name="da-shResp"/>
+ </wsdl:operation>
+ <wsdl:operation name="under_score">
+ <wsdl:input message="tns:reservedWordsMsg" name="under_score"/>
+ <wsdl:output message="tns:reservedWordsMsg" name="under_score"/>
+ </wsdl:operation>
+
+
+ </wsdl:portType>
+
+ <wsdl:binding name="ReservedWordsRpcLitSoapBinding" type="impl:ReservedWordsRpcLit">
+
+ <wsdlsoap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
+ <wsdl:operation name="abstract">
+ <wsdlsoap:operation soapAction="abstract"/>
+ <wsdl:input name="abstractReq">
+ <wsdlsoap:body namespace="http:/beehive.apache.org/rpc/reservedWords" use="literal"/>
+ </wsdl:input>
+ <wsdl:output name="abstractResp">
+ <wsdlsoap:body namespace="http:/beehive.apache.org/rpc/reservedWords" use="literal"/>
+ </wsdl:output>
+
+ </wsdl:operation>
+ <wsdl:operation name="Exception">
+ <wsdlsoap:operation soapAction="Exception"/>
+ <wsdl:input name="ExceptionReq">
+ <wsdlsoap:body namespace="http:/beehive.apache.org/rpc/reservedWords" use="literal"/>
+ </wsdl:input>
+ <wsdl:output name="ExceptionResp">
+ <wsdlsoap:body namespace="http:/beehive.apache.org/rpc/reservedWords" use="literal"/>
+ </wsdl:output>
+ </wsdl:operation>
+
+
+ <wsdl:operation name="String">
+ <wsdlsoap:operation soapAction="String"/>
+ <wsdl:input name="StringReq">
+ <wsdlsoap:body namespace="http:/beehive.apache.org/rpc/reservedWords" use="literal"/>
+ </wsdl:input>
+ <wsdl:output name="StringResp">
+ <wsdlsoap:body namespace="http:/beehive.apache.org/rpc/reservedWords" use="literal"/>
+ </wsdl:output>
+ </wsdl:operation>
+
+ <wsdl:operation name="dot.name1">
+ <wsdlsoap:operation soapAction="dot.name1"/>
+ <wsdl:input name="dot.nameReq">
+ <wsdlsoap:body use="literal"/>
+ </wsdl:input>
+ <wsdl:output name="dot.nameResp">
+ <wsdlsoap:body use="literal"/>
+ </wsdl:output>
+ </wsdl:operation>
+
+ <wsdl:operation name="dot.name2">
+ <wsdlsoap:operation soapAction="dot.name2"/>
+ <wsdl:input name="dot.name2Req">
+ <wsdlsoap:body use="literal"/>
+ </wsdl:input>
+ <wsdl:output name="dot.name2Resp">
+ <wsdlsoap:body use="literal"/>
+ </wsdl:output>
+ </wsdl:operation>
+
+ <wsdl:operation name="dot-name3">
+ <wsdlsoap:operation soapAction="dot-name3"/>
+ <wsdl:input name="dot-nameReq">
+ <wsdlsoap:body use="literal"/>
+ </wsdl:input>
+ <wsdl:output name="dot-nameResp">
+ <wsdlsoap:body use="literal"/>
+ </wsdl:output>
+ </wsdl:operation>
+
+ <wsdl:operation name="dot_name4">
+ <wsdlsoap:operation soapAction="dot_name4"/>
+ <wsdl:input name="dot_nameReq">
+ <wsdlsoap:body use="literal"/>
+ </wsdl:input>
+ <wsdl:output name="dot_nameResp">
+ <wsdlsoap:body use="literal"/>
+ </wsdl:output>
+ </wsdl:operation>
+
+
+ <wsdl:operation name="do.t">
+ <wsdlsoap:operation soapAction="do.t"/>
+ <wsdl:input name="do.tReq">
+ <wsdlsoap:body use="literal"/>
+ </wsdl:input>
+ <wsdl:output name="do.tResp">
+ <wsdlsoap:body use="literal"/>
+ </wsdl:output>
+ </wsdl:operation>
+
+ <wsdl:operation name="da-sh">
+ <wsdlsoap:operation soapAction="da-sh"/>
+ <wsdl:input name="da-shReq">
+ <wsdlsoap:body use="literal"/>
+ </wsdl:input>
+ <wsdl:output name="da-shResp">
+ <wsdlsoap:body use="literal"/>
+ </wsdl:output>
+ </wsdl:operation>
+
+ <wsdl:operation name="under_score">
+ <wsdlsoap:operation soapAction="under_score"/>
+ <wsdl:input name="under_scoreReq">
+ <wsdlsoap:body use="literal"/>
+ </wsdl:input>
+ <wsdl:output name="under_scoreResp">
+ <wsdlsoap:body use="literal"/>
+ </wsdl:output>
+ </wsdl:operation>
+
+ </wsdl:binding>
+
+ <wsdl:service name="ReservedWordsRpcLitSampleService">
+ <wsdl:port binding="tns:ReservedWordsRpcLitSoapBinding" name="ReservedWordsRpcLitSample">
+ <wsdlsoap:address location="http://localhost:8080/ReservedWordsSampleServiceWrappedSample.jws"/>
+ </wsdl:port>
+ </wsdl:service>
+
+</wsdl:definitions>