Works fine for me (axis1.1, rpc-enc), just declared your derived types in the wsdd.

 

Christophe

 


From: Sagar Pidaparthi [mailto:[EMAIL PROTECTED]
Sent: Thursday, September 30, 2004 7:30 PM
To: [EMAIL PROTECTED]
Subject: Abstract class object in a method parameter

 

Hi,

 

I am experiencing some problems while instantiating some of the business objects on the server.  This could be because the base classes are abstract and any attempt use these objects in a parameter would require such an object’s instantiation.  In our native code usage such base class objects like Person were obtained from a factory and probably type cast because we were controlling/developing the code. 

 

When axis tries to instantiate a Party, it fails because Party is an abstract class and can not be instantiated.  We may have a problem with abstract classes (at run time),  just as we had problem with interfaces as parameters ( at proxy generation time)  in a method call.

 

Given below is the call I am trying to make on the client

 

      Vector RETVAL = partyRoleCA.getAllPaymentMethods(userName, authentication, (Party)myPerson);

 

 

The Axis server receives the call through a SOAP message and tries to instantiate a Party object and then…..

 

Given below is the error message received from the server. 

 

faultString: org.xml.sax.SAXException: Unable to create JavaBean of type com.chordiant.pmf.businessClasses.Party.  Missing default constructor?  Error was: java.lang.InstantiationException: com/chordiant/pmf/businessClasses/Party.

 

 

Can anybody confirm this observation?  Is there a way around the problem?

 

Regards

 

Sagar

 

Reply via email to