Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » EclipseLink » EclipseLink and Hessian - IndirectList problem
EclipseLink and Hessian - IndirectList problem [message #548021] Tue, 20 July 2010 12:57 Go to next message
Eclipse UserFriend
Originally posted by: stephan.mann.compeople.de

Hi,

I'm running a Riena client/server environment, trying to use EclipseLink
2.0.0 on the server for persistence. The communication between client
and server is done with Hessian.

I don't want the client to have any dependencies to the persistence API.
The problem is, that EclipseLink uses IndirectList as List
implementation which is not known to the client without the dependency.
Thus, the client fails to deserialize the objects send by the server:

Jul 20, 2010 2:20:46 PM com.caucho.hessian.io.SerializerFactory
getDeserializer
WARNING: Hessian/Burlap:
'org.eclipse.persistence.indirection.IndirectList' is an unknown class
in org.eclipse.core.runtime.internal.adaptor.ContextFinder@1ee2c2c:
java.lang.ClassNotFoundException:
org.eclipse.persistence.indirection.IndirectList

Is this an error in my EclipseLink setup or is this intentional? What
solutions are there other than adding the dependency to the client? For
example, is there a way to tell EclipseLink which List implementation to
use?

I inherited the project and I'm only beginning to dive into EclipseLink.
So please point me to any tutorial I might have missed or tell me, what
additional information you need.

tia, stephan
Re: EclipseLink and Hessian - IndirectList problem [message #548726 is a reply to message #548021] Thu, 22 July 2010 18:17 Go to previous messageGo to next message
Chris Delahunt is currently offline Chris DelahuntFriend
Messages: 1039
Registered: July 2009
Senior Member
Hello,

Lazy fetching of collection mappings (OneToMany, ManyToMany) is considered a performance benifit in most cases, and is the default in JPA. As a result, JPA providers supporting loading must use their own collection implementations to delay the fetch until it is required. If you do not have the providers jar files in the client, you will get this problem unless you mark the mapping as eager, ie:
@ManyToMany(fetch=EAGER)

Best Regards,
Chris
Re: EclipseLink and Hessian - IndirectList problem [message #549607 is a reply to message #548726] Tue, 27 July 2010 11:00 Go to previous message
Eclipse UserFriend
Originally posted by: stephan.mann.compeople.de

In article <i2a1vs$4q7$1@build.eclipse.org>,
christopher.delahunt@oracle.com says...
> @ManyToMany(fetch=EAGER)

Thank you very much Chris. That did it. Since we serialize the objects
on the server, lazy fetching is ineffective anyways. So fetch=EAGER
serves us well in removing the dependency from the client.

stephan
Previous Topic:Obtaining EM properties outside a transaction
Next Topic:Understanding @XmlInverseReference
Goto Forum:
  


Current Time: Wed Nov 26 15:32:20 GMT 2014

Powered by FUDForum. Page generated in 0.02727 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software