当我尝试将.war文件部署到应用程序服务器时,收到以下错误消息:
错误500:javax.servlet.ServletException:Worklight Console 初始化失败。记录异常:java.lang.RuntimeException: FWLSE0206E:项目/ rmbp无法初始化,因为 数据源的项目数据库模式 jdbc:db2://192.168.1.80:50001 / APPCNTR来自版本N / A,这是 版本6.1.0.00.20131126-0630中的服务器不支持。使用 Worklight ant任务升级项目数据库模式。 [项目rmbp]
我已经做了一些研究并向IBM询问了我们的问题,并回顾了以下类似问题:IBM Worklight 6.1 - Unable to initialize the project due to DB2 error
答案 0 :(得分:3)
您似乎尝试将Worklight运行时安装到APPCNTR数据库。此数据库用于Application Center,与称为WRKLGHT的Worklight运行时数据库无关。
如何安装Worklight war文件:使用服务器配置工具,部署ant脚本(可以在Worklight安装的configuration-samples目录中找到)还是手动安装?
请参阅http://pic.dhe.ibm.com/infocenter/wrklight/v6r1m0/index.jsp?topic=/com.ibm.worklight.deploy.doc/devref/r_ant_tasks_configure_dbs.html,其中说明了如何配置Worklight运行时数据库并部署Worklight运行时war文件。
答案 1 :(得分:2)
错误消息对我来说非常清楚。您似乎已升级Worklight安装,但未升级用于Application Center的数据库方案。
您需要咨询IBM Worklight信息中心。
您没有提到如何将安装升级到v6.1.0,也没有提到您的操作。因此,请参阅以下主题以及有关数据库升级的内容,因为如上所述,APPCNTR数据库的DB2数据库方案似乎没有发生:
答案 2 :(得分:2)
您是否在Websphere Application Server中创建了jdbc连接? WAR文件中的应用程序将需要它来连接数据库。
如果您已完成此操作,则可以检查WAR文件内部并在WEB-INF /文件夹中查找web.xml文件。在我的例子中,我发现文件中有一个jdbc硬编码,例如:
<resource-ref>
<description>Worklight Server Database</description>
<res-ref-name>jdbc/WorklightDS</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
<resource-ref>
<description>Reports Database</description>
<res-ref-name>jdbc/WorklightReportsDS</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
您可以将这些硬编码文件重命名为您在WAS中创建的jdbc的相同名称。
对于数据库问题,您可以按照此链接使用ant进行数据库创建。
如果您按照第一个用于创建DB2的ant脚本有两个不同的数据库,则需要为此行创建新用户(如果尚未创建)。 因为您可以看到,在xml脚本中,将需要用户和密码来创建WRKLGHT数据库。例如:
<db2 database="WRKLGHT" server="proddb.example.com"
user="wl6admin" password="wl6pass">
如果对DB2连接使用非默认端口,则可以在server参数后添加端口号参数。 例如:
端口= “50001”
对于用户创建,您可以点击此链接: