This week's book giveaways are in the Java EE and JavaScript forums.
We're giving away four copies each of The Java EE 7 Tutorial Volume 1 or Volume 2(winners choice) and jQuery UI in Action and have the authors on-line!
See this thread and this one for details.
The moose likes Web Services and the fly likes jax-ws : return list of JPA entities Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of The Java EE 7 Tutorial Volume 1 or Volume 2 this week in the Java EE forum
or jQuery UI in Action in the JavaScript forum!
JavaRanch » Java Forums » Java » Web Services
Bookmark "jax-ws : return list of JPA entities" Watch "jax-ws : return list of JPA entities" New topic
Author

jax-ws : return list of JPA entities

Girish Vasmatkar
Ranch Hand

Joined: Apr 24, 2008
Posts: 201
Hi,

I am developing a simple jax-ws service for an iphone application. I am using EJB 3.0 entities and hibernate as JPA implementation.

I'll have a operation getUsers, that should return the list of users with all the attributes of users fetched from DB.

If I return something like this :




The problem is that I am unable to make my web service deployed If I use generics.

And if I remove generic code and rather use normal "List", the web service is deployed but if I call this service I get an exception.

My question is, if I am somehow able to resolve the problem, will the jax-ws runtime be able to send the SOAP message something like this :



I suspect this is not possible, I guess I will have to create xml manually ? But then what's use of using jax-ws ?

Can someone help me out on this? I need to send the data from the JPA entities in xml form.

Thanks


Ivan Krizsan
Ranch Hand

Joined: Oct 04, 2006
Posts: 2198
    
    1
Hello!
First of all, do not use the List type as a return type form a web service method. Use arrays instead.
JAXB, who is responsible for marshalling and unmarshalling XML data does not know about Lists, since this is not a simple Java type.
Arrays, however, is no problem for JAXB.

Second, when querying for entities from a database or such, be sure not to use lazy loading and also detach the entities from the entity context before returning them.
This because if you, for instance, use lazy loading and return entities which data is not completely loaded, then there may be problems if the entity context is closed when the serialization of the entities to XML is done.
Best wishes!


My free books and tutorials: http://www.slideshare.net/krizsan
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: jax-ws : return list of JPA entities