• Kettle6.1连接MongoDB报错


    配置好mongodb连接之后,点击预览报下面的错:

    报错:

    java.lang.NoClassDefFoundError: javax/crypto/spec/PBEKeySpec
            at com.mongodb.DBPort$ScramSha1Authenticator$ScramSha1SaslClient.Hi(DBPort.java:822)
            at com.mongodb.DBPort$ScramSha1Authenticator$ScramSha1SaslClient.computeClientFinalMessage(DBPort.java:747)
            at com.mongodb.DBPort$ScramSha1Authenticator$ScramSha1SaslClient.evaluateChallenge(DBPort.java:681)
            at com.mongodb.DBPort$SaslAuthenticator.authenticate(DBPort.java:904)
            at com.mongodb.DBPort.authenticate(DBPort.java:432)
            at com.mongodb.DBPort.checkAuth(DBPort.java:443)
            at com.mongodb.DBTCPConnector.innerCall(DBTCPConnector.java:289)
            at com.mongodb.DBTCPConnector.call(DBTCPConnector.java:269)
            at com.mongodb.DBCollectionImpl.find(DBCollectionImpl.java:84)
            at com.mongodb.DBCollectionImpl.find(DBCollectionImpl.java:66)
            at com.mongodb.DBCursor._check(DBCursor.java:498)
            at com.mongodb.DBCursor._hasNext(DBCursor.java:621)
            at com.mongodb.DBCursor.hasNext(DBCursor.java:657)
            at org.pentaho.mongo.wrapper.cursor.DefaultCursorWrapper.hasNext(DefaultCursorWrapper.java:34)
            at org.pentaho.di.trans.steps.mongodbinput.MongoDbInput.processRow(MongoDbInput.java:89)
            at org.pentaho.di.trans.step.RunThread.run(RunThread.java:62)
            at java.lang.Thread.run(Thread.java:745)
    Caused by: java.lang.ClassNotFoundException: javax.crypto.spec.PBEKeySpec not found by org.mongodb.mongo-java-driver [59]
            at org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1532)
            at org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:75)
            at org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1955)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
            ... 17 more

    解决办法:

    目录:data-integrationsystemkarafetcconfig.properties

    文件中下部有一行 org.osgi.framework.bootdelegation=参数:
    在末尾处加上  ,javax.crypto,javax.crypto.*
    Mongo就可以正常连接读取数据了。

  • 相关阅读:
    JDBC批处理
    SQL注入攻击及其解决方法
    JDBC配置文件的开发形式
    JDBCUtils工具类
    利用JDBC技术,模拟用户登录的过程。查询用户表,用户名和密码是否匹配,是否存在。
    JDBC进行数据库的--增--删--改--案例----纯代码
    JDBC遍历结果集---ResultSet
    软件测试(十三)
    软件测试(十二)
    软件测试(十一)
  • 原文地址:https://www.cnblogs.com/scote/p/9770901.html
Copyright © 2020-2023  润新知