Ibm mobilefirst 由于Derby数据库故障,Worklight 6.1应用程序无法启动

Ibm mobilefirst 由于Derby数据库故障,Worklight 6.1应用程序无法启动,ibm-mobilefirst,derby,worklight-server,Ibm Mobilefirst,Derby,Worklight Server,我正在使用: WL 6.1 Derby as数据库 7岁 我所做的: 为创建2个数据库执行了手动步骤(使用正确的架构) 创建2个数据源并从WAS7 web管理控制台进行测试(所有工作正常) 在WAS7启动时,我收到了WL应用程序无法启动的错误消息 [18.4.14 20.40.18:503]00000000 ResourceMgrIm I WSVR0049I:将Worklight数据库绑定为jdbc/WorklightDS [18.4.14 20.40.18:507]00000000 Re

我正在使用:

  • WL 6.1
  • Derby as数据库
  • 7岁
  • 我所做的:

  • 为创建2个数据库执行了手动步骤(使用正确的架构)
  • 创建2个数据源并从WAS7 web管理控制台进行测试(所有工作正常)
  • 在WAS7启动时,我收到了WL应用程序无法启动的错误消息

    
    [18.4.14 20.40.18:503]00000000 ResourceMgrIm I WSVR0049I:将Worklight数据库绑定为jdbc/WorklightDS
    [18.4.14 20.40.18:507]00000000 ResourceMgrIm I WSVR0049I:将Worklight报告数据库绑定为jdbc/WorklightReportsDS
    ...
    org.springframework.beans.factory.BeanCreationException:创建名为“txManager”的bean时出错,该名称在URL[wsjar:file:/C:/IBM/Worklight/WorklightServer/Worklight jee library.jar!/conf/core.xml]:设置bean属性“entityManagerFactory”时无法解析对bean“brokerSessionFactory”的引用;嵌套的异常是org.springframework.beans.factory.BeanCreationException:创建名为“brokerSessionFactory”的bean时出错,该名称在URL[wsjar:file:/C:/IBM/Worklight/WorklightServer/Worklight jee library.jar!/conf/spring server core.xml]中定义:设置bean属性“dataSource”时无法解析对bean“rssBrokerDS”的引用;嵌套的异常是org.springframework.beans.factory.BeanCreationException:创建名为“rssBrokerDS”的bean时出错,该名称在URL[wsjar:file:/C:/IBM/Worklight/WorklightServer/Worklight jee library.jar!/conf/spring server core.xml]:设置bean属性“targetDataSource”时无法解析对bean“Worklight direct”的引用;嵌套异常为org.springframework.beans.factory.beancreatitionException:创建名为“worklight direct”的bean时出错,该名称在URL[wsjar:file:/C:/IBM/worklight/WorklightServer/worklight jee library.jar!/conf/spring server core.xml]中定义:初始化方法调用失败;嵌套异常为java.lang.RuntimeException:FWLSE0206E:项目/MyProject未能初始化,因为数据源jdbc:derby:C:\ProgramData\IBM\Worklight\derby_1\WRKLGHT的项目数据库架构来自版本N/A,版本6.1.0.00.20131126-0630的服务器不支持该模式。使用Worklight ant任务升级项目数据库架构。[项目MyProject]
    位于org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:275)
    在org.springframework.beans.factory.support.BeanDefinitionValueResolver.ResolveValueIfNeeded上(BeanDefinitionValueResolver.java:104)


    我能够通过在was数据源中提供与架构名称相等的自定义属性“name”来修复异常。架构名称实际上可以不同。例如,WL 6.1 DDL脚本将其定义为WRKSCHM,但WL 6.1信息中心将其定义为WORKLIGHT


    因此,我更喜欢WORKLIGHT作为模式名,并重新运行DDL脚本。之后,我在资源>JDBC>数据源>Worklight数据库>自定义属性中添加了“name”自定义属性,如图所示。

    请上传完整日志以及Worklight.properties文件,以便进一步调查我添加了Worklight.properties的DB部分。基本上它没有改变,因为DB是通过JNDI查找访问的,不需要密码/用户ID。WAS日志不包含任何附加信息,只是发布的片段重复了多次。我认为WL可能会失败,因为它可能从DB用户名派生DB架构名称。我不能确定,因为我不是WL的作者。或者,换言之,我如何为WL数据库明确定义模式名?是否假定它是显式定义的?如果不发出SET SCHEMA语句,默认模式将设置为用于连接数据库的用户名。