Finally its resolved. Thank you @Simon for all your guidance and help.
I did some workaround in lotuscript code to re-declare the array declared here and it worked. After initiating the web service and declaring all other elements of the web service I declared the array test() again using -
Redim test(10) as test_test2_n0
Now I can assign the elements of test_test2_n0 (which is of structure type) in array declared above.
So my final code here -
Web Service Consumer - created by notes using the WSDL -
Class test_n0 As ArrayType_n1
Public test() As test_test2_n0
Sub NEW
End Sub
End Class
Class test_test2_n0 As StructureType_n1
Public t1 As StringType_n1
Public t2 As StringType_n1
Public t3 As StringType_n1
Sub NEW
End Sub
End Class
Sample code in Notes Agent -
Dim testStruct_Sub As New test_test2_n0
Dim testArray_Sub As New test_n0
Redim test(10) as test_test2_n0
Set testStruct_Sub.t1= "Some Value"
Set testStruct_Sub.t2= "Some Value"
Set testStruct_Sub.t3= "Some Value"
Set testArray_Sub.test(0) = testStruct_Sub
My learning -
- If any type is not getting identified in lotussript code, re-declare the variable with the compatible type class.
- If you have couple of classes created with same name (one with StructureType and other with ArrayType) in consumer, you have to re-design your schema so that it has only single array of structures.
It took a lot of time me to understand the 2nd point and I found that Notes has limitations.