Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/63.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
RDBMSLoginModule:ClassCastException com.ibm.ws.jdbc.DataSourceService to javax.sql.DataSource_Java_Mysql_Sql_Jdbc_Ibm Mobilefirst - Fatal编程技术网

RDBMSLoginModule:ClassCastException com.ibm.ws.jdbc.DataSourceService to javax.sql.DataSource

RDBMSLoginModule:ClassCastException com.ibm.ws.jdbc.DataSourceService to javax.sql.DataSource,java,mysql,sql,jdbc,ibm-mobilefirst,Java,Mysql,Sql,Jdbc,Ibm Mobilefirst,我正在尝试设置具有一些基本安全性的Worklight桌面应用程序。我已经成功地将RDBMSLoginModule与DB2 express一起使用,但是现在我切换到MySQL,我遇到了错误 以下是我在尝试登录应用程序时收到的消息: java.lang.ClassCastException: com.ibm.ws.jdbc.DataSourceService cannot be cast to javax.sql.DataSource 以下是我在server.xml中的部分设置: <data

我正在尝试设置具有一些基本安全性的Worklight桌面应用程序。我已经成功地将RDBMSLoginModule与DB2 express一起使用,但是现在我切换到MySQL,我遇到了错误

以下是我在尝试登录应用程序时收到的消息:

java.lang.ClassCastException: com.ibm.ws.jdbc.DataSourceService cannot be cast to javax.sql.DataSource
以下是我在server.xml中的部分设置:

<dataSource id="MySQL" jdbcDriverRef="MySQLJDBCDriver" jndiName="jdbc/newapp">
    <properties databaseName="newapp" password="passw0rd" portNumber="3306" serverName="localhost" user="root"/>
</dataSource>
<library id="lib">
    <fileset dir="${shared.resource.dir}/mysql" includes="mysql-connector-java-5.1.24-bin.jar"/>
</library>
<jdbcDriver id="MySQLJDBCDriver" libraryRef="lib"/>


非常感谢所有建议

我想我解决了这个问题-看起来mysql jar文件没有正确加载到Liberty中-我的文件与我在server.xml中指定的版本不同,因此Liberty找不到它。在我看来,这不是一条非常有用的错误消息。

您是否可能在配置中遗漏了一些仍然指向DB2JDBC驱动程序的内容?看起来它试图将com.ibm.ws.jdbc.DataSourceService转换为javax.sql.DataSource的java jdbc标准,MySQL驱动程序实现了该标准。感谢您的评论-我已经检查过了,我认为我的配置中没有提到DB2。以上就是我添加到server.xml的全部内容。我不认为Worklight指定RDBMSLoginModuleAgreed使用哪个数据库,因为我昨天进行了一些快速搜索,发现了一个与上面的示例完全相同的示例。也许你可以发布更多的stacktrace/exception,这可能会提供一个线索。好的,我想我解决了这个问题-看起来mysql jar文件没有正确加载到Liberty中-我的文件与我在server.xml中指定的版本不同。为我辩护——这不是一条非常有用的错误消息……现在,通过将您的答案标记为“已接受”来表扬您自己解决了它——获得表扬!:)显然,我明天只能接受我自己的答案:)