You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by Glen Daniels <gd...@macromedia.com> on 2002/03/06 15:10:14 UTC
RE: Bugfix and performance enhancement for WSDL generation (Class
Rep.java)
Thank you, Thomas! I'll take a look at this today once I get in to work, and see about committing it.
--Glen
> -----Original Message-----
> From: Thomas Börkel [mailto:tb@ap-ag.com]
> Sent: Wednesday, March 06, 2002 8:45 AM
> To: Axis Dev Mailinglist
> Subject: Bugfix and performance enhancement for WSDL generation
> (ClassRep.java)
>
>
> HI!
>
> Some days ago, I have posted benchmarks for bcel and
> tt-bytecode in the user mailinglist. Any comments on this?
>
>
> Also, both algorithms in Axis (old bcel and new tt-bytecode)
> have the same flaw, if for example one parameter is a String.
>
>
> Consider this method signature:
>
> public String parameterTest(short s, int i, double d,
> String t, boolean b)
>
>
> Now, both algorithms cannot find out the name of the String
> parameter, because there is a gap in the local var table.
> Instead, the boolean parameter gets the name of the String
> parameter. So Axis, sees the names like this:
>
> {s, i, d, null, t}
>
>
> And so, in the WSDL, it's
>
> parameterTest(s, i, d, in3, t)
>
>
> I have fixed this in my benchmark and also in yesterday's
> ClassRep.java. I made also the changes for better performance
> of tt-bytecode, although it still takes twice as long as bcel
> (but it's MUCH faster than before). I don't know, if you want
> to integrate the performance enhancement, because it's a
> little bit kludgy. See for yourself.
>
>
> Please find attached:
> - GetParamBench3.java (my benchmark, including bugfix and
> performance enhancement)
> - ClassRep1.java (version including the bugfix)
> - ClassRep2.java (version including the bugfix and
> performance enhancement)
>
> Regards,
> Thomas
>
>