Benson,

Thanks. That worked. I modified it to include the following:

Service service = Service.create(QName.valueOf("http://localhost:8080/idm-connector-ws/ExampleConnectorService";));

service.addPort(new QName("http://www.openiam.org/service/connector","ExampleConnectorServicePort";),
                                       SOAPBinding.SOAP11HTTP_BINDING,
"http://localhost:8080/idm-connector-ws/ExampleConnectorService";); ConnectorService port = service.getPort(new QName("http://www.openiam.org/service/connector","ExampleConnectorServicePort";),
                                        ConnectorService.class);



Benson Margulies wrote:
The QName in here has to use the same namespace URI as those below in your
service.

Service service = Service.create(QName.valueOf(
connector.getServiceUrl()));
                   ConnectorService port = service.getPort(new QName("
http://localhost:8080/idm-connector-ws";, "ExampleConnectorServicePort"),
ConnectorService.class);





On Sun, Nov 8, 2009 at 12:57 PM, Suneet Shah <[email protected]>wrote:

Hi Benson:

In my interface, I have the following annotation:

@WebService(targetNamespace = "http://www.openiam.org/service/connector";)

In my service implementation, I have the following :

@WebService(endpointInterface="org.openiam.spml2.interf.ConnectorService",
      targetNamespace="http://www.openiam.org/service/connector";,
      portName = "ExampleConnectorServicePort",
      serviceName="ExampleConnectorService")

I am a bit lost at this point. How should I have this setup?  The services
are running on my local tomcat.

Thanks for your help

Regards
Suneet


Benson Margulies wrote:

The port is defined as {http://www.openiam.org/service/connector}
ExampleConnectorServicePort<
http://localhost:8080/idm-connector-ws%7DExampleConnectorServicePort>but

you are somehow trying to use a QName with a URL on localhost to
reference it.

On Sat, Nov 7, 2009 at 8:17 PM, Suneet Shah <[email protected]
wrote:

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 <[email protected]


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>
<http://localhost:8080/idm-connector-ws%7DExampleConnectorServicePort
<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>
<http://localhost:8080/idm-connector-ws%7DExampleConnectorServicePort
<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>








Reply via email to