how to add information about the Derived class for abstract data types present 
in parmater for any service
----------------------------------------------------------------------------------------------------------

                 Key: AXIS2-3928
                 URL: https://issues.apache.org/jira/browse/AXIS2-3928
             Project: Axis 2.0 (Axis2)
          Issue Type: Test
          Components: wsdl
    Affects Versions: 1.4
         Environment: Windows/ Weblogic
            Reporter: Ankit Jain
            Priority: Critical


Hi,
The parameters of the operation/service is abstract type so when I create the 
instance it says Abstract type can not be instantiated.
I do not have any idea how to tell before the generation of the wsdl that this 
are my derived class of abstract type and use them.

After doing some of the changes I generated the wsdl with the information about 
my derived class. I have copied only the relevant information below. In the 
below example my service is setBucketBarringIndicator. It takes 3 parameters 
out of which BaseChannel is abstract and DtARChaneel is the one of the derived 
class of this abstract type. 

<wsdl:types>
  <schema targetNamespace="http://datatypes.rpm.amdocs"; 
xmlns="http://www.w3.org/2001/XMLSchema";>
  <xsd:import namespace="http://domaindatatypes.rpm "/>
   <xsd:import namespace="http://lang.java"/>
   <xsd:import namespace="http://exceptions.acmarch "/>
   <xsd:import namespace="http://webservices.fw.jf "/>
   <xsd:import namespace="http://schemas.xmlsoap.org/soap/encoding/"/>
   <complexType abstract="true" name="BaseChannel">
    <sequence>
     <element maxOccurs="1" minOccurs="0" name="requestDateTime" 
nillable="true" type="xsd:dateTime"/>
     <element maxOccurs="1" minOccurs="0" name="requestDateTimeNull" 
type="xsd:boolean"/>
     <element maxOccurs="1" minOccurs="0" name="requestDateTimeUnAssigned" 
type="xsd:boolean"/>
    </sequence>
</complexType>
    <wsdl:message name="setBucketBarringIndicatorRequest">
      <wsdl:part name="baseChannel" type="tns2:BaseChannel"/>
      <wsdl:part name="activityDateInfo" type="tns2:ActivityDateInfo"/>
      <wsdl:part name="header" type="tns8:JFWebServiceHeader"/>
   </wsdl:message>
<complexType name="DtARChannel">
    <complexContent>
     <extension base="tns2:BaseChannel">
      <sequence/>
     </extension>
    </complexContent>
   </complexType>
<wsdl:operation name="setBucketBarringIndicator" parameterOrder="baseChannel 
activityDateInfo header">
         <wsdl:input message="impl:setBucketBarringIndicatorRequest" 
name="setBucketBarringIndicatorRequest"/>
         <wsdl:output message="impl:setBucketBarringIndicatorResponse" 
name="setBucketBarringIndicatorResponse"/>
         <wsdl:fault message="impl:RPMException" name="RPMException"/>
      </wsdl:operation>

In my deploy.wsdd I have the below lines

<operation name="setBucketBarringIndicator" 
qname="operNS:setBucketBarringIndicator" 
xmlns:operNS="http://ws.api.interfaces.sessions.rpm " soapAction="" >
        <parameter qname="baseChannel" type="tns:BaseChannel" 
xmlns:tns="http://datatypes.rpm "/>
        <parameter qname="activityDateInfo" type="tns:ActivityDateInfo" 
xmlns:tns="http://datatypes.rpm "/>
       <parameter qname="header" type="tns:JFWebServiceHeader" 
xmlns:tns="http://webservices.fw.jf " mode="INOUT"/>
        <fault name="RPMException" qname="fns:fault" 
xmlns:fns="http://ws.api.interfaces.sessions.rpm.amdocs"; class=" 
exceptions.RPMException" type="tns:RPMException" 
xmlns:tns="http://exceptions.utils.rpm "/>
      </operation>

Can you please help me to know that my wsdl and wsdd is correct?
When I use some tools to invoke my service and when I try to pass values to all 
the parameter I get error as cannot create instance of abstract type. It is 
creating the instance of abstract but it should do it for my derived class. 
What should be done to pass info about derived class.
I would really appreciate your reply.

Thanks and Best Regards,
Ankit Jain

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to