Operator not visible after installing extension

surabhi
surabhi New Altair Community Member
edited November 2024 in Community Q&A

Hi,

I want to make my own operator in rapidminer. I am using extension template provided on git. I am editing it as per instructions. But after installing it I am not able to see it in operator tree although its there in manage extensions. 

Please help me.

Welcome!

It looks like you're new here. Sign in or register to get started.

Best Answer

  • surabhi
    surabhi New Altair Community Member
    Answer ✓

    Hi,

     

    I got solution.

    The problem was with tutorial documentation. In documentation, it is specified that package for operator should be named *com.rapidminer.extension.operator*. 

    But the case is this should be named as com.rapidminer.extension.YourOperatorName.

    And this *YourOperatorName* should be specified in OperatorsNAME.xml.

    I am sharing screenshots from manual/documentaion. 

    rm1.JPGrm2.JPG

     

     

Answers

  • pschlunder
    pschlunder New Altair Community Member

    Hi,

    please check your src/main/resources folder. There you need a xml file named "OperatorsNameOfYourExtension.xml". In it you define a key which is linked to the operator class that should be used and an icon. A possible file could look like this:

     

    <?xml version="1.0" encoding="UTF-8" standalone="no"?>
    <operators name="nameofyourextension" version="6.0" docbundle="com/rapidminer/extension/resources/i18n/OperatorsDocNameOfYourExtension">
    <group key="">
    <!-- This is an example how to specify Operators and Operator groups. The Operator groups define
    where Operators will be located in the Operator tree. -->

    <group key="sample_key">
    <operator>
    <key>name_of_the_key</key>
    <class>com.rapidminer.extension.nameofyourextension.MyClassName</class>
    <icon>cloud_data.png</icon>
    </operator>
    </group>

    </group>
    </operators>

    One option is, that you linked the class incorrectly. For the given example the class file MyClassName.class is located in a package named 'com.rapidminer.extension.nameofyourextension' in the src/main/java folder.

     

    Best regards,

    Philipp

  • surabhi
    surabhi New Altair Community Member

    Hi,

     

    I did as you said. But it is still not working. I am posting snapshots for your reference. 

     

    Regards

    Surabhi

     

     

  • pschlunder
    pschlunder New Altair Community Member

    Looks fine so far. 

     

    Please check again, if you followed along all steps provided in the documentation, esp. steps 2 and 3. If it still fails, could you provide your build.gradle as well as your operator class, please?

     

    Best regards,

    Philipp

  • surabhi
    surabhi New Altair Community Member

    Hi,

     

    I am attaching archived project *demo*. Please reply soon.

     

    Regards

    Surabhi

    demo.zip 113.2K
  • pschlunder
    pschlunder New Altair Community Member

    Please follow along the tutorial in the documentation I linked a post ago. You'll find step-by-step instructions, that will help you in creating your first operator covering the things I hinted before and in this post.

     

    E.g., you need to uncomment the tags in the xml files (e.g. in OperatorsDemo.xml and OperatorsDocDemo.xml) and provide a java class file with your operator code. I couldn't find one in the files you provided. The class file is supposed to be in src/main/java in a package called com.rapidminer.extension.youroperatorname as e.g. YourClassName.java.

     

    Best regards,

    Philipp

  • surabhi
    surabhi New Altair Community Member

    Hi,

    The class file is in src/main/java in a package called com.rapidminer.extension.operator as e.g. myownoperator.java. Please check.

    Thanks.

  • surabhi
    surabhi New Altair Community Member
    Answer ✓

    Hi,

     

    I got solution.

    The problem was with tutorial documentation. In documentation, it is specified that package for operator should be named *com.rapidminer.extension.operator*. 

    But the case is this should be named as com.rapidminer.extension.YourOperatorName.

    And this *YourOperatorName* should be specified in OperatorsNAME.xml.

    I am sharing screenshots from manual/documentaion. 

    rm1.JPGrm2.JPG

     

     

Welcome!

It looks like you're new here. Sign in or register to get started.

Welcome!

It looks like you're new here. Sign in or register to get started.