On Nov 2, 2007, at 5:14 AM, Mattias Jiderhamn wrote:

> Yesterday I got around to actually start working with Hessian, and let
> me just first say: Wow!
> This is how Web Services are supposed to be. No descriptors, no stub
> generation, just a couple of XML lines (I'm using Springs
> HessianProxyFactoryBean here) and the remoting is completely  
> transparent
> to the code. It's possible there are SOAP API:s providing this too,
> since it was a couple of years since I actively developed SOAP  
> services,
> but for now I'm really looking forward to using Hessian.

Thanks.  I do think they've cleaned up the SOAP APIs, but the  
underlying protocol is still horrible.

There's a setSendCollectionType(boolean) in the SerializerFactory and  
HessianServlet.  If you set it to false, it will serialize the  
collection as a raw list.  It does look like you'd need to extend  
HessianServlet to set it, though.

-- Scott
>
> Anyway, among other things I want to transfer over the service are
> collections from/in Hibernate objects. That is, the collections are
> instances of Hibernates PersistentMap, PersistentList, PersistentSet
> etc. This will cause trouble, since the receiving end will think the
> collection is not yet initialized, but it is also not bound to a  
> session
> and thus an exception will be throws (for search enginge indexing, I'm
> talking about the LazyInitializationException , "failed to lazily
> initialize a collection, no session or session was closed").
>
> In my current case, I can easily wrap the PersistentMap in a  
> HashMap to
> avoid the issue, but then (apart from the tiny performance loss)
> suddenly it is not as beatifully transparent anymore. I'm thinking  
> there
> must be a way to tell Hessian to serialize the PersistentMap as a  
> Map of
> unknown kind (which will be deserialized as a HashMap) using a custom
> serializer. There seems to be a way to set the SerializerFactory of  
> the
> HessianServlet and/or addFactory() to the SerializerFactory.
> What would be the most correct way of doing this?
>
> We are currently not using Resin IoC (as I said, we are using Spring),
> so I'd prefer a solution without it.
> Would that mean I have to subclass HessianServlet?
>
> Thanks in advance.
>
> P.S. While I'm writing: Is there a summary of the differences between
> Hessian 1 and 2, without having to study the specs? Are there  
> reasons to
> choose either in a specific environment?
>
>  /Mattias
>
>
> _______________________________________________
> hessian-interest mailing list
> [email protected]
> http://maillist.caucho.com/mailman/listinfo/hessian-interest



_______________________________________________
hessian-interest mailing list
[email protected]
http://maillist.caucho.com/mailman/listinfo/hessian-interest

Reply via email to