Stephen,
It could be the isRecursive() check in VectorSerializer.java. Try commenting that out.
It was
added to prevent a circular references. See
http://cvs.apache.org/viewcvs.cgi/xml-axis/java/src/org/apache/axis/encoding/ser/VectorSerializer.java
for cvs log of changes.
Thanks,
dims
--- Stephen Graham <[EMAIL PROTECTED]> wrote:
> Hello,
>
> I've noticed a huge decrease in performance with RC2. A transaction that
> typically takes 300ms with Axis 1.0, 1.1Beta and RC1 now takes 1500ms with
> RC2.
>
> This performance decrease seems to be only affecting methods that return a
> Vector (SOAP_VECTOR) from the service - but I'll need to carry out further
> testing to verify this. Does anybody have any ideas on what the problem
> might be?
>
> Here's sample code of what has slowed down.
>
> public Vector getResourcesOfType(long authorityToken, int resourceTypeId)
> {
> long startTick = System.currentTimeMillis();
>
> String methodName = "getResourcesOfType";
> Vector results = null;
> try {
> Call call = (Call)service.createCall();
> QName qname1 = new QName(urnClassName, "Resource");
> QName qname2 = new QName(urnClassName, "ResourceType");
>
> call.registerTypeMapping(Resource.class, qname1,
> new BeanSerializerFactory(Resource.class, qname1),
> new BeanDeserializerFactory(Resource.class, qname1));
> call.registerTypeMapping(ResourceType.class, qname2,
> new BeanSerializerFactory(ResourceType.class, qname2),
> new BeanDeserializerFactory(ResourceType.class, qname2));
> call.setTargetEndpointAddress(AppServerURL);
> call.setOperationName(new QName(serviceName, "getResourcesOfType"));
> call.addParameter("authorityToken", XMLType.XSD_LONG,
> ParameterMode.IN);
> call.addParameter("resourceTypeId", XMLType.XSD_INTEGER,
> ParameterMode.IN);
> call.setReturnType(XMLType.SOAP_VECTOR);
> results = (Vector)call.invoke(new Object[]{new Long(authorityToken),
> new Integer(resourceTypeId)});
> }
> catch(AxisFault ax) {
> logger.error(methodName + " : " + ax);
> }
> catch(Exception ex) {
> logger.error(methodName + " : " + ex);
> }
> logger.info(methodName + " : " + (System.currentTimeMillis() -
> startTick));
> return results;
>
> Regards
> Stephen Graham.
>
=====
Davanum Srinivas - http://webservices.apache.org/~dims/
__________________________________________________
Do you Yahoo!?
Yahoo! Web Hosting - establish your business online
http://webhosting.yahoo.com