I'm still curious to know if there's a better way to register the
deserializer, but I have it all working now.  Anyone that wants to use
hessian clients on appengine will probably want this code:

http://code.google.com/p/unsuck/source/browse/#svn%2Ftrunk%2Fsrc%2Funsuck%2Fhessian

An example of how to use it is here:

http://code.google.com/p/scratchmonkey/source/browse/appengine/hessian/src/test/GoServlet.java

It's fairly crude - it ignores extra fields on custom exceptions - but
it's a lot better than getting an opaque illegal access error from
GAE.

Jeff

On Sun, Feb 20, 2011 at 1:17 AM, Jeff Schnitzer <j...@infohazard.org> wrote:
> It looks like this won't work by putting...
>
> java.lang.Throwable=my.Deserializer
>
> ...in my META-INF/hessian/deserializers, will it?  From poking through
> the code, it seems that this would only activate for specific
> instances of Throwable, not subclasses of Throwable.
>
> Am I right that the way to do this is to build a SerializerFactory
> that will create a Deserializer for any Throwable and add it to my
> client by calling:
>
> HessianProxyFactory proxyFact = new HessianProxyFactory();
> proxyFact.getSerializerFactory().addFactory(myThrowableSerializerFactory)
>
> ?
>
> Thanks,
> Jeff
>
> On Sun, Feb 20, 2011 at 12:41 AM, Jeff Schnitzer <j...@infohazard.org> wrote:
>> I'm trying to write a smarter (java) deserializer for Throwable and
>> StackTraceElement, one that will work on Appengine.  Between various
>> constructors and Throwable.setStackTrace(), it should be possible to
>> reconstitute exceptions without setting private fields.
>>
>> Is there any good documentation somewhere for the contract of
>> Deserializer, JavaDeserializer, and friends?  I can probably figure it
>> all out from the code, but it's slow going.
>>
>> Thanks,
>> Jeff
>>
>


_______________________________________________
hessian-interest mailing list
hessian-interest@caucho.com
http://maillist.caucho.com/mailman/listinfo/hessian-interest

Reply via email to