You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@axis.apache.org by Markus Plail <pl...@web.de> on 2005/12/06 18:22:13 UTC

Strange deserializer problem

Hi there!

I have a very strange problem: I can get objects of a certain type to my
classes as parameters but I can't get them back.
When I want to return such a type I get:
org.xml.sax.SAXException: No deserializer for {http://objects.ws.vnet}DomainMapping

I have a User object which has besides others three java.util.Sets,
which wsdl2java converts to Object[]s.

I have a DEVInitialize(User[] users) that deletes all my objects from my
user db and fills in the new users. Those users have DomainMappings set
and those are read fine and written to the db.

Now for testing the return values. If I return a user with
domainMappings=null, everything works fine. As soon as there is one
element in the set I get the above mentioned error. BUT there is no such
problem with the other two java.util.Sets. If they have values they are
transferred just fine.

I have no idea what I could be doing wrong!

Here are two mappings. DomainMapping dowsn't work, ForwardMapping does.

    <beanMapping qname="vnetws29:DomainMapping"
                 xmlns:vnetws29="http://objects.ws.vnet"
                 languageSpecificType="java:vnet.ws.objects.DomainMapping"/>
    <beanMapping qname="vnetws25:ForwardMapping"
                 xmlns:vnetws25="http://objects.ws.vnet"
                 languageSpecificType="java:vnet.ws.objects.ForwardMapping"/>

And here's a snippet of the User class. User extends BaseUser and has
nothing but constructors.

public abstract class BaseUser  implements Comparable, Serializable {

   private java.util.Set<vnet.ws.objects.ForwardMapping> forwardMappings;
   private java.util.Set<vnet.ws.objects.DomainMapping> domainMappings;

}

Getters and Setters are in place and are identical apart from the
different names.

Thanks in advance
Markus Plail



Re: Strange deserializer problem

Posted by Markus Plail <pl...@web.de>.
Please forget my previous mails. It all works now and was a PEBKAC
problem.

regards
Markus


Re: Strange deserializer problem

Posted by Markus Plail <pl...@web.de>.
Some more information:
DomainMapping and ForwardMapping are both simple beans with three String
variables. 

And I just tested what would happen if i returned a DomainMapping
directly and that worked flawlessly!

regards
Markus

Markus Plail <pl...@web.de> writes:

> Hi there!
>
> I have a very strange problem: I can get objects of a certain type to my
> classes as parameters but I can't get them back.
> When I want to return such a type I get:
> org.xml.sax.SAXException: No deserializer for {http://objects.ws.vnet}DomainMapping
>
> I have a User object which has besides others three java.util.Sets,
> which wsdl2java converts to Object[]s.
>
> I have a DEVInitialize(User[] users) that deletes all my objects from my
> user db and fills in the new users. Those users have DomainMappings set
> and those are read fine and written to the db.
>
> Now for testing the return values. If I return a user with
> domainMappings=null, everything works fine. As soon as there is one
> element in the set I get the above mentioned error. BUT there is no such
> problem with the other two java.util.Sets. If they have values they are
> transferred just fine.
>
> I have no idea what I could be doing wrong!
>
> Here are two mappings. DomainMapping dowsn't work, ForwardMapping does.
>
>     <beanMapping qname="vnetws29:DomainMapping"
>                  xmlns:vnetws29="http://objects.ws.vnet"
>                  languageSpecificType="java:vnet.ws.objects.DomainMapping"/>
>     <beanMapping qname="vnetws25:ForwardMapping"
>                  xmlns:vnetws25="http://objects.ws.vnet"
>                  languageSpecificType="java:vnet.ws.objects.ForwardMapping"/>
>
> And here's a snippet of the User class. User extends BaseUser and has
> nothing but constructors.
>
> public abstract class BaseUser  implements Comparable, Serializable {
>
>    private java.util.Set<vnet.ws.objects.ForwardMapping> forwardMappings;
>    private java.util.Set<vnet.ws.objects.DomainMapping> domainMappings;
>
> }
>
> Getters and Setters are in place and are identical apart from the
> different names.
>
> Thanks in advance
> Markus Plail