The base type may not have been processed and causing NPE.
diff --git a/src/wsdl/org/apache/axis/wsdl/wsdl2ws/info/WSDLInfo.java b/src/wsdl/org/apache/axis/wsdl/wsdl2ws/info/WSDLInfo.java
index 8b8e858..02bda72 100644
--- a/src/wsdl/org/apache/axis/wsdl/wsdl2ws/info/WSDLInfo.java
+++ b/src/wsdl/org/apache/axis/wsdl/wsdl2ws/info/WSDLInfo.java
@@ -929,7 +929,7 @@
* NEEDS WORK - CURRENTLY THE ONLY THING WE DO IS GENERATE ENUMERATOR CONSTANTS AND CREATE
* AN EMPTY RESTRICTOR FUNCTION WHEN DOING CODE GENERATION STEP.
*/
- private void setRestrictionBaseAndValues(Type typedata, Node node)
+ private void setRestrictionBaseAndValues(Type typedata, Node node) throws WrapperFault
{
if (node == null)
return;
@@ -1053,7 +1053,19 @@
else
primitiveBaseTypeQName = baseEType.getQName();
+ if (c_verbose)
+ System.out.println("primitiveBaseTypeQName=" + primitiveBaseTypeQName);
+
classForPrimitiveType = CUtils.getSimpleType(primitiveBaseTypeQName);
+ while (classForPrimitiveType == null)
+ {
+ createTypeInfo(primitiveBaseTypeQName);
+ classForPrimitiveType = CUtils.getSimpleType(primitiveBaseTypeQName);
+ }
+
+ if (c_verbose)
+ System.out.println("classForPrimitiveType=" + classForPrimitiveType);
+
initValueForType = CUtils.getInitValueForType(classForPrimitiveType);
// Set the base type for Type