1) You don't need to populate PDOs with ProxyGen, it does that for you, if you need to pass user classes you pass the Java class equivelent which ProxyGen generates.
2) With the java version of the templates you must put your parameters in the hash map, because java doesn't support
out or
byref parameters - the parameter names are mangled to make them conform with Java standards - this is done by find and replace rules in the config file. To make it easier to understand what the original parameter name was you can replace the following block in jproxy2.tpl:
Code:
<<CLASS>>
<<!DV_NULL>>
* @param *L*${langname} ${class_prefix}*U*${type} default system
<<!DV_NULL>>
<<DV_NULL>>
* @param *L*${langname} ${class_prefix}*U*${type} default null
<<DV_NULL>>
<<CLASS>>
<<SCALAR>>
<<!DV_NULL>>
* @param *L*${langname} ${type} default ${default_value}
<<!DV_NULL>>
<<DV_NULL>>
* @param *L*${langname} ${type} default null
<<DV_NULL>>
<<SCALAR>>
with:
Code:
<<CLASS>>
<<!DV_NULL>>
* @param *L*${langname}(${name}) ${class_prefix}*U*${type} default system
<<!DV_NULL>>
<<DV_NULL>>
* @param *L*${langname}(${name}) ${class_prefix}*U*${type} default null
<<DV_NULL>>
<<CLASS>>
<<SCALAR>>
<<!DV_NULL>>
* @param *L*${langname}(${name}) ${type} default ${default_value}
<<!DV_NULL>>
<<DV_NULL>>
* @param *L*${langname}(${name}) ${type} default null
<<DV_NULL>>
<<SCALAR>>
N.B. just above this section is a bug in the template - the section should be generating parameter documentation for arrays but is instead outputting array declarations
3) OpenROAD Arrays containing user classes while be converted into java arrays of a type user class, you use the length method in java to find the length of an array. You might need to fix the above bug and I'm not sure if the java templates have been properly tested with arrays as parameters.