On Mon November 9 2009 1:47:00 am Suneet Shah wrote:
> Hello:
> 
> I am getting an unmarshalling error when I am calling my service.
> However, the error only occurs when I turn on schema validation. It does
> not occur when schema validation has been turned off. I have pasted my
> client code, exception and wsdl below.

You don't say if the validation error is on the client side or server side.  
I'll assume server side.

> Any suggestions on what could be wrong, would be greatly appreciated.

Make sure  you have ASM on the classpath on the server side, preferably on 
both sides.    

Judging from the soap message, I'm going to assume this is a "java first" case 
and the client is not using types and interfaces that are generated from the 
wsdl2java tool run on the wsdl.   Correct?    I assume the server side is the 
same way?    If so, DEFINITELY stick ASM there.    

Dan




> 
> Regards
> Suneet
> 
> 
> 
> Client Code:
> 
> Service service =
> Service.create(QName.valueOf("http://localhost:8080/idm-connector-ws/Exampl
> eConnectorService"));
> 
> service.addPort(new
> QName("http://www.openiam.org/service/connector","ExampleConnectorServicePo
> rt"), SOAPBinding.SOAP11HTTP_BINDING,
> "http://localhost:8080/idm-connector-ws/ExampleConnectorService";);
> 
> ConnectorService port = service.getPort(new
> QName("http://www.openiam.org/service/connector","ExampleConnectorServicePo
> rt"),
> 
> ConnectorService.class);
> 
> 
> log.info("connector service client " + port);
> 
> AddRequestType addReqType = new AddRequestType();
> PSOIdentifierType idType = new
> PSOIdentifierType(lg.getId().getLogin(),null, "target");
> addReqType.setPsoID(idType);
> addReqType.setRequestID("R4589");
> addReqType.setTargetID(lg.getId().getManagedSysId());
> 
> ExtensibleUser extUser = new ExtensibleUser();
> extUser.setName(user.getFirstName() + " " + user.getLastName());
> extUser.getAttributes().add(new
> ExtensibleAttribute("cn",user.getFirstName() + " " + user.getLastName()));
> 
> addReqType.getData().getAny().add(extUser);
> 
> port.add(addReqType);
> 
> Exception:
> 
> DefaultValidationEventHandler: [FATAL_ERROR]: cvc-elt.1: Cannot find the
> declaration of element 'reqType'. Location: line 4
> Nov 9, 2009 1:38:40 AM org.apache.cxf.phase.PhaseInterceptorChain
> doIntercept
> WARNING: Interceptor has thrown exception, unwinding now
> org.apache.cxf.interceptor.Fault: Unmarshalling Error: cvc-elt.1: Cannot
> find the declaration of element 'reqType'.
> at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall(JAXBEncoderDecoder.
> java:661)
> at
> org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall(JAXBEncoderDecoder.java:5
> 33) at org.apache.cxf.jaxb.io.DataReaderImpl.read(DataReaderImpl.java:128)
>  at
> org.apache.cxf.interceptor.DocLiteralInInterceptor.getPara(DocLiteralInInte
> rceptor.java:238) at
> org.apache.cxf.interceptor.DocLiteralInInterceptor.handleMessage(DocLiteral
> InInterceptor.java:117) at
> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChai
> n.java:236) at
> org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationO
> bserver.java:104)
> 
> Generated Request:
> 
> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/";>
> <soap:Body>
> <ns1:add xmlns:ns1="http://www.openiam.org/service/connector";>
> <reqType targetID="102" requestID="R4589"
> xmlns="http://www.openiam.org/service/connector";>
> <psoID targetID="target" ID="test01.user04a"/>
> <data>
> <extensibleUser>
> <name>Test User03</name>
> <operation>0</operation>
> <attributes>
> <name>cn</name>
> <value>Test User03</value>
> <operation>1</operation>
> </attributes>
> </extensibleUser>
> </data>
> </reqType>
> </ns1:add>
> </soap:Body>
> </soap:Envelope>
> 
> WSDL:
> 
> 
> <wsdl:definitions name="ExampleConnectorService"
> targetNamespace="http://www.openiam.org/service/connector";>
> −
> <wsdl:types>
> −
> <xs:schema attributeFormDefault="unqualified"
> elementFormDefault="qualified"
> targetNamespace="http://www.openiam.org/service/connector";>
> <xs:element name="addRequest" type="tns:AddRequestType"/>
> <xs:element name="addResponse" type="tns:AddResponseType"/>
> <xs:element name="deleteRequest" type="tns:DeleteRequestType"/>
> <xs:element name="deleteResponse" type="tns:ResponseType"/>
> <xs:element name="expirePasswordRequest"
> type="tns:ExpirePasswordRequestType"/>
> <xs:element name="expirePasswordResponse" type="tns:ResponseType"/>
> <xs:element name="extensibleUser" type="tns:ExtensibleUser"/>
> <xs:element name="listTargetsRequest" type="tns:ListTargetsRequestType"/>
> <xs:element name="listTargetsResponse" type="tns:ListTargetsResponseType"/>
> <xs:element name="lookupRequest" type="tns:LookupRequestType"/>
> <xs:element name="lookupResponse" type="tns:LookupResponseType"/>
> <xs:element name="modifyRequest" type="tns:ModifyRequestType"/>
> <xs:element name="modifyResponse" type="tns:ModifyResponseType"/>
> <xs:element name="resetPasswordRequest"
> type="tns:ResetPasswordRequestType"/>
> <xs:element name="resetPasswordResponse"
> type="tns:ResetPasswordResponseType"/>
> <xs:element name="select" type="tns:SelectionType"/>
> <xs:element name="setPasswordRequest" type="tns:SetPasswordRequestType"/>
> <xs:element name="setPasswordResponse" type="tns:ResponseType"/>
> <xs:element name="validatePasswordRequest"
> type="tns:ValidatePasswordRequestType"/>
> <xs:element name="validatePasswordResponse"
> type="tns:ValidatePasswordResponseType"/>
> −
> <xs:complexType name="ExtensibleType">
> −
> <xs:sequence>
> <xs:any maxOccurs="unbounded" minOccurs="0" namespace="##other"
> processContents="lax"/>
> </xs:sequence>
> <xs:anyAttribute namespace="##other" processContents="skip"/>
> </xs:complexType>
> −
> <xs:complexType name="SelectionType">
> −
> <xs:complexContent>
> −
> <xs:extension base="tns:QueryClauseType">
> −
> <xs:sequence>
> <xs:element maxOccurs="unbounded" minOccurs="0"
> name="namespacePrefixMap" nillable="true"
> type="tns:NamespacePrefixMappingType"/>
> </xs:sequence>
> <xs:attribute name="path" type="xs:string" use="required"/>
> <xs:attribute name="namespaceURI" type="xs:string" use="required"/>
> <xs:anyAttribute namespace="##other" processContents="skip"/>
> </xs:extension>
> </xs:complexContent>
> </xs:complexType>
> −
> <xs:complexType name="QueryClauseType">
> −
> <xs:complexContent>
> −
> <xs:extension base="tns:ExtensibleType">
> <xs:sequence/>
> <xs:anyAttribute namespace="##other" processContents="skip"/>
> </xs:extension>
> </xs:complexContent>
> </xs:complexType>
> −
> <xs:complexType name="NamespacePrefixMappingType">
> −
> <xs:complexContent>
> −
> <xs:extension base="tns:ExtensibleType">
> <xs:sequence/>
> <xs:attribute name="prefix" type="xs:string" use="required"/>
> <xs:attribute name="namespace" type="xs:string" use="required"/>
> <xs:anyAttribute namespace="##other" processContents="skip"/>
> </xs:extension>
> </xs:complexContent>
> </xs:complexType>
> −
> <xs:complexType name="AddRequestType">
> −
> <xs:complexContent>
> −
> <xs:extension base="tns:RequestType">
> −
> <xs:sequence>
> <xs:element minOccurs="0" name="psoID" type="tns:PSOIdentifierType"/>
> <xs:element minOccurs="0" name="containerID" type="tns:PSOIdentifierType"/>
> <xs:element name="data" type="tns:ExtensibleType"/>
> <xs:element maxOccurs="unbounded" minOccurs="0" name="capabilityData"
> nillable="true" type="tns:CapabilityDataType"/>
> </xs:sequence>
> <xs:attribute name="targetID" type="xs:string"/>
> <xs:attribute name="returnData" type="tns:ReturnDataType"/>
> <xs:anyAttribute namespace="##other" processContents="skip"/>
> </xs:extension>
> </xs:complexContent>
> </xs:complexType>
> −
> <xs:complexType name="RequestType">
> −
> <xs:complexContent>
> −
> <xs:extension base="tns:ExtensibleType">
> <xs:sequence/>
> <xs:attribute name="requestID" type="xs:ID"/>
> <xs:attribute name="executionMode" type="tns:ExecutionModeType"/>
> <xs:anyAttribute namespace="##other" processContents="skip"/>
> </xs:extension>
> </xs:complexContent>
> </xs:complexType>
> −
> <xs:complexType name="PSOIdentifierType">
> −
> <xs:complexContent>
> −
> <xs:extension base="tns:IdentifierType">
> −
> <xs:sequence>
> <xs:element minOccurs="0" name="containerID" type="tns:PSOIdentifierType"/>
> </xs:sequence>
> <xs:attribute name="targetID" type="xs:string"/>
> <xs:anyAttribute namespace="##other" processContents="skip"/>
> </xs:extension>
> </xs:complexContent>
> </xs:complexType>
> −
> <xs:complexType name="IdentifierType">
> −
> <xs:complexContent>
> −
> <xs:extension base="tns:ExtensibleType">
> <xs:sequence/>
> <xs:attribute name="ID" type="xs:string"/>
> <xs:anyAttribute namespace="##other" processContents="skip"/>
> </xs:extension>
> </xs:complexContent>
> </xs:complexType>
> −
> <xs:complexType name="CapabilityDataType">
> −
> <xs:complexContent>
> −
> <xs:extension base="tns:ExtensibleType">
> <xs:sequence/>
> <xs:attribute name="mustUnderstand" type="xs:boolean"/>
> <xs:attribute name="capabilityURI" type="xs:anyURI"/>
> <xs:anyAttribute namespace="##other" processContents="skip"/>
> </xs:extension>
> </xs:complexContent>
> </xs:complexType>
> −
> <xs:complexType name="LookupRequestType">
> −
> <xs:complexContent>
> −
> <xs:extension base="tns:RequestType">
> −
> <xs:sequence>
> <xs:element name="psoID" type="tns:PSOIdentifierType"/>
> </xs:sequence>
> <xs:attribute name="returnData" type="tns:ReturnDataType"/>
> <xs:anyAttribute namespace="##other" processContents="skip"/>
> </xs:extension>
> </xs:complexContent>
> </xs:complexType>
> −
> <xs:complexType name="ListTargetsRequestType">
> −
> <xs:complexContent>
> −
> <xs:extension base="tns:RequestType">
> <xs:sequence/>
> <xs:attribute name="profile" type="xs:anyURI"/>
> <xs:anyAttribute namespace="##other" processContents="skip"/>
> </xs:extension>
> </xs:complexContent>
> </xs:complexType>
> −
> <xs:complexType name="DeleteRequestType">
> −
> <xs:complexContent>
> −
> <xs:extension base="tns:RequestType">
> −
> <xs:sequence>
> <xs:element name="psoID" type="tns:PSOIdentifierType"/>
> </xs:sequence>
> <xs:attribute name="recursive" type="xs:boolean"/>
> <xs:anyAttribute namespace="##other" processContents="skip"/>
> </xs:extension>
> </xs:complexContent>
> </xs:complexType>
> −
> <xs:complexType name="ModifyRequestType">
> −
> <xs:complexContent>
> −
> <xs:extension base="tns:RequestType">
> −
> <xs:sequence>
> <xs:element name="psoID" type="tns:PSOIdentifierType"/>
> <xs:element maxOccurs="unbounded" name="modification"
> type="tns:ModificationType"/>
> </xs:sequence>
> <xs:attribute name="returnData" type="tns:ReturnDataType"/>
> <xs:anyAttribute namespace="##other" processContents="skip"/>
> </xs:extension>
> </xs:complexContent>
> </xs:complexType>
> −
> <xs:complexType name="ModificationType">
> −
> <xs:complexContent>
> −
> <xs:extension base="tns:ExtensibleType">
> −
> <xs:sequence>
> <xs:element minOccurs="0" name="component" type="tns:SelectionType"/>
> <xs:element minOccurs="0" name="data" type="tns:ExtensibleType"/>
> <xs:element maxOccurs="unbounded" minOccurs="0" name="capabilityData"
> nillable="true" type="tns:CapabilityDataType"/>
> </xs:sequence>
> <xs:attribute name="modificationMode" type="tns:ModificationModeType"/>
> <xs:anyAttribute namespace="##other" processContents="skip"/>
> </xs:extension>
> </xs:complexContent>
> </xs:complexType>
> −
> <xs:complexType name="CapabilityType">
> −
> <xs:complexContent>
> −
> <xs:extension base="tns:ExtensibleType">
> −
> <xs:sequence>
> <xs:element maxOccurs="unbounded" minOccurs="0" name="appliesTo"
> nillable="true" type="tns:SchemaEntityRefType"/>
> </xs:sequence>
> <xs:attribute name="namespaceURI" type="xs:anyURI"/>
> <xs:attribute name="location" type="xs:anyURI"/>
> <xs:anyAttribute namespace="##other" processContents="skip"/>
> </xs:extension>
> </xs:complexContent>
> </xs:complexType>
> −
> <xs:complexType name="SchemaEntityRefType">
> −
> <xs:complexContent>
> −
> <xs:extension base="tns:ExtensibleType">
> <xs:sequence/>
> <xs:attribute name="targetID" type="xs:string"/>
> <xs:attribute name="entityName" type="xs:string"/>
> <xs:attribute name="isContainer" type="xs:boolean"/>
> <xs:anyAttribute namespace="##other" processContents="skip"/>
> </xs:extension>
> </xs:complexContent>
> </xs:complexType>
> −
> <xs:complexType name="ModifyResponseType">
> −
> <xs:complexContent>
> −
> <xs:extension base="tns:ResponseType">
> −
> <xs:sequence>
> <xs:element minOccurs="0" name="pso" type="tns:PSOType"/>
> </xs:sequence>
> <xs:anyAttribute namespace="##other" processContents="skip"/>
> </xs:extension>
> </xs:complexContent>
> </xs:complexType>
> −
> <xs:complexType name="ResponseType">
> −
> <xs:complexContent>
> −
> <xs:extension base="tns:ExtensibleType">
> −
> <xs:sequence>
> <xs:element maxOccurs="unbounded" minOccurs="0" name="errorMessage"
> nillable="true" type="xs:string"/>
> </xs:sequence>
> <xs:attribute name="status" type="tns:StatusCodeType" use="required"/>
> <xs:attribute name="requestID" type="xs:ID"/>
> <xs:attribute name="error" type="tns:ErrorCode"/>
> <xs:anyAttribute namespace="##other" processContents="skip"/>
> </xs:extension>
> </xs:complexContent>
> </xs:complexType>
> −
> <xs:complexType name="PSOType">
> −
> <xs:complexContent>
> −
> <xs:extension base="tns:ExtensibleType">
> −
> <xs:sequence>
> <xs:element name="psoID" type="tns:PSOIdentifierType"/>
> <xs:element minOccurs="0" name="data" type="tns:ExtensibleType"/>
> <xs:element maxOccurs="unbounded" minOccurs="0" name="capabilityData"
> nillable="true" type="tns:CapabilityDataType"/>
> </xs:sequence>
> <xs:anyAttribute namespace="##other" processContents="skip"/>
> </xs:extension>
> </xs:complexContent>
> </xs:complexType>
> −
> <xs:complexType name="AddResponseType">
> −
> <xs:complexContent>
> −
> <xs:extension base="tns:ResponseType">
> −
> <xs:sequence>
> <xs:element minOccurs="0" name="pso" type="tns:PSOType"/>
> </xs:sequence>
> <xs:anyAttribute namespace="##other" processContents="skip"/>
> </xs:extension>
> </xs:complexContent>
> </xs:complexType>
> −
> <xs:complexType name="ListTargetsResponseType">
> −
> <xs:complexContent>
> −
> <xs:extension base="tns:ResponseType">
> −
> <xs:sequence>
> <xs:element maxOccurs="unbounded" minOccurs="0" name="target"
> nillable="true" type="tns:TargetType"/>
> </xs:sequence>
> <xs:anyAttribute namespace="##other" processContents="skip"/>
> </xs:extension>
> </xs:complexContent>
> </xs:complexType>
> −
> <xs:complexType name="TargetType">
> −
> <xs:complexContent>
> −
> <xs:extension base="tns:ExtensibleType">
> −
> <xs:sequence>
> <xs:element maxOccurs="unbounded" name="schema" type="tns:SchemaType"/>
> <xs:element minOccurs="0" name="capabilities"
> type="tns:CapabilitiesListType"/>
> </xs:sequence>
> <xs:attribute name="targetID" type="xs:string"/>
> <xs:attribute name="profile" type="xs:anyURI"/>
> <xs:anyAttribute namespace="##other" processContents="skip"/>
> </xs:extension>
> </xs:complexContent>
> </xs:complexType>
> −
> <xs:complexType name="SchemaType">
> −
> <xs:complexContent>
> −
> <xs:extension base="tns:ExtensibleType">
> −
> <xs:sequence>
> <xs:element maxOccurs="unbounded" minOccurs="0"
> name="supportedSchemaEntity" nillable="true"
> type="tns:SchemaEntityRefType"/>
> </xs:sequence>
> <xs:attribute name="ref" type="xs:anyURI"/>
> <xs:anyAttribute namespace="##other" processContents="skip"/>
> </xs:extension>
> </xs:complexContent>
> </xs:complexType>
> −
> <xs:complexType name="CapabilitiesListType">
> −
> <xs:complexContent>
> −
> <xs:extension base="tns:ExtensibleType">
> −
> <xs:sequence>
> <xs:element maxOccurs="unbounded" minOccurs="0" name="capability"
> nillable="true" type="tns:CapabilityType"/>
> </xs:sequence>
> <xs:anyAttribute namespace="##other" processContents="skip"/>
> </xs:extension>
> </xs:complexContent>
> </xs:complexType>
> −
> <xs:complexType name="LookupResponseType">
> −
> <xs:complexContent>
> −
> <xs:extension base="tns:ResponseType">
> −
> <xs:sequence>
> <xs:element minOccurs="0" name="pso" type="tns:PSOType"/>
> </xs:sequence>
> <xs:anyAttribute namespace="##other" processContents="skip"/>
> </xs:extension>
> </xs:complexContent>
> </xs:complexType>
> −
> <xs:complexType name="ExtensibleUser">
> −
> <xs:complexContent>
> −
> <xs:extension base="tns:ExtensibleObject">
> −
> <xs:sequence>
> <xs:element maxOccurs="unbounded" minOccurs="0" name="address"
> nillable="true" type="tns:ExtensibleObject"/>
> <xs:element maxOccurs="unbounded" minOccurs="0" name="phone"
> nillable="true" type="tns:ExtensibleObject"/>
> <xs:element maxOccurs="unbounded" minOccurs="0" name="email"
> nillable="true" type="tns:ExtensibleObject"/>
> <xs:element maxOccurs="unbounded" minOccurs="0" name="group"
> nillable="true" type="tns:ExtensibleGroup"/>
> <xs:element maxOccurs="unbounded" minOccurs="0" name="role"
> nillable="true" type="tns:ExtensibleRole"/>
> </xs:sequence>
> </xs:extension>
> </xs:complexContent>
> </xs:complexType>
> −
> <xs:complexType name="ExtensibleObject">
> −
> <xs:sequence>
> <xs:element minOccurs="0" name="objectId" type="xs:string"/>
> <xs:element minOccurs="0" name="name" type="xs:string"/>
> <xs:element name="operation" type="xs:int"/>
> <xs:element maxOccurs="unbounded" minOccurs="0" name="attributes"
> nillable="true" type="tns:ExtensibleAttribute"/>
> </xs:sequence>
> </xs:complexType>
> −
> <xs:complexType name="ExtensibleAttribute">
> −
> <xs:sequence>
> <xs:element minOccurs="0" name="name" type="xs:string"/>
> <xs:element minOccurs="0" name="value" type="xs:string"/>
> <xs:element name="operation" type="xs:int"/>
> </xs:sequence>
> </xs:complexType>
> −
> <xs:complexType name="ExtensibleGroup">
> −
> <xs:complexContent>
> −
> <xs:extension base="tns:ExtensibleObject">
> <xs:sequence/>
> </xs:extension>
> </xs:complexContent>
> </xs:complexType>
> −
> <xs:complexType name="ExtensibleRole">
> −
> <xs:complexContent>
> −
> <xs:extension base="tns:ExtensibleObject">
> <xs:sequence/>
> </xs:extension>
> </xs:complexContent>
> </xs:complexType>
> −
> <xs:complexType name="ExpirePasswordRequestType">
> −
> <xs:complexContent>
> −
> <xs:extension base="tns:RequestType">
> −
> <xs:sequence>
> <xs:element name="psoID" type="tns:PSOIdentifierType"/>
> </xs:sequence>
> <xs:attribute name="remainingLogins" type="xs:int"/>
> <xs:anyAttribute namespace="##other" processContents="skip"/>
> </xs:extension>
> </xs:complexContent>
> </xs:complexType>
> −
> <xs:complexType name="ValidatePasswordRequestType">
> −
> <xs:complexContent>
> −
> <xs:extension base="tns:RequestType">
> −
> <xs:sequence>
> <xs:element name="psoID" type="tns:PSOIdentifierType"/>
> <xs:element name="password" type="xs:string"/>
> </xs:sequence>
> <xs:anyAttribute namespace="##other" processContents="skip"/>
> </xs:extension>
> </xs:complexContent>
> </xs:complexType>
> −
> <xs:complexType name="ValidatePasswordResponseType">
> −
> <xs:complexContent>
> −
> <xs:extension base="tns:ResponseType">
> <xs:sequence/>
> <xs:attribute name="valid" type="xs:boolean"/>
> <xs:anyAttribute namespace="##other" processContents="skip"/>
> </xs:extension>
> </xs:complexContent>
> </xs:complexType>
> −
> <xs:complexType name="SetPasswordRequestType">
> −
> <xs:complexContent>
> −
> <xs:extension base="tns:RequestType">
> −
> <xs:sequence>
> <xs:element name="psoID" type="tns:PSOIdentifierType"/>
> <xs:element name="password" type="xs:string"/>
> <xs:element minOccurs="0" name="currentPassword" type="xs:string"/>
> </xs:sequence>
> <xs:anyAttribute namespace="##other" processContents="skip"/>
> </xs:extension>
> </xs:complexContent>
> </xs:complexType>
> −
> <xs:complexType name="ResetPasswordRequestType">
> −
> <xs:complexContent>
> −
> <xs:extension base="tns:RequestType">
> −
> <xs:sequence>
> <xs:element name="psoID" type="tns:PSOIdentifierType"/>
> </xs:sequence>
> <xs:anyAttribute namespace="##other" processContents="skip"/>
> </xs:extension>
> </xs:complexContent>
> </xs:complexType>
> −
> <xs:complexType name="ResetPasswordResponseType">
> −
> <xs:complexContent>
> −
> <xs:extension base="tns:ResponseType">
> −
> <xs:sequence>
> <xs:element minOccurs="0" name="password" type="xs:string"/>
> </xs:sequence>
> <xs:anyAttribute namespace="##other" processContents="skip"/>
> </xs:extension>
> </xs:complexContent>
> </xs:complexType>
> −
> <xs:simpleType name="ReturnDataType">
> −
> <xs:restriction base="xs:string">
> <xs:enumeration value="identifier"/>
> <xs:enumeration value="data"/>
> <xs:enumeration value="everything"/>
> </xs:restriction>
> </xs:simpleType>
> −
> <xs:simpleType name="ExecutionModeType">
> −
> <xs:restriction base="xs:string">
> <xs:enumeration value="synchronous"/>
> <xs:enumeration value="asynchronous"/>
> </xs:restriction>
> </xs:simpleType>
> −
> <xs:simpleType name="ModificationModeType">
> −
> <xs:restriction base="xs:string">
> <xs:enumeration value="add"/>
> <xs:enumeration value="replace"/>
> <xs:enumeration value="delete"/>
> </xs:restriction>
> </xs:simpleType>
> −
> <xs:simpleType name="StatusCodeType">
> −
> <xs:restriction base="xs:string">
> <xs:enumeration value="success"/>
> <xs:enumeration value="failure"/>
> <xs:enumeration value="pending"/>
> </xs:restriction>
> </xs:simpleType>
> −
> <xs:simpleType name="ErrorCode">
> −
> <xs:restriction base="xs:string">
> <xs:enumeration value="malformedRequest"/>
> <xs:enumeration value="unsupportedOperation"/>
> <xs:enumeration value="unsupportedIdentifierType"/>
> <xs:enumeration value="noSuchIdentifier"/>
> <xs:enumeration value="customError"/>
> <xs:enumeration value="unsupportedExecutionMode"/>
> <xs:enumeration value="invalidContainment"/>
> <xs:enumeration value="noSuchRequest"/>
> <xs:enumeration value="unsupportedSelectionType"/>
> <xs:enumeration value="resultSetToLarge"/>
> <xs:enumeration value="unsupportedProfile"/>
> <xs:enumeration value="invalidIdentifier"/>
> <xs:enumeration value="alreadyExists"/>
> <xs:enumeration value="containerNotEmpty"/>
> </xs:restriction>
> </xs:simpleType>
> <xs:element name="add" type="tns:add"/>
> −
> <xs:complexType name="add">
> −
> <xs:sequence>
> <xs:element minOccurs="0" name="reqType" type="tns:AddRequestType"/>
> </xs:sequence>
> </xs:complexType>
> <xs:element name="testConnection" type="tns:testConnection"/>
> −
> <xs:complexType name="testConnection">
> −
> <xs:sequence>
> <xs:element minOccurs="0" name="targetID" type="xs:string"/>
> </xs:sequence>
> </xs:complexType>
> <xs:element name="testConnectionResponse"
> type="tns:testConnectionResponse"/>
> −
> <xs:complexType name="testConnectionResponse">
> −
> <xs:sequence>
> <xs:element name="return" type="xs:boolean"/>
> </xs:sequence>
> </xs:complexType>
> <xs:element name="expirePassword" type="tns:expirePassword"/>
> −
> <xs:complexType name="expirePassword">
> −
> <xs:sequence>
> <xs:element minOccurs="0" name="request"
> type="tns:ExpirePasswordRequestType"/>
> </xs:sequence>
> </xs:complexType>
> <xs:element name="lookup" type="tns:lookup"/>
> −
> <xs:complexType name="lookup">
> −
> <xs:sequence>
> <xs:element minOccurs="0" name="reqType" type="tns:LookupRequestType"/>
> </xs:sequence>
> </xs:complexType>
> <xs:element name="delete" type="tns:delete"/>
> −
> <xs:complexType name="delete">
> −
> <xs:sequence>
> <xs:element minOccurs="0" name="reqType" type="tns:DeleteRequestType"/>
> </xs:sequence>
> </xs:complexType>
> <xs:element name="validatePassword" type="tns:validatePassword"/>
> −
> <xs:complexType name="validatePassword">
> −
> <xs:sequence>
> <xs:element minOccurs="0" name="request"
> type="tns:ValidatePasswordRequestType"/>
> </xs:sequence>
> </xs:complexType>
> <xs:element name="modify" type="tns:modify"/>
> −
> <xs:complexType name="modify">
> −
> <xs:sequence>
> <xs:element minOccurs="0" name="reqType" type="tns:ModifyRequestType"/>
> </xs:sequence>
> </xs:complexType>
> <xs:element name="setPassword" type="tns:setPassword"/>
> −
> <xs:complexType name="setPassword">
> −
> <xs:sequence>
> <xs:element minOccurs="0" name="request"
>  type="tns:SetPasswordRequestType"/> </xs:sequence>
> </xs:complexType>
> <xs:element name="resetPassword" type="tns:resetPassword"/>
> −
> <xs:complexType name="resetPassword">
> −
> <xs:sequence>
> <xs:element minOccurs="0" name="request"
> type="tns:ResetPasswordRequestType"/>
> </xs:sequence>
> </xs:complexType>
> </xs:schema>
> </wsdl:types>
> −
> <wsdl:message name="resetPasswordResponse">
> <wsdl:part element="tns:resetPasswordResponse" name="parameters">
> </wsdl:part>
> </wsdl:message>
> −
> <wsdl:message name="modifyResponse">
> <wsdl:part element="tns:modifyResponse" name="parameters">
> </wsdl:part>
> </wsdl:message>
> −
> <wsdl:message name="delete">
> <wsdl:part element="tns:delete" name="parameters">
> </wsdl:part>
> </wsdl:message>
> −
> <wsdl:message name="setPassword">
> <wsdl:part element="tns:setPassword" name="parameters">
> </wsdl:part>
> </wsdl:message>
> −
> <wsdl:message name="deleteResponse">
> <wsdl:part element="tns:deleteResponse" name="parameters">
> </wsdl:part>
> </wsdl:message>
> −
> <wsdl:message name="setPasswordResponse">
> <wsdl:part element="tns:setPasswordResponse" name="parameters">
> </wsdl:part>
> </wsdl:message>
> −
> <wsdl:message name="validatePasswordResponse">
> <wsdl:part element="tns:validatePasswordResponse" name="parameters">
> </wsdl:part>
> </wsdl:message>
> −
> <wsdl:message name="lookupResponse">
> <wsdl:part element="tns:lookupResponse" name="parameters">
> </wsdl:part>
> </wsdl:message>
> −
> <wsdl:message name="testConnection">
> <wsdl:part element="tns:testConnection" name="parameters">
> </wsdl:part>
> </wsdl:message>
> −
> <wsdl:message name="modify">
> <wsdl:part element="tns:modify" name="parameters">
> </wsdl:part>
> </wsdl:message>
> −
> <wsdl:message name="testConnectionResponse">
> <wsdl:part element="tns:testConnectionResponse" name="parameters">
> </wsdl:part>
> </wsdl:message>
> −
> <wsdl:message name="add">
> <wsdl:part element="tns:add" name="parameters">
> </wsdl:part>
> </wsdl:message>
> −
> <wsdl:message name="expirePasswordResponse">
> <wsdl:part element="tns:expirePasswordResponse" name="parameters">
> </wsdl:part>
> </wsdl:message>
> −
> <wsdl:message name="lookup">
> <wsdl:part element="tns:lookup" name="parameters">
> </wsdl:part>
> </wsdl:message>
> −
> <wsdl:message name="addResponse">
> <wsdl:part element="tns:addResponse" name="parameters">
> </wsdl:part>
> </wsdl:message>
> −
> <wsdl:message name="expirePassword">
> <wsdl:part element="tns:expirePassword" name="parameters">
> </wsdl:part>
> </wsdl:message>
> −
> <wsdl:message name="validatePassword">
> <wsdl:part element="tns:validatePassword" name="parameters">
> </wsdl:part>
> </wsdl:message>
> −
> <wsdl:message name="resetPassword">
> <wsdl:part element="tns:resetPassword" name="parameters">
> </wsdl:part>
> </wsdl:message>
> −
> <wsdl:portType name="ConnectorService">
> −
> <wsdl:operation name="add">
> <wsdl:input message="tns:add" name="add">
> </wsdl:input>
> <wsdl:output message="tns:addResponse" name="addResponse">
> </wsdl:output>
> </wsdl:operation>
> −
> <wsdl:operation name="testConnection">
> <wsdl:input message="tns:testConnection" name="testConnection">
> </wsdl:input>
> <wsdl:output message="tns:testConnectionResponse"
> name="testConnectionResponse">
> </wsdl:output>
> </wsdl:operation>
> −
> <wsdl:operation name="expirePassword">
> <wsdl:input message="tns:expirePassword" name="expirePassword">
> </wsdl:input>
> <wsdl:output message="tns:expirePasswordResponse"
> name="expirePasswordResponse">
> </wsdl:output>
> </wsdl:operation>
> −
> <wsdl:operation name="lookup">
> <wsdl:input message="tns:lookup" name="lookup">
> </wsdl:input>
> <wsdl:output message="tns:lookupResponse" name="lookupResponse">
> </wsdl:output>
> </wsdl:operation>
> −
> <wsdl:operation name="delete">
> <wsdl:input message="tns:delete" name="delete">
> </wsdl:input>
> <wsdl:output message="tns:deleteResponse" name="deleteResponse">
> </wsdl:output>
> </wsdl:operation>
> −
> <wsdl:operation name="validatePassword">
> <wsdl:input message="tns:validatePassword" name="validatePassword">
> </wsdl:input>
> <wsdl:output message="tns:validatePasswordResponse"
> name="validatePasswordResponse">
> </wsdl:output>
> </wsdl:operation>
> −
> <wsdl:operation name="modify">
> <wsdl:input message="tns:modify" name="modify">
> </wsdl:input>
> <wsdl:output message="tns:modifyResponse" name="modifyResponse">
> </wsdl:output>
> </wsdl:operation>
> −
> <wsdl:operation name="setPassword">
> <wsdl:input message="tns:setPassword" name="setPassword">
> </wsdl:input>
> <wsdl:output message="tns:setPasswordResponse" name="setPasswordResponse">
> </wsdl:output>
> </wsdl:operation>
> −
> <wsdl:operation name="resetPassword">
> <wsdl:input message="tns:resetPassword" name="resetPassword">
> </wsdl:input>
> <wsdl:output message="tns:resetPasswordResponse"
> name="resetPasswordResponse">
> </wsdl:output>
> </wsdl:operation>
> </wsdl:portType>
> −
> <wsdl:binding name="ExampleConnectorServiceSoapBinding"
> type="tns:ConnectorService">
> <soap:binding style="document"
> transport="http://schemas.xmlsoap.org/soap/http"/>
> −
> <wsdl:operation name="add">
> <soap:operation soapAction="" style="document"/>
> −
> <wsdl:input name="add">
> <soap:body use="literal"/>
> </wsdl:input>
> −
> <wsdl:output name="addResponse">
> <soap:body use="literal"/>
> </wsdl:output>
> </wsdl:operation>
> −
> <wsdl:operation name="testConnection">
> <soap:operation soapAction="" style="document"/>
> −
> <wsdl:input name="testConnection">
> <soap:body use="literal"/>
> </wsdl:input>
> −
> <wsdl:output name="testConnectionResponse">
> <soap:body use="literal"/>
> </wsdl:output>
> </wsdl:operation>
> −
> <wsdl:operation name="expirePassword">
> <soap:operation soapAction="" style="document"/>
> −
> <wsdl:input name="expirePassword">
> <soap:body use="literal"/>
> </wsdl:input>
> −
> <wsdl:output name="expirePasswordResponse">
> <soap:body use="literal"/>
> </wsdl:output>
> </wsdl:operation>
> −
> <wsdl:operation name="lookup">
> <soap:operation soapAction="" style="document"/>
> −
> <wsdl:input name="lookup">
> <soap:body use="literal"/>
> </wsdl:input>
> −
> <wsdl:output name="lookupResponse">
> <soap:body use="literal"/>
> </wsdl:output>
> </wsdl:operation>
> −
> <wsdl:operation name="delete">
> <soap:operation soapAction="" style="document"/>
> −
> <wsdl:input name="delete">
> <soap:body use="literal"/>
> </wsdl:input>
> −
> <wsdl:output name="deleteResponse">
> <soap:body use="literal"/>
> </wsdl:output>
> </wsdl:operation>
> −
> <wsdl:operation name="validatePassword">
> <soap:operation soapAction="" style="document"/>
> −
> <wsdl:input name="validatePassword">
> <soap:body use="literal"/>
> </wsdl:input>
> −
> <wsdl:output name="validatePasswordResponse">
> <soap:body use="literal"/>
> </wsdl:output>
> </wsdl:operation>
> −
> <wsdl:operation name="modify">
> <soap:operation soapAction="" style="document"/>
> −
> <wsdl:input name="modify">
> <soap:body use="literal"/>
> </wsdl:input>
> −
> <wsdl:output name="modifyResponse">
> <soap:body use="literal"/>
> </wsdl:output>
> </wsdl:operation>
> −
> <wsdl:operation name="setPassword">
> <soap:operation soapAction="" style="document"/>
> −
> <wsdl:input name="setPassword">
> <soap:body use="literal"/>
> </wsdl:input>
> −
> <wsdl:output name="setPasswordResponse">
> <soap:body use="literal"/>
> </wsdl:output>
> </wsdl:operation>
> −
> <wsdl:operation name="resetPassword">
> <soap:operation soapAction="" style="document"/>
> −
> <wsdl:input name="resetPassword">
> <soap:body use="literal"/>
> </wsdl:input>
> −
> <wsdl:output name="resetPasswordResponse">
> <soap:body use="literal"/>
> </wsdl:output>
> </wsdl:operation>
> </wsdl:binding>
> −
> <wsdl:service name="ExampleConnectorService">
> −
> <wsdl:port binding="tns:ExampleConnectorServiceSoapBinding"
> name="ExampleConnectorServicePort">
> <soap:address
> location="http://localhost:8080/idm-connector-ws/ExampleConnectorService"/>
> </wsdl:port>
> </wsdl:service>
> </wsdl:definitions>
> 

-- 
Daniel Kulp
[email protected]
http://www.dankulp.com/blog

Reply via email to