axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Thomas Börkel ...@ap-ag.com>
Subject Bugfix and performance enhancement for WSDL generation (ClassRep.java)
Date Wed, 06 Mar 2002 13:44:32 GMT
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


Mime
View raw message