Options

Use io ports in Script Execution Operator in Java

kemockemoc Member Posts: 8 Contributor II
edited November 2018 in Help
Hi,
I have another problem:
I try to use 2 Input ports and 2 output ports into Script Execution Operator and unfortunatelly it dosen't work,
my code:

ExampleSet exampleSet5 = table.createExampleSet(label);

List<IOObject> connList = new IOContainer(exampleSet5).asList();
operator.getOutputPorts().getPortByName("output 1").receive( connList.get(0) );

I have Exception
groovy.lang.MissingMethodException: No signature of method: com.rapidminer.operator.ports.impl.OutputPortImpl.receive() is applicable for argument types: (com.rapidminer.example.set.SimpleExampleSet) values: [SimpleExampleSet:
Possible solutions: deliver(com.rapidminer.operator.IOObject).

I tried:
IOObject ioo = examplseSet5;
IOContainer ioc = new IOContainer(new IOObject[] {ioo});
but RM still throw Exception.
Tagged:

Answers

  • Options
    Marco_BoeckMarco_Boeck Administrator, Moderator, Employee, Member, University Professor Posts: 1,995 RM Engineering
    Hi,

    is there any particular reason why you don't want to take the advice I posted in your other thread here?
    Trying to programmatically create processes is a) tedious and b) error-prone, so it is discouraged.

    Regards,
    Marco
  • Options
    kemockemoc Member Posts: 8 Contributor II
    Marco Boeck wrote:

    Hi,

    is there any particular reason why you don't want to take the advice I posted in your other thread here?
    Trying to programmatically create processes is a) tedious and b) error-prone, so it is discouraged.

    Regards,
    Marco
    I got task from my academic teacher, where RM must read data from Java code and show part of that data in a chart, another part data in each iteration.
  • Options
    kemockemoc Member Posts: 8 Contributor II
    Could somebody help? Please.
  • Options
    Marco_BoeckMarco_Boeck Administrator, Moderator, Employee, Member, University Professor Posts: 1,995 RM Engineering
    Hi,

    the "Execute script" operator can take inputs and deliver them to the according output ports - if you do so in the script.
    So for example when you deliver an ExampleSet, you need to return it inside the script:

    ExampleSet exampleSet = input[0];
    [...]
    return exampleSet;
    You don't need to call the output ports directly.


    Regards,
    Marco
  • Options
    marcin_blachnikmarcin_blachnik Member Posts: 61 Guru
    Look at your code and check what you are doing - do you really want to "receive" data from output port ? Or maybe you want to "deliver" data to the output port.

    Best
    Marcin
Sign In or Register to comment.