I’ve run into a problem in the past, where specifying a component’s name as an argument type can sometimes cause ACF to throw an invalid type exception during init. This was solved previously with an import statement at the top of the file to help ACF find the relevant class. However, this doesn’t seem to be working using Wirebox (not sure if it’s 1.7 or 1.8).
I’m delegating control of the creation of SomeObject to Wirebox as you can see in the binder snippet. If I change the argument type to “path.to.SomeObject” (instead of just “SomeObject”), I don’t get the exception during init.
As for your other question, it’s a matter of preference.
The type parameter is being parsed and used by the CF engine, not by Wirebox.
Do you still get the error when creating the object manually?
If you remove the type and dump out the arguments inside the method and abort, is SomeObject being passed as you expected?