Hitachi Vantara Pentaho Community Forums
Results 1 to 3 of 3

Thread: Steps to Build/Install MongoDB Output??

  1. #1
    Join Date
    Nov 2012
    Posts
    5

    Default Steps to Build/Install MongoDB Output??

    I'd like to add the ability to use SSL to the MongoDB Output step.
    I've written the code, but I have no idea where to install it into PDI.

    I cloned from here: https://github.com/pentaho/pentaho-mongodb-plugin
    Imported into IntelliJ, wrote code, compiled...
    but IntelliJ won't run Maven commands since it doesn't have JaCoCo and Eclipse won't even load Maven.

    I'm a bit of a noob with the tools.
    Can someone explain how I would go about compiling/testing/installing this?
    I assumed I would replace the JAR in: data-integration\system\karaf\system\pentaho\pentaho-mongodb-plugin

    [I even went so far as to compile the .class files and replace them in this JAR, but that failed miserably]

    Thanks!

  2. #2
    Join Date
    Nov 2012
    Posts
    5

    Default Some answers

    Seems that no one is trolling from Pentaho to give answers...so I'll answer my own thread. How nice.


    My first problem of not knowing how to run the package target in IntelliJ is somewhat easy.
    Firstly, the repo in the pom.xml should be:
    <url>http://repository.pentaho.org/content/groups/omni/</url>
    NOT:
    <!--<url>http://nexus.pentaho.org/content/groups/omni/</url>-->


    That STILL won't give you JaCoCo and JaCoCo is useless for just getting this thing packaged, so remove it.
    Hard to find...you've got to go through all the POMs from all the included stuff in Maven.
    The culprit (from simple Find in Files...) is: <maven_repo>\org\pentaho\pentaho-ce-jar-parent-pom\1.2.5\pentaho-ce-jar-parent-pom-1.2.5.pom
    Just comment out any occurrances of jacoco. You don't need it.


    That will get the goals/targets to run.
    You can now produce a JAR.


    However, to get it into PDI is still a mystery to me.
    Copying it into ~\pdi-ce-7.0.0.0-25\data-integration\system\karaf\system\pentaho\pentaho-mongodb-plugin
    is only PART of the solution.
    You also have to remove the karaf caches:
    DEL ~\pdi-ce-7.0.0.0-25\data-integration\system\karaf\caches
    Just kill it. It'll rebuild.


    My final solution was to do what I tried the first time and copy my class files from the newly compiled project into the existing JAR.
    After doing that, my changes are apparent.


    However, this is less than elegant. I'd like to know the BEST way to do this.
    The docs anyone has are rather old, don't tell you ALL of the locations/nuances of plugins, and generally suck.


    Good luck.

  3. #3
    Join Date
    Feb 2017
    Posts
    14

    Default

    Thanks a bunch for this info. I've been on this issue for over a day.

    I needed to upgrade the mongo driver and basically followed your guide for building the step but I also registered the driver with karaf (by modifying the etc/application.properties file), deployed the jar to maven using

    mvn -s settings.xml -P central install

    and then overwrote the jar under system/karaf/system/pentaho-mongodb-plugin/7.0.0.0-25, deleted the cache and it worked. Maybe one of those steps can help you out.

    Generally for something so simple and basic it's a total mystery to my why there are two different ways to register plugins in pdi especially since the documentation is non existent. It really takes away from the product which I like.

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
Privacy Policy | Legal Notices | Safe Harbor Privacy Policy

Copyright © 2005 - 2019 Hitachi Vantara Corporation. All Rights Reserved.