axis-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "BLIS Webmaster (Patrick Houbaux)" <webmas...@blis-project.org>
Subject Re: Abstract Bean problem in Axis 1.2beta
Date Tue, 18 May 2004 09:59:40 GMT
If somebody is interested:

Somehow the problem was coming from the deployment configuration file (deploy.wsdd) because
I had (for some reasons) specified the type mapping for the array of MyBean1 according to
the following:

<typeMapping
        xmlns:myNS="urn:myTest"
        qname="myNS:ArrayOf_MyBean1"
        type="java:MyBean1[]"
        serializer="org.apache.axis.encoding.ser.ArraySerializerFactory"
        deserializer="org.apache.axis.encoding.ser.ArrayDeserializerFactory"
        encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
  />

Seems that Axis1.2beta doesn't work when these arrays mapping are specified. Axis1.1 was working
fine.

Anyway commenting out this type mapping did the trick.

If needed I can log that in the bug database (I have the complete server source example with
client ready). 

Cheers,
Patrick.

BLIS Webmaster (Patrick Houbaux) wrote:

> Dear all,
> 
> I have a complex datatype schema in a webservice that has been generated 
> from a javabean-object model.
> 
> Some of these beans are declared as abstract and are empty.
> 
> When I deploy the webservice everything is fine but when I try to 
> consume the webservice I get a "Missing Default Constructor" error for 
> these abstract-empty beans.
> 
> This was working fine with Axis 1.1 and I'm currently stuck trying to 
> found out the reason of this error.
> My questions are:
> - Is this a bug in Axis 1.2beta? If yes, should I try to submit an issue?
> - What has changed between Axis 1.1 and Axis 1.2beta that leads to this 
> error?
> - Am I doing something completly wrong here?
> 
> To clarify my explanation here is some piece of codes of my webservice:
> 
> ===== MySuperBean.java
> 
> abstract Class MySuperBean{
>    String ID;
>    public String getID(){
>       return ID;
>    }
> 
>    public void setID(String id_){
>       ID=id_;
>    }
> }
> ===== MySuperBean2.java
> 
> abstract Class MySuperBean2 extends MySuperBean{
> }
> 
> ==== MyBean1.java
> 
> Class MyBean1 extends MySuperBean2{
>     String name;
>     String description;
> 
>     // get and set methods for name and description ...
> }
> 
> ==== MyBean2.java
> Class MyBean2 {
>     MyBean1[] collectionOfBean1;
>         // get and set methods for collectionOfBean1
> }
> 
> ==== MyService.java
> 
> Class MyService {
> 
>      public MyBean2 createMyBean2(){
>           return new MyBean2();
>      }
> }
> 
> The error says something like "Enable to create javabean type 
> MySuperBean2 Missing default constructor? error was 
> java.lang.InstanciationException"
> and then some stack trace ...
> 
> Thanks in advance for any help on shedding me the light on that.
> Cheers,
> Patrick.


Mime
View raw message