# OPC UA Methods array error

**URL:** <https://forum.inductiveautomation.com/t/opc-ua-methods-array-error/115956>\
**Category:** Ignition\
**Tags:** perspective, opcua\
**Created:** [June 12, 2026, 11:12am UTC](https://forum.inductiveautomation.com/t/opc-ua-methods-array-error/115956 "2026-06-12T11:12:27Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![Adarsh\_K](https://avatars.discourse-cdn.com/v4/letter/a/ee7513/32.png) [@Adarsh\_K](https://forum.inductiveautomation.com/u/Adarsh_K)\
**Post date:** [June 12, 2026, 11:12am UTC](https://forum.inductiveautomation.com/t/opc-ua-methods-array-error/115956/1 "2026-06-12T11:12:27Z")

</div>

I am calling a Siemens PLC OPC UA Method from Ignition Perspective using `system.opcua.callMethod()`.

The method expects 2 inputs:

1. 

> 1. `Header` — custom struct
> 2. `Parameter` — `Array[0..1]` of custom struct

When I sent one payload, I got:

`java.lang.Exception: expected 2 inputs, got 1`

> After sending 2 inputs, Ignition gives:
> 
> `java.lang.RuntimeException: unsupported array conversion: target=ExtensionObject, value=class org.python.core.PyList`

> After trying Java array conversion, it gives:
> 
> `java.lang.RuntimeException: unsupported array conversion: target=ExtensionObject, value=class [Ljava.lang.Object;`

It looks like Siemens struct arrays are exposed as OPC UA `ExtensionObject[]`, and Ignition is not converting the array payload correctly.

Does Ignition support passing Siemens `Array of Struct` / `ExtensionObject[]` as OPC UA method inputs? Or should we avoid this and use writable OPC UA tags plus a simple method trigger?🤔

---

<div class="post-metadata">

**Author:** ![Kevin.Herron](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kevin.herron/32/7259_2.png) [@Kevin.Herron](https://forum.inductiveautomation.com/u/Kevin.Herron)\
**Post date:** [June 12, 2026, 11:26am UTC](https://forum.inductiveautomation.com/t/opc-ua-methods-array-error/115956/2 "2026-06-12T11:26:29Z")

</div>

I think there might be a bit of a usability bug on our side, but try passing `'[]'` as the empty array parameter, e.g.

```python
  header = '{...}'              
  params = '[]'
  system.opcua.callMethod(connection, objectId, methodId, [header, params])

```

note it's a string literal containing `[]`, not a python empty list.

---

<div class="post-metadata">

**Author:** ![Samer\_Samy1](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/samer_samy1/32/52910_2.png) [@Samer\_Samy1](https://forum.inductiveautomation.com/u/Samer_Samy1)\
**Post date:** [July 20, 2026, 9:58am UTC](https://forum.inductiveautomation.com/t/opc-ua-methods-array-error/115956/3 "2026-07-20T09:58:33Z")

</div>

Hi , Is there any limitations or challenges with this function ?
