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

Attachment: GetParamNamesBench3.java
Description: GetParamNamesBench3.java

Attachment: ClassRep1.java
Description: ClassRep1.java

Attachment: ClassRep2.java
Description: ClassRep2.java

Reply via email to