Hello Ruwan,

I have a small test case to reproduce the second issue (unknown character). 
Maybe this problem also applies to issue one. 
As you expected the issue seem to be related to the response size.

Please consider the following basic service code which is based on your Hessian 
sample.


BasicAPI.java:
--------------
package com.sample.server;

import java.util.List;

public interface BasicAPI {    
    public List getResultObjectList(int listSize);    
}

ResultObject:
-------------
package com.sample.domain;

import java.io.Serializable;

public class ResultObject implements Serializable {

    private Long id;
    private String s = "äüö&?ß_\\/241234";

    public ResultObject(Long id) {
        this.id = id;
    }

    public String toString() {
        StringBuffer sb = new StringBuffer(64);
        return sb.append("id = ").append(id.toString()).append(", s = 
").append(s).toString();
    }
}

HelloServlet:
-------------

package com.sample.server;

import java.util.ArrayList;
import java.util.List;

import com.caucho.hessian.server.HessianServlet;
import com.sample.domain.ResultObject;

public class HelloServlet extends HessianServlet implements BasicAPI {

    public List getResultObjectList(int listSize) {
        List list = new ArrayList();

        for (int i = 0; i < listSize; i++) {
            ResultObject o = new ResultObject(new Long(i));
            list.add(o);

        }
        return list;
    }
}

In the client code you can test with diffent values for the listSize parameter. 
I tested 5, 10, 20, 50, 100 successfully. As I changed the parameter to 500 I 
got the following exception:

Caused by: com.caucho.hessian.io.HessianProtocolException: unknown code:?
        at com.caucho.hessian.io.HessianInput.error(HessianInput.java:1642)
        at com.caucho.hessian.io.HessianInput.readEnd(HessianInput.java:1208)
        at com.caucho.hessian.io.MapDeserializer.readMap(MapDeserializer.java)
        at 
com.caucho.hessian.io.SerializerFactory.readMap(SerializerFactory.java)
        at com.caucho.hessian.io.HessianInput.readObject(HessianInput.java:1126)
        at 
com.caucho.hessian.io.CollectionDeserializer.readList(CollectionDeserializer.java)
        at com.caucho.hessian.io.HessianInput.readObject(HessianInput.java)
        at com.caucho.hessian.io.HessianInput.readReply(HessianInput.java:285)
        at 
de.jamba.network.hessian.client.JHessianProxy.invoke(JHessianProxy.java:211)



By the way, where do I find the source for your Hessian additions? I had a 
short look at the Axis2 repo but could find the classes.

So I took a quick look in the Axis2-hessian.jar.

Could you please have a look at MessageFormater.getBytes()! I saw a suspicious 
limitation to 8192 bytes while reading from an inputstream.

I hope some of the information is helpful to track down the problem.


Regards,
   Eric


--
Eric Hubert
Software Architect
Associate Director Research & Development
 
Jamba! GmbH
Domaquarée
Karl-Liebknecht-Str. 5
10178 Berlin
Germany
 
Phone: +49- (0)30- 69 538- 3506
Fax:     +49- (0)30- 69 538- 599
 
E-Mail: [EMAIL PROTECTED]
 
 
Jamba- Have it or hate it.
---------------------------------------------------------------------------------------
 
"Musik, Videos, Spiele und jede Menge coole Leute - jetzt neu bei Jamba"
Web/ WAP: http://www.jamba.de
 
Jamba! GmbH
Gesellschaft mit beschränkter Haftung mit Sitz in Berlin
HRB Nr. 97990 Amtsgericht Charlottenburg
Geschäftsführer: Lee Fenton, Dirk Hoffmann, Michael Paull
 

> -----Original Message-----
> From: Ruwan Linton [mailto:[EMAIL PROTECTED]
> Sent: Thursday, March 20, 2008 4:59 PM
> To: Hubert, Eric
> Cc: Asankha C. Perera; Paul Fremantle; [email protected]
> Subject: Re: Feedback Hessian-Support in SNAPSHOT-Build
> 
> Hi Eric,
> >
> > Unfortunately it is not possible to provide you with the service
> > implementations. Of course I understand your situation and will try to
> > build some test cases to reproduce the problems in simple test services
> > in parallel. As I don't know much about the cause, I'm not sure whether
> > I will manage to do so in a timely manner.
> > I will try to contact the developers of this service to get some advice.
> >
> I can understand the situation, actually what I meant is a sample that
> fails to respond not exactly the once you tested :-)
> > Please find attached a threaddump after the esb stops answering service
> > requests.
> >
> Thanks,
> Ruwan
> > Regards,
> >    Eric
> >


_______________________________________________
Esb-java-dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/esb-java-dev

Reply via email to