Step 2: Modify the Genero .inc stubs to fix wrong I4GL WSDL
The I4GL WSDL contains namespace declaration for all I4GL Web service data types, but in practice
the I4GL axis server doesn't care about namespaces, but Genero does. So you have to open the
generated Genero .inc file and remove all attributes called
XMLNamespace
and XSTypeNamespace
.
For example, the generated .inc file from the I4GL WSDL must be modified as
shown in the following
sample:
#-------------------------------------------------------------------------------
# File: ws_zipcode_zipcode_detailsservice.inc
# GENERATED BY fglwsdl 101601
#-------------------------------------------------------------------------------
# THIS FILE WAS GENERATED. DO NOT MODIFY.
#-------------------------------------------------------------------------------
GLOBALS
...
#
# TYPE : tzipcode_details
#
TYPE tzipcode_details RECORD
ATTRIBUTES(XMLSequence,XSTypeName="zipcode_details")
#,XSTypeNamespace="http://www.ibm.com/zipcode_details")
pin STRING ATTRIBUTES(XMLName="pin")
END RECORD
#-------------------------------------------------------------------------------
#
# TYPE : tzipcode_detailsresponse
#
TYPE tzipcode_detailsresponse RECORD
ATTRIBUTES(XMLSequence,XSTypeName="zipcode_detailsresponse")
#,XSTypeNamespace="http://www.ibm.com/zipcode_details")
city STRING ATTRIBUTES(XMLName="city"),
state STRING ATTRIBUTES(XMLName="state")
END RECORD
...
#-------------------------------------------------------------------------------
#
# Operation: zipcode_details
#
# FUNCTION: zipcode_details_g()
# RETURNING: soapStatus
# INPUT: GLOBAL zipcode_details
# OUTPUT: GLOBAL zipcode_detailsresponse
#
# FUNCTION: zipcode_details(p_pin)
# RETURNING: soapStatus ,p_city ,p_state
#
# FUNCTION: zipcode_detailsRequest_g()
# RETURNING: soapStatus
# INPUT: GLOBAL zipcode_details
#
# FUNCTION: zipcode_detailsResponse_g()
# RETURNING: soapStatus
# OUTPUT: GLOBAL zipcode_detailsresponse
#
#-------------------------------------------------------------------------------
# VARIABLE : zipcode_details
DEFINE zipcode_details tzipcode_details
ATTRIBUTES(XMLName="zipcode_details")
#,XMLNamespace="http://www.ibm.com/zipcode_details")
#-------------------------------------------------------------------------------
# VARIABLE : zipcode_detailsresponse
DEFINE zipcode_detailsresponse tzipcode_detailsresponse
ATTRIBUTES(XMLName="zipcode_detailsresponse")
#,XMLNamespace="http://www.ibm.com/zipcode_details")
END GLOBALS
Note: For Genero Web Services options for mapping BDL and XML, see XML mapping attributes.