The Smarts ASL script attempts to run Perl script on remote host instead of on local host.
All supported releases of Smarts
Whenever Smarts refers to an object() in ASL, it always retrieves the object from the remote server where this adapter/server is communicating with. If Smarts needs to access the local server repository/object, the self-> operator must be used in the script immediately before the operation such as create() or object().
Without the self-> operator, the ACT_PerlScript object is created as follows:
scriptObj = create("ACT_PerlScript" , "RunScript" );
This operation creates a remote connection with the remote domain and will try to find the Perl script on the remote host where this script is communicating with.
To have Smarts run an operation on the local server, use the self-> operator in the ASL script immediately before the operation, as in the following example for a create() operation:
scriptObj = self->create("ACT_PerlScript" , "RunScript" );
This operation will cause Smarts to create the Perl script object locally and run the Perl script on the local host.