IRISLIB database
Reader Class Reference

This class reads a WSDL and builds a web service client and associated class definitions from it. More...

Inheritance diagram for Reader:
Collaboration diagram for Reader:

Public Member Functions

_.Library.Status GeneratePolicyFromWSDL (_.Library.String wsdlURL, _.Library.String clientWebServiceClass, _.Library.String policyConfigClass)
 The <method>ProcessPolicy</method> method creates a configuration class for a web service client. More...
 
_.Library.Status Process (_.Library.String pLocationURL, _.Library.String pPackage, _.Library.Boolean pTest, _.XML.Utils.SchemaReader schemaReader)
 This method call processes the WSDL found at the specified location. More...
 
 Reset ()
 Reset this class instance for reuse.
 
- Public Member Functions inherited from RegisteredObject
_.Library.Status OnAddToSaveSet (_.Library.Integer depth, _.Library.Integer insert, _.Library.Integer callcount)
 This callback method is invoked when the current object is added to the SaveSet,. More...
 
_.Library.Status OnClose ()
 This callback method is invoked by the <METHOD>Close</METHOD> method to. More...
 
_.Library.Status OnConstructClone (_.Library.RegisteredObject object, _.Library.Boolean deep, _.Library.String cloned)
 This callback method is invoked by the <METHOD>ConstructClone</METHOD> method to. More...
 
_.Library.Status OnNew ()
 This callback method is invoked by the <METHOD>New</METHOD> method to. More...
 
_.Library.Status OnValidateObject ()
 This callback method is invoked by the <METHOD>ValidateObject</METHOD> method to. More...
 

Public Attributes

 BinaryAsStream
 If the BinaryAsStream property is true, then use Stream.GlobalBinary for base64Binary type. More...
 
 BusinessOperationPackage
 If MakeBusinessOperation is true,. More...
 
 CascadeDeletes
 Input property to control if a OnDelete method is generated for persistent classes. More...
 
 ClientPackage
 If MakeClient is true, then ClientPackage is the name of the package to contain the client classes. More...
 
 ClientURLEscapeSoapAction
 Flag to enable the URL Escape of SOAPAction header for SOAP1.1 requests. More...
 
 CompileClasses
 Input property to control compilation of created classes. More...
 
 CompileFlags
 Flags to be used for class compiles. More...
 
 ConfigPackage
 If ConfigPackage = "", then create the configuration class in the same package as. More...
 
 Debug
 Control display of debugging info. More...
 
 EntityResolver
 This property should be set to an instance of XML.SAX.EntityResolver OR a user-defined. More...
 
 GenerateXMLNIL
 Input property to control the generation of the XMLNIL property parameter. More...
 
 GenerateXMLNILNOOBJECT
 Input property to control the generation of the XMLNILNOOBJECT property parameter. More...
 
 HttpRequest
 The Net.HttpRequest instance to be used for all web requests for. More...
 
 IgnoreNull
 If the IgnoreNull property is set, the web client/service and the generated classes are created with the. More...
 
 IndexRelationship
 Input property to control nature of relationships in generated classes. More...
 
 MakeBusinessOperation
 If MakeEnsembleClasses is true, then MakeBusinessOperation and BusinessOperationPackage are ignored. More...
 
 MakeClient
 Input property to control creation of web service client classes. More...
 
 MakeEnsembleClasses
 Input property to control generation of production-related classes for the Business Operation. More...
 
 MakeMessageStyle
 The MakeMessageStyle property specifies whether the generated client uses a message format in which. More...
 
 MakeNamespace
 Input property to control generation of XML namespace information. More...
 
 MakePersistent
 Input property to control persistence of generated classes. More...
 
 MakeRelationships
 Input property to control creation of relationships in generated classes. More...
 
 MakeSerial
 Input property to control if generated classes are serial. More...
 
 MakeService
 Input property to control creation of web service classes. More...
 
 NoArrayProperties
 Input property to control use of arrays in created classes. More...
 
 NoSequence
 If the NoSequence property is true, the XMLSEQUENCE parameter is set to 0 in the generated classes. More...
 
 OperationPackage
 If MakeEnsembleClasses is true,. More...
 
 OutputTypeAttribute
 If <property>OutputTypeAttribute</property> = 1, then the Process method will add the OUTPUTTYPEATTRIBUTE. More...
 
 PackageMapping
 User supplied mapping of namespaces to package names which will override the default. More...
 
 ParentChildRelationship
 Input property to control nature of relationships in generated classes. More...
 
 RequestPackage
 If MakeEnsembleClasses is true,. More...
 
 ResponsePackage
 If MakeEnsembleClasses is true,. More...
 
 SAXFlags
 This property should be set to a combination of flags (see occSAX.inc for details) if. More...
 
 SSLCheckServerIdentity
 When making an SSL connection check the server identity in the server certificate matches the name of the system we are connecting to. More...
 
 SSLConfiguration
 The name of the activated TLS/SSL configuration to use for https requests. More...
 
 SecurityInParameter
 The SecurityInParameter property allows the SECURITYIN parameter to be added to created classes. More...
 
 ServicePackage
 If MakeService is true, then ServicePackage is the name of the package to contain the web service classes. More...
 
 SuppressNamespace
 Supplemental flag to suppress use of defined target Namespace. More...
 

Additional Inherited Members

- Static Public Attributes inherited from RegisteredObject
 CAPTION = None
 Optional name used by the Form Wizard for a class when generating forms. More...
 
 JAVATYPE = None
 The Java type to be used when exported.
 
 PROPERTYVALIDATION = None
 This parameter controls the default validation behavior for the object. More...
 

Detailed Description

This class reads a WSDL and builds a web service client and associated class definitions from it.


This class is used by the SOAP Client Wizard; it is not for direct use within applications except through the Process method. Properties which are not marked as internal may be used to control the Process method.

Member Function Documentation

◆ GeneratePolicyFromWSDL()

_.Library.Status GeneratePolicyFromWSDL ( _.Library.String  wsdlURL,
_.Library.String  clientWebServiceClass,
_.Library.String  policyConfigClass 
)

The <method>ProcessPolicy</method> method creates a configuration class for a web service client.

which contains the policy specified by the service's WSDL.
If there is no policy in the WSDL an empty configuration class is created. The configuration class will be compiled, if the CompileClasses property is true.
Note that it is the caller's responsibility to insure that the WSDL URL corresponds to the same web service as the client.
The current implementation of this method is limited to WSDLs which have only one port specified.

  • wsdlURL is URL of the WSDL which contains the policy.
  • clientWebServiceClass is the name of the web service client.
    If the client already has a configuration class, the configuration class will be deleted.
  • policyConfigClass is the name of the configuration class to be created. If a class named policyConfigClass already exists, the existing class will be deleted.

◆ Process()

_.Library.Status Process ( _.Library.String  pLocationURL,
_.Library.String  pPackage,
_.Library.Boolean  pTest,
_.XML.Utils.SchemaReader  schemaReader 
)

This method call processes the WSDL found at the specified location.

The

WSDL is retrieved and parsed into ^IRIS.Temp. The definitions are then processed creating one or more SOAP client classes. These client classes may be used to access the services defined with the WSDL. The reader argument is for internal usage by system classes only.

Member Data Documentation

◆ BinaryAsStream

BinaryAsStream

If the BinaryAsStream property is true, then use Stream.GlobalBinary for base64Binary type.

 

◆ BusinessOperationPackage

BusinessOperationPackage

If MakeBusinessOperation is true,.

the name of the sub-package to contain the Business Operation  

◆ CascadeDeletes

CascadeDeletes

Input property to control if a OnDelete method is generated for persistent classes.

in order to cascade deletes.  

◆ ClientPackage

ClientPackage

If MakeClient is true, then ClientPackage is the name of the package to contain the client classes.

If ClientPackage="", then the client classes are put in the default package. If ClientPackage begins with a period (.), then the ClientPackage is appended to the default package. Otherwise the ClientPackage is used as specified.  

◆ ClientURLEscapeSoapAction

ClientURLEscapeSoapAction

Flag to enable the URL Escape of SOAPAction header for SOAP1.1 requests.

This is to complement the existing URL Decode of SOAP1.1 SOAPAction by IRIS WebServices. For example a "%" character in soap action is expanded to "%25" in transmission of the HTTP Header. Allows consistency in different SOAP client platforms accessing same IRIS WebService.
Default Reader action is to enable SOAPAction header to be URL Escaped for new generated SOAP Clients. Programmtically set reader property to "0" to resume previous behavior of generating clients with unescaped SOAPAction header being transmitted for SOAP1.1  

◆ CompileClasses

CompileClasses

Input property to control compilation of created classes.

Default is to compile classes.  

◆ CompileFlags

CompileFlags

Flags to be used for class compiles.

 

◆ ConfigPackage

ConfigPackage

If ConfigPackage = "", then create the configuration class in the same package as.

the client or service with 'Config' appended to the client or service name. If ConfigPackage '= "", then create the configuration class in the subpackage given by ConfigPackage of the package containing the client or service.  

◆ Debug

Debug

Control display of debugging info.

Debug level. Additional output for levels >0. Default is 0.  

◆ EntityResolver

EntityResolver

This property should be set to an instance of XML.SAX.EntityResolver OR a user-defined.

subclass IF the default EntityResolver is not required.  

◆ GenerateXMLNIL

GenerateXMLNIL

Input property to control the generation of the XMLNIL property parameter.

If GenerateXMLNIL = 1, then generate property parameter XMLNIL=1 for elements with nillable="true".  

◆ GenerateXMLNILNOOBJECT

GenerateXMLNILNOOBJECT

Input property to control the generation of the XMLNILNOOBJECT property parameter.

If GenerateXMLNILNOOBJECT = 1, then generate property parameter XMLNILNOOBJECT=1 for elements with nillable="true".  

◆ HttpRequest

HttpRequest

The Net.HttpRequest instance to be used for all web requests for.

WSDL and XML schema documents. This property may optionally be set by the caller in order to specify Net.HttpRequest properties Username, ProxyPort, etc.  

◆ IgnoreNull

IgnoreNull

If the IgnoreNull property is set, the web client/service and the generated classes are created with the.

XMLIGNORENULL parameter to the value in IgnoreNull.  

◆ IndexRelationship

IndexRelationship

Input property to control nature of relationships in generated classes.

The IndexRelationship property is only meaningful if MakeRelationships is true(1) and the relationship is many-one (ParentChildRelationship is false(0). If IndexRelationship is true(1), the many-one relationships that are created are indexed.  

◆ MakeBusinessOperation

MakeBusinessOperation

If MakeEnsembleClasses is true, then MakeBusinessOperation and BusinessOperationPackage are ignored.

Input property to control generation of an business operation for a WSDL If true (1), create an business process and related request and response objects.  

◆ MakeClient

MakeClient

Input property to control creation of web service client classes.

If true (1), then the client classes are created. The default is to create client classes.  

◆ MakeEnsembleClasses

MakeEnsembleClasses

Input property to control generation of production-related classes for the Business Operation.

Request Object and Response Object from a WSDL. If true (1), create an business operation and related request and response objects.  

◆ MakeMessageStyle

MakeMessageStyle

The MakeMessageStyle property specifies whether the generated client uses a message format in which.

each request message part (not the elements of the part's type) is an argument and each response message part is a return value or output argument. The generation of the class using the message or wrapped format is specified by the MakeMessageStyle property which causes this class to have an ARGUMENTSTYLE parameter of "" (for false) or "message" (for true). The default value for ArgumentStyle is false. The generated ARGUMENTSTYLE parameter will be ignored if the SoapBindingStyle is not document. If MakeMessageStyle is true, then NAMESPACE parameters are created as if MakeNamespace is true.  

◆ MakeNamespace

MakeNamespace

Input property to control generation of XML namespace information.

If true(1), add NAMESPACE parameter to generated classes.
Default is false(0) unless there are multiple targetNamespaces in which case the default is true(1).  

◆ MakePersistent

MakePersistent

Input property to control persistence of generated classes.

If true (1), create persistent classes, else create registered classes.
Default is true.  

◆ MakeRelationships

MakeRelationships

Input property to control creation of relationships in generated classes.

If true(1), convert list collections of persistent classes to relationships. Default is true.  

◆ MakeSerial

MakeSerial

Input property to control if generated classes are serial.

If true (1) and 'MakePersistent create serial classes, else create registered classes. Default is true.  

◆ MakeService

MakeService

Input property to control creation of web service classes.

If true (1), then the web service classes are created. The default is to not create web service classes.  

◆ NoArrayProperties

NoArrayProperties

Input property to control use of arrays in created classes.


If true(1), do not reduce properties to use array of cnostruct.
Default is false(0).  

◆ NoSequence

NoSequence

If the NoSequence property is true, the XMLSEQUENCE parameter is set to 0 in the generated classes.

 

◆ OperationPackage

OperationPackage

If MakeEnsembleClasses is true,.

OperationPackage is the name of the package to contain the Business Operation.
 

◆ OutputTypeAttribute

OutputTypeAttribute

If <property>OutputTypeAttribute</property> = 1, then the Process method will add the OUTPUTTYPEATTRIBUTE.

parameter to the web client which is created. This parameter forces the inclusion of the xsi:type attribute for each element of object output.  

◆ PackageMapping

PackageMapping

User supplied mapping of namespaces to package names which will override the default.

package used for a specified namespace.
This mapping does not apply to the client or service class - only the referenced classes.
The format is PackageMapping(namespace)=package for each mapped namespace
If package="", then the client classes are put in the default package. If package begins with a period (.), then the package is appended to the default package. Otherwise the package is used as specified.
The PackageMapping property may only be used with the Process method.  

◆ ParentChildRelationship

ParentChildRelationship

Input property to control nature of relationships in generated classes.

The ParentChildRelationship property is only meaningful if MakeRelationships is true(1). If ParentChildRelationship is true(1), the relationships that are created are parent-child relationsips. Otherwise the relationships are many-one.  

◆ RequestPackage

RequestPackage

If MakeEnsembleClasses is true,.

RequestPackage is the name of the package to contain the production request object.
 

◆ ResponsePackage

ResponsePackage

If MakeEnsembleClasses is true,.

ResponsePackage is the name of the package to contain the production request object.
 

◆ SAXFlags

SAXFlags

This property should be set to a combination of flags (see occSAX.inc for details) if.

the default behavior of the parser is required to be modified. The $$$SAXVALIDATIONPROHIBITDTDS flag is added by default in order to not allow DTDs.  

◆ SSLCheckServerIdentity

SSLCheckServerIdentity

When making an SSL connection check the server identity in the server certificate matches the name of the system we are connecting to.

This defaults to being on and matches based on the rules layed out in section 3.1 of RFC 2818.  

◆ SSLConfiguration

SSLConfiguration

The name of the activated TLS/SSL configuration to use for https requests.

 

◆ SecurityInParameter

SecurityInParameter

The SecurityInParameter property allows the SECURITYIN parameter to be added to created classes.

If SecurityInParameter'="", then add the SECURITYIN parameter to the class created for the web service or web client. The value of the SECURITYIN parameter will be taken from the SecurityInParameter property. The only valid values for this property are "", "ALLOW", "IGNORE", "IGNOREALL", and "REQUIRE".  

◆ ServicePackage

ServicePackage

If MakeService is true, then ServicePackage is the name of the package to contain the web service classes.

If ServicePackage="", then the web service classes are put in the default package. If ServicePackage begins with a period (.), then the ClientPackage is appended to the default package. Otherwise the ServicePackage is used as specified.  

◆ SuppressNamespace

SuppressNamespace

Supplemental flag to suppress use of defined target Namespace.

Causes NAMESPACE parameter to be empty on SOAP client and server classes, even if Namespace use is reactivated for other necessary schema processing reasons. Anticipated usage is for SOAP Clients in conjunction with OutputTypeAttribute flag disablement.