cxf-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Suneet Shah <suneetshah2...@gmail.com>
Subject Re: Problem Creating JAXWS Client
Date Sun, 08 Nov 2009 01:17:50 GMT
Thanks Benson.


Benson Margulies wrote:
> Attachments don't work on this list. Open a JIRA if you need to give us one.
>
>
> On Sat, Nov 7, 2009 at 8:14 PM, Suneet Shah <suneetshah2000@gmail.com>wrote:
>
>   
>> Hello:
>>
>>     
>>> I am trying to create a client to consume a service that I built using
>>> CXF. However, I am running into the exception below where it can't find the
>>> Port. I have attached my wsdl.
>>>
>>> I have tried two different ways to build the client. One is based on the
>>> code that I saw from wsdl2java and the other using jaxwsfactor.y.
>>>
>>> If I leave out the wsdl location, I get serialization errors.
>>>
>>> Thanks for your help
>>> Suneet
>>>
>>>                    Service service =
>>> Service.create(QName.valueOf(connector.getServiceUrl()));
>>>                    ConnectorService port = service.getPort(new QName("
>>> http://localhost:8080/idm-connector-ws", "ExampleConnectorServicePort"),
>>> ConnectorService.class);
>>>
>>>
>>>                                              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);
>>>
>>> alternative JAXWS Code:
>>>
>>>                               JaxWsProxyFactoryBean factory = new
>>> JaxWsProxyFactoryBean();
>>>                               factory.getInInterceptors().add(new
>>> LoggingInInterceptor());
>>>                               factory.getOutInterceptors().add(new
>>> LoggingOutInterceptor());
>>>
>>> factory.setServiceClass(ConnectorService.class);
>>>                                                                log.info("Service
>>> endpoint : " + connector.getServiceUrl() );
>>>
>>>  factory.setAddress(connector.getServiceUrl());
>>>                                                      factory.setWsdlURL("
>>> http://localhost:8080/idm-connector-ws/ExampleConnectorService?wsdl");
>>>                                ConnectorService port = (ConnectorService)
>>> factory.create();
>>>
>>>
>>> Exception:
>>>
>>> WARNING: Application has thrown exception, unwinding now
>>> org.apache.cxf.interceptor.Fault: Port {
>>> http://localhost:8080/idm-connector-ws}ExampleConnectorServicePort<http://localhost:8080/idm-connector-ws%7DExampleConnectorServicePort>not
found.
>>>       at
>>> org.apache.cxf.service.invoker.AbstractInvoker.createFault(AbstractInvoker.java:148)
>>>
>>>       at
>>> org.apache.cxf.jaxws.AbstractJAXWSMethodInvoker.createFault(AbstractJAXWSMethodInvoker.java:83)
>>>
>>>       at
>>> org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:114)
>>>
>>>       at
>>> org.apache.cxf.jaxws.JAXWSMethodInvoker.invoke(JAXWSMethodInvoker.java:55)
>>>       at
>>> org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker
>>> .java:68)
>>>
>>> Caused by:
>>>
>>> Caused by: javax.xml.ws.WebServiceException: Port {
>>> http://localhost:8080/idm-connector-ws}ExampleConnectorServicePort<http://localhost:8080/idm-connector-ws%7DExampleConnectorServicePort>not
found.
>>>       at org.apache.cxf.jaxws.ServiceImpl.getPort(ServiceImpl.java:311)
>>>       at org.apache.cxf.jaxws.ServiceImpl.getPort(ServiceImpl.java:302)
>>>       at javax.xml.ws.Service.getPort(Service.java:92)
>>>       at
>>> org.openiam.provision.service.ProvisionServiceImpl.addUser(ProvisionServiceImpl.java:224)
>>>
>>>       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>>       at
>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>>
>>>
>>>  WSDL:
>>>       
>> <?xml version="1.0" encoding="UTF-8" ?>
>> - <#> <wsdl:definitions xmlns:ns1="*
>> http://cxf.apache.org/bindings/xformat*" xmlns:soap="*
>> http://schemas.xmlsoap.org/wsdl/soap/*" xmlns:tns="*
>> http://www.openiam.org/service/connector*" xmlns:wsdl="*
>> http://schemas.xmlsoap.org/wsdl/*" xmlns:xsd="*
>> http://www.w3.org/2001/XMLSchema*" name="*ExampleConnectorService*"
>> targetNamespace="*http://www.openiam.org/service/connector*">
>> - <#> <wsdl:types>
>> - <#> <xs:schema attributeFormDefault="*unqualified*"
>> elementFormDefault="*qualified*" targetNamespace="*
>> http://www.openiam.org/service/connector*" xmlns:tns="*
>> http://www.openiam.org/service/connector*" xmlns:xs="*
>> http://www.w3.org/2001/XMLSchema*">
>>  <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 name="*parameters*" element="*tns:resetPasswordResponse*" />
>>  </wsdl:message>
>> - <#> <wsdl:message name="*modifyResponse*">
>>  <wsdl:part name="*parameters*" element="*tns:modifyResponse*" />
>>  </wsdl:message>
>> - <#> <wsdl:message name="*delete*">
>>  <wsdl:part name="*parameters*" element="*tns:delete*" />
>>  </wsdl:message>
>> - <#> <wsdl:message name="*setPassword*">
>>  <wsdl:part name="*parameters*" element="*tns:setPassword*" />
>>  </wsdl:message>
>> - <#> <wsdl:message name="*deleteResponse*">
>>  <wsdl:part name="*parameters*" element="*tns:deleteResponse*" />
>>  </wsdl:message>
>> - <#> <wsdl:message name="*setPasswordResponse*">
>>  <wsdl:part name="*parameters*" element="*tns:setPasswordResponse*" />
>>  </wsdl:message>
>> - <#> <wsdl:message name="*validatePasswordResponse*">
>>  <wsdl:part name="*parameters*" element="*tns:validatePasswordResponse*" />
>>  </wsdl:message>
>> - <#> <wsdl:message name="*lookupResponse*">
>>  <wsdl:part name="*parameters*" element="*tns:lookupResponse*" />
>>  </wsdl:message>
>> - <#> <wsdl:message name="*testConnection*">
>>  <wsdl:part name="*parameters*" element="*tns:testConnection*" />
>>  </wsdl:message>
>> - <#> <wsdl:message name="*modify*">
>>  <wsdl:part name="*parameters*" element="*tns:modify*" />
>>  </wsdl:message>
>> - <#> <wsdl:message name="*testConnectionResponse*">
>>  <wsdl:part name="*parameters*" element="*tns:testConnectionResponse*" />
>>  </wsdl:message>
>> - <#> <wsdl:message name="*add*">
>>  <wsdl:part name="*parameters*" element="*tns:add*" />
>>  </wsdl:message>
>> - <#> <wsdl:message name="*expirePasswordResponse*">
>>  <wsdl:part name="*parameters*" element="*tns:expirePasswordResponse*" />
>>  </wsdl:message>
>> - <#> <wsdl:message name="*lookup*">
>>  <wsdl:part name="*parameters*" element="*tns:lookup*" />
>>  </wsdl:message>
>> - <#> <wsdl:message name="*addResponse*">
>>  <wsdl:part name="*parameters*" element="*tns:addResponse*" />
>>  </wsdl:message>
>> - <#> <wsdl:message name="*expirePassword*">
>>  <wsdl:part name="*parameters*" element="*tns:expirePassword*" />
>>  </wsdl:message>
>> - <#> <wsdl:message name="*validatePassword*">
>>  <wsdl:part name="*parameters*" element="*tns:validatePassword*" />
>>  </wsdl:message>
>> - <#> <wsdl:message name="*resetPassword*">
>>  <wsdl:part name="*parameters*" element="*tns:resetPassword*" />
>>  </wsdl:message>
>> - <#> <wsdl:portType name="*ConnectorService*">
>> - <#> <wsdl:operation name="*add*">
>>  <wsdl:input name="*add*" message="*tns:add*" />
>>  <wsdl:output name="*addResponse*" message="*tns:addResponse*" />
>>  </wsdl:operation>
>> - <#> <wsdl:operation name="*testConnection*">
>>  <wsdl:input name="*testConnection*" message="*tns:testConnection*" />
>>  <wsdl:output name="*testConnectionResponse*"
>> message="*tns:testConnectionResponse*" />
>>  </wsdl:operation>
>> - <#> <wsdl:operation name="*expirePassword*">
>>  <wsdl:input name="*expirePassword*" message="*tns:expirePassword*" />
>>  <wsdl:output name="*expirePasswordResponse*"
>> message="*tns:expirePasswordResponse*" />
>>  </wsdl:operation>
>> - <#> <wsdl:operation name="*lookup*">
>>  <wsdl:input name="*lookup*" message="*tns:lookup*" />
>>  <wsdl:output name="*lookupResponse*" message="*tns:lookupResponse*" />
>>  </wsdl:operation>
>> - <#> <wsdl:operation name="*delete*">
>>  <wsdl:input name="*delete*" message="*tns:delete*" />
>>  <wsdl:output name="*deleteResponse*" message="*tns:deleteResponse*" />
>>  </wsdl:operation>
>> - <#> <wsdl:operation name="*validatePassword*">
>>  <wsdl:input name="*validatePassword*" message="*tns:validatePassword*" />
>>  <wsdl:output name="*validatePasswordResponse*"
>> message="*tns:validatePasswordResponse*" />
>>  </wsdl:operation>
>> - <#> <wsdl:operation name="*modify*">
>>  <wsdl:input name="*modify*" message="*tns:modify*" />
>>  <wsdl:output name="*modifyResponse*" message="*tns:modifyResponse*" />
>>  </wsdl:operation>
>> - <#> <wsdl:operation name="*setPassword*">
>>  <wsdl:input name="*setPassword*" message="*tns:setPassword*" />
>>  <wsdl:output name="*setPasswordResponse*"
>> message="*tns:setPasswordResponse*" />
>>  </wsdl:operation>
>> - <#> <wsdl:operation name="*resetPassword*">
>>  <wsdl:input name="*resetPassword*" message="*tns:resetPassword*" />
>>  <wsdl:output name="*resetPasswordResponse*"
>> message="*tns:resetPasswordResponse*" />
>>  </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 name="*ExampleConnectorServicePort*"
>> binding="*tns:ExampleConnectorServiceSoapBinding*">
>>  <soap:address location="*
>> http://localhost:8080/idm-connector-ws/ExampleConnectorService*" />
>>  </wsdl:port>
>>  </wsdl:service>
>>  </wsdl:definitions>
>>
>>
>>     
>
>   

Mime
View raw message