The Altair Community is migrating to a new platform to provide a better experience for you. In preparation for the migration, the Altair Community is on read-only mode from October 28 - November 6, 2024. Technical support via cases will continue to work as is. For any urgent requests from Students/Faculty members, please submit the form linked here
Unknwon operator Class
Hi all,
Do anybody know whay I am getting Unknown operator class Error? Iam trying to test my own extended operators using RapidMiner 4.5. Below is the error messege:
Exception in thread "main" com.rapidminer.tools.XMLException: Unknown operator class: 'CustomWApriori'!
at com.rapidminer.operator.Operator.createFromXML(Operator.java:1503)
at com.rapidminer.operator.Operator.setOperatorParameters(Operator.java:1600)
at com.rapidminer.operator.Operator.createFromXML(Operator.java:1513)
at com.rapidminer.Process.readProcess(Process.java:890)
at com.rapidminer.Process.<init>(Process.java:167)
at rapidminer.embedded.MyPipelineTest.runProcess(MyPipelineTest.java:14)
at rapidminer.embedded.MyPipelineTest.main(MyPipelineTest.java:21)
Thank you,
Maha
Do anybody know whay I am getting Unknown operator class Error? Iam trying to test my own extended operators using RapidMiner 4.5. Below is the error messege:
Exception in thread "main" com.rapidminer.tools.XMLException: Unknown operator class: 'CustomWApriori'!
at com.rapidminer.operator.Operator.createFromXML(Operator.java:1503)
at com.rapidminer.operator.Operator.setOperatorParameters(Operator.java:1600)
at com.rapidminer.operator.Operator.createFromXML(Operator.java:1513)
at com.rapidminer.Process.readProcess(Process.java:890)
at com.rapidminer.Process.<init>(Process.java:167)
at rapidminer.embedded.MyPipelineTest.runProcess(MyPipelineTest.java:14)
at rapidminer.embedded.MyPipelineTest.main(MyPipelineTest.java:21)
Thank you,
Maha
Tagged:
0
Answers
I still have 4.6 installed, and can't find any operator of that name either. Try W-Apriori or W-PredictiveApriori ?
Seems like you are trying to extend rapidminer with your own operator. As far as I can see from over here, you somehow messed up the operators file (asssuming that you have created a plugin as described in the tutorial.pdf (also available on rapidminers download page on sourceforge)). You operators.xml file should look something like this ... where class has to be the full qualified class name (i.e. including the complete package-name).
If this did not help you, please provide more information about the previous steps you have taken, otherwise we are restrained to guessing.
on a side note: I understand that you do not want to switch to rapidminer5.0 yet (a lot of things have changed), but please upgrade to version 4.6. Several bugs have fixed in this version you will hardly find anyone in this forum using an older version than this.
greetings,
steffen
CustomWAprior is my own operator, which I try to see whether is working as required or not. Thank you for responding my message.
Thank you so much,
Maha
Ok, I understand. To make rapidminer recognize your plugin you have to options (see also chapter 6 in the mentioned tutorial - pdf (version 4.5)).
1. You create a jar file, where the operators.xml is located in the directory META-INF, and put this jar into this path <your-rapidminer-installation>/lib/plugins (see section 6.9).
2. Assuming that you have both your plugin project and rapidminer available in eclipse and start rapidminer from within eclipse (for the basics see this link, except that you unpack the zip-file in your eclipse workspace instead of checking out the code from svn): Then select Run (from the menu) -> Run Configurations -> your-rapidminer-starrt-configuration and ...
- add "-Drapidminer.operators.additional=path/to/your/operators.xml" to the arguments tab, i.e. the vm-arguments
- add your plugin-project to the classpath tab
Click "run" and it should work.The second strategy has the advantage that you can debug your plugin code easily. The first strategy is fine if your plugin is ready and you want to share it with others.
greetings,
steffen
has this issue been solved?
Greetings,
Sebastian
I don't know how to put operators.xml in directory MET-INF of the jar file, do you have any Idea?
I have used this comand " jar cfm MyJar.jar Manifest.txt input-files" in comand line to create the jar file.The content of the created jar file looks like this:
META-INF/
META-INF/ MANIFEST.MF
operators.xml
foo.java
....
thanks for supporting,
Maha
the problem is solved!!
A new META-INF directory have been created and I put the operators.xml as in normal caste (copy-paste), then the entring this comoand "jar cfm MyJar.jar Manifest.txt META-INF" will create a jar file as desired above.
I have followed the steps of Steffen. I have just changed " / " to " \ " becuase I am windows user.
I have got a new type ot errors, which need to work on it. We are trying to write filters for the assosiation rules of RapidMiner using Weka operators:
eption in thread "main" com.rapidminer.operator.UserError: CustomWApriori caused an error: weka.core.UnsupportedAttributeTypeException: weka.associations.Apriori: Cannot handle numeric attributes!
at rapidminer.customOperator.CustomWApriori.apply(CustomWApriori.java:104)
at com.rapidminer.operator.Operator.apply(Operator.java:671)
at com.rapidminer.operator.OperatorChain.apply(OperatorChain.java:424)
at com.rapidminer.operator.Operator.apply(Operator.java:671)
at com.rapidminer.Process.run(Process.java:735)
at com.rapidminer.Process.run(Process.java:704)
at com.rapidminer.Process.run(Process.java:694)
at rapidminer.embedded.MyPipelineTest.runProcess(MyPipelineTest.java:14)
at rapidminer.embedded.MyPipelineTest.main(MyPipelineTest.java:20)
Caused by: weka.core.UnsupportedAttributeTypeException: weka.associations.Apriori: Cannot handle numeric attributes!
at weka.core.Capabilities.test(Capabilities.java:942)
at weka.core.Capabilities.test(Capabilities.java:857)
at weka.core.Capabilities.test(Capabilities.java:1073)
at weka.core.Capabilities.test(Capabilities.java:1011)
at weka.core.Capabilities.testWithFail(Capabilities.java:1290)
at weka.associations.Apriori.buildAssociations(Apriori.java:407)
at rapidminer.customOperator.CustomWApriori.apply(CustomWApriori.java:101)
... 8 more
Thanks,
Maha
and congratulations !
Regarding the error:
The W-Apriori algorithmn cannot handle numerical attributes. Hence you have to discretize these features first. Check out the operators under RapidMinerGUI -> Preprocessing->Data->Discretization.
hope this was helpful
steffen
just a short note: If you would switch to RapidMiner 5.0, there would be some extra effort for converting your operators, but every other thing will work better, especially the new way of building extensions is much more guided. No need for building jar files by hand. Everything is documented in the How to Extend Rapidminer 5.0 Tutorial in our shop. And it comes with eclipse project templates for building your own extensions.
But this is just a note. Just ignore it, if you want to stick to 4.5.
Greetings,
Sebastian