Hi, I've been using the latest versions of Axis and I've detected a problem with wsdl2java. With certain output parameters, no holder class is generated, but the SoapBindingImpl class tries to use, which results in a compilation error. I've tried the 19-3-2002 version and many others before. The only version that doesn't produce this error is the one from 12-3-2002.
Attached are all files I'm using. Many thanks, Nuno Guerreiro __________________________________________________ Do You Yahoo!? Yahoo! Movies - coverage of the 74th Academy Awards� http://movies.yahoo.com/
<?xml version="1.0" encoding="UTF-8"?> <wsdl:definitions targetNamespace="http://localhost:8080/axis/services/cidadebcp-registerBranchUser" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:impl="http://localhost:8080/axis/services/cidadebcp-registerBranchUser-impl" xmlns:intf="http://localhost:8080/axis/services/cidadebcp-registerBranchUser" xmlns:tns0="http://www.cidadebcp.pt/webservices/types" xmlns:tns1="http://www.cidadebcp.pt/webservices/registerBranchUser" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <import namespace="http://www.cidadebcp.pt/webservices/registerBranchUser" location="schemas/RegisterBranchUser.xsd"/> <wsdl:message name="registerBranchUserResponse"> <wsdl:part name="out" element="tns1:registerBranchUserOutput"/> <wsdl:part name="outputContext" element="tns0:outputContext"/> </wsdl:message> <wsdl:message name="registerBranchUserRequest"> <wsdl:part name="in" element="tns1:registerBranchUserInput"/> <wsdl:part name="inputContext" element="tns0:inputContext"/> </wsdl:message> <wsdl:portType name="registerBranchUserService"> <wsdl:operation name="registerBranchUser" parameterOrder="in inputContext"> <wsdl:input message="intf:registerBranchUserRequest"/> <wsdl:output message="intf:registerBranchUserResponse"/> </wsdl:operation> </wsdl:portType> <wsdl:binding name="cidadebcp-registerBranchUserSoapBinding" type="intf:registerBranchUserService"> <wsdlsoap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/> <wsdl:operation name="registerBranchUser"> <wsdlsoap:operation soapAction="" style="rpc"/> <wsdl:input> <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://localhost:8080/axis/services/cidadebcp-registerBranchUser" use="encoded"/> </wsdl:input> <wsdl:output> <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://localhost:8080/axis/services/cidadebcp-registerBranchUser" use="encoded"/> </wsdl:output> </wsdl:operation> </wsdl:binding> <wsdl:service name="cidadebcp-registerBranchUser"> <wsdl:port binding="intf:cidadebcp-registerBranchUserSoapBinding" name="cidadebcp-registerBranchUser"> <wsdlsoap:address location="http://localhost:8080/axis/services/cidadebcp-registerBranchUser"/> </wsdl:port> </wsdl:service> </wsdl:definitions>
<?xml version="1.0" encoding="UTF-8"?> <!-- edited with XML Spy v4.2 U (http://www.xmlspy.com) by Nasdaq Boom (World of Cracking) --> <xs:schema targetNamespace="http://www.cidadebcp.pt/webservices/registerBranchUser" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://www.cidadebcp.pt/webservices/registerBranchUser" xmlns:typ="http://www.cidadebcp.pt/webservices/types"> <xs:import namespace="http://www.cidadebcp.pt/webservices/types" schemaLocation="Types.xsd"/> <xs:element name="registerBranchUserInput"> <xs:complexType> <xs:all> <xs:element name="networkAlias" type="typ:NetworkAliasType"/> <xs:element name="account"> <xs:complexType> <xs:attribute name="number" type="xs:long" use="required"/> <xs:attribute name="company" type="xs:byte" use="required"/> </xs:complexType> </xs:element> <xs:element name="customer"> <xs:complexType> <xs:attribute name="cis" type="xs:int" use="required"/> <xs:attribute name="company" type="xs:byte" use="required"/> </xs:complexType> </xs:element> <xs:element name="mobileNo" type="xs:string" minOccurs="0"/> </xs:all> </xs:complexType> </xs:element> <xs:element name="registerBranchUserOutput"> <xs:complexType> <xs:all> <xs:element name="username" type="typ:UsernameType"/> <xs:element name="confirmationCode" type="xs:int"/> </xs:all> </xs:complexType> </xs:element> <xs:element name="registerBranchUser"> <xs:complexType> <xs:all> <xs:element ref="registerBranchUserInput"/> </xs:all> </xs:complexType> </xs:element> <xs:element name="registerBranchUserResponse"> <xs:complexType> <xs:all> <xs:element ref="registerBranchUserOutput"/> </xs:all> </xs:complexType> </xs:element> </xs:schema>
<?xml version="1.0" encoding="UTF-8"?> <!-- edited with XML Spy v4.2 U (http://www.xmlspy.com) by Nasdaq Boom (World of Cracking) --> <xs:schema targetNamespace="http://www.cidadebcp.pt/webservices/types" xmlns="http://www.cidadebcp.pt/webservices/types" xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:complexType name="InputContextType"> <xs:annotation> <xs:documentation>Generic information used in every service input</xs:documentation> </xs:annotation> <xs:sequence> <xs:element name="channel" type="ChannelType"> <xs:annotation> <xs:documentation>channel name, e.g. WAP</xs:documentation> </xs:annotation> </xs:element> <xs:element name="device" type="DeviceType" minOccurs="0"> <xs:annotation> <xs:documentation>physical device properties</xs:documentation> </xs:annotation> </xs:element> <xs:element name="source" type="xs:string" minOccurs="0"> <xs:annotation> <xs:documentation>entity where request took place, e.g. ONIWAY</xs:documentation> </xs:annotation> </xs:element> <xs:element name="deferExecution" type="xs:boolean" minOccurs="0"> <xs:annotation> <xs:documentation>If true, prepares the current transaction for future execution (Store And Forward mechanism)</xs:documentation> </xs:annotation> </xs:element> <xs:element name="securityCodeValues" minOccurs="0"> <xs:annotation> <xs:documentation>3 values corresponding to the requested 3 random positions</xs:documentation> </xs:annotation> <xs:complexType> <xs:sequence> <xs:element name="positionValue" type="xs:byte" minOccurs="3" maxOccurs="3"/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> <xs:complexType name="OutputContextType"> <xs:annotation> <xs:documentation>Generic information used in every service output</xs:documentation> </xs:annotation> <xs:sequence> <xs:element name="session" type="xs:string" minOccurs="0"/> <xs:element name="metadata" minOccurs="0"> <xs:annotation> <xs:documentation>General information about the data being returned</xs:documentation> </xs:annotation> <xs:complexType> <xs:attribute name="source" type="MetadataSourceType" use="optional"/> <xs:attribute name="status" type="MetadataStatusType" use="optional"/> <xs:attribute name="date" type="xs:dateTime" use="optional"> <xs:annotation> <xs:documentation>Corresponds to actual time if data was obtained online, otherwise it corresponds to the time when data was last saved in source</xs:documentation> </xs:annotation> </xs:attribute> </xs:complexType> </xs:element> <xs:element name="securityCodePositions" minOccurs="0"> <xs:annotation> <xs:documentation>3 random positions from a securitycode</xs:documentation> </xs:annotation> <xs:complexType> <xs:sequence> <xs:element name="position" type="xs:byte" minOccurs="3" maxOccurs="3"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="observations" type="xs:string" minOccurs="0"/> </xs:sequence> </xs:complexType> <xs:simpleType name="ChannelType"> <xs:restriction base="xs:string"> <xs:enumeration value="SMS"/> <xs:enumeration value="WAP"/> <xs:enumeration value="WEB"/> </xs:restriction> </xs:simpleType> <xs:complexType name="DeviceType"> <xs:attribute name="id" type="xs:string" use="required"> <xs:annotation> <xs:documentation>unique device identification, e.g. mobile number</xs:documentation> </xs:annotation> </xs:attribute> </xs:complexType> <xs:element name="inputContext" type="InputContextType"/> <xs:element name="outputContext" type="OutputContextType"/> <xs:simpleType name="CodePositionType"> <xs:restriction base="xs:byte"> <xs:minInclusive value="1"/> <xs:maxInclusive value="7"/> </xs:restriction> </xs:simpleType> <xs:simpleType name="CodeValueType"> <xs:restriction base="xs:byte"> <xs:minInclusive value="0"/> <xs:maxInclusive value="9"/> </xs:restriction> </xs:simpleType> <xs:simpleType name="MetadataSourceType"> <xs:annotation> <xs:documentation>The place in which data originated, e.g. Mainframe</xs:documentation> </xs:annotation> <xs:restriction base="xs:string"> <xs:enumeration value="Mainframe"/> <xs:enumeration value="Contingency Database"/> </xs:restriction> </xs:simpleType> <xs:simpleType name="MetadataStatusType"> <xs:annotation> <xs:documentation>The mainframe status when this transaction was processed (online/offline)</xs:documentation> </xs:annotation> <xs:restriction base="xs:string"> <xs:enumeration value="online"/> <xs:enumeration value="offline"/> </xs:restriction> </xs:simpleType> <xs:simpleType name="AccountIndexType"> <xs:restriction base="xs:byte"> <xs:minInclusive value="1"/> </xs:restriction> </xs:simpleType> <xs:complexType name="AccountBalanceType"> <xs:sequence> <xs:element name="money" type="MoneyType"/> </xs:sequence> <xs:attribute name="kind" type="BalanceKindType" use="required"/> </xs:complexType> <xs:simpleType name="CurrencyType"> <xs:restriction base="xs:string"> <xs:length value="3"/> </xs:restriction> </xs:simpleType> <xs:simpleType name="NetworkAliasType"> <xs:restriction base="xs:string"> <xs:enumeration value="NR"/> <xs:enumeration value="BPA"/> <xs:enumeration value="SM"/> <xs:enumeration value="PART"/> <xs:enumeration value="EA"/> <xs:enumeration value="RS"/> <xs:enumeration value="BCPPB"/> <xs:enumeration value="BPAPB"/> <xs:enumeration value="OFMAD"/> <xs:enumeration value="BPAOV"/> <xs:enumeration value="SR"/> </xs:restriction> </xs:simpleType> <xs:simpleType name="AccountNumberType"> <xs:restriction base="xs:long"> <xs:minInclusive value="1"/> </xs:restriction> </xs:simpleType> <xs:simpleType name="UsernameType"> <xs:restriction base="xs:string"> <xs:minLength value="6"/> <xs:maxLength value="10"/> </xs:restriction> </xs:simpleType> <xs:simpleType name="PasswordType"> <xs:restriction base="xs:string"> <xs:minLength value="6"/> <xs:maxLength value="8"/> </xs:restriction> </xs:simpleType> <xs:simpleType name="NetworkNameType"> <xs:restriction base="xs:string"/> </xs:simpleType> <xs:complexType name="MoneyType"> <xs:attribute name="amount" type="AmountType" use="required"/> <xs:attribute name="currency" type="CurrencyType" use="required"/> </xs:complexType> <xs:simpleType name="AmountType"> <xs:restriction base="xs:double"/> </xs:simpleType> <xs:simpleType name="FiscalNumberType"> <xs:restriction base="xs:int"/> </xs:simpleType> <xs:simpleType name="BalanceKindType"> <xs:restriction base="xs:string"> <xs:enumeration value="ledger"/> <xs:enumeration value="available"/> </xs:restriction> </xs:simpleType> <xs:simpleType name="NIBType"> <xs:restriction base="xs:string"> <xs:length value="21"/> </xs:restriction> </xs:simpleType> <xs:complexType name="DDAccountType"> <xs:choice> <xs:element name="accountIndex" type="AccountIndexType"/> <xs:element name="account" type="AccountType"/> </xs:choice> </xs:complexType> <xs:simpleType name="CardKindType"> <xs:restriction base="xs:string"/> </xs:simpleType> <xs:complexType name="AccountType"> <xs:attribute name="number" type="AccountNumberType" use="required"/> <xs:attribute name="networkAlias" type="NetworkAliasType" use="optional"/> </xs:complexType> <xs:simpleType name="BourseOperationType"> <xs:restriction base="xs:string"/> </xs:simpleType> <xs:simpleType name="EntityType"> <xs:restriction base="xs:string"> <xs:length value="5"/> </xs:restriction> </xs:simpleType> <xs:simpleType name="ReferenceType"> <xs:restriction base="xs:string"> <xs:length value="9"/> </xs:restriction> </xs:simpleType> <xs:complexType name="NetworkType"> <xs:attribute name="alias" type="NetworkAliasType" use="required"/> <xs:attribute name="name" type="NetworkNameType" use="required"/> </xs:complexType> <xs:simpleType name="CompanyType"> <xs:restriction base="xs:byte"/> </xs:simpleType> <xs:simpleType name="CisType"> <xs:restriction base="xs:int"> <xs:minInclusive value="0"/> </xs:restriction> </xs:simpleType> <xs:simpleType name="ConfirmationCodeType"> <xs:restriction base="xs:int"> <xs:totalDigits value="7"/> <xs:minInclusive value="0"/> </xs:restriction> </xs:simpleType> </xs:schema>
