Worklight 6 升级失控

Posted

技术标签:

【中文标题】Worklight 6 升级失控【英文标题】:Worklight 6 upgrade going haywire 【发布时间】:2013-12-07 20:35:41 【问题描述】:

我们目前正在将我们的 Studio 和 Server 实例从 Worklight 5.0.6 升级到 Worklight 6。我正在使用以下中间件在新安装的 RHEL 6 映像上设置服务器端。服务器安装说明(在图像中已经完成的内容之外)遵循了 IBM 官方 WL6 文档中的 T

WebSphere Application Server Liberty Profile 8.5 带有修订包 8 的 DB2 V9.7 工作灯 6.0.0

Studio 升级很顺利,所以没有问题。当我尝试实际访问应用程序控制台,甚至是安装的 appcenter 战争时,该错误正在服务器端发生。在这两种情况下,JPA 实体资源都没有出现,因此在尝试访问我的控制台时出现以下错误:

[WARNING ] CWNEN0070W: The javax.annotation.Resource annotation class will not be   
recognized because it was loaded from the null location rather than from a product 
class  loader.
[err] 22  WorklightPU  WARN   [Default Executor-thread-1] openjpa.Runtime - An error     
occurred while registering a ClassTransformer with PersistenceUnitInfo: name 'WorklightPU'

安装的映像是在公司预先安装了 WL6 和 WLP 的 VM 上创建的。我手动安装了 DB2,并创建了所有必要的用户、组和配置以确保连接性。然后我运行 WL6 提供的 DB2 配置 ant 任务,以确保正确创建 WorkLight 和 Appcenter 的表,构建成功。然后我也运行了安装任务。构建成功。

这里是添加了敏感信息的 server.xml 配置,所有这些都是使用 ant 构建脚本创建的。

<!-- Declare the IBM Worklight Console application. -->
<application id="worklight" name="worklight" location="worklight.war" type="war">
    <classloader delegation="parentLast">
        <commonLibrary>
            <fileset dir="$shared.resource.dir/worklight/lib" includes="worklight-jee-library.jar"/>
        </commonLibrary>
    </classloader>
</application>

以及 JDBC DB 连接配置

<!-- Declare the jar files for DB2 access through JDBC. -->
<library id="worklight/DB2Lib">
    <fileset dir="$shared.resource.dir/worklight/db2" includes="*.jar"/>
</library>

<!-- Declare the IBM Worklight Console database. -->
<dataSource jndiName="worklight/jdbc/WorklightDS" transactional="false">
    <jdbcDriver libraryRef="worklight/DB2Lib"/>
    <properties.db2.jcc databaseName="WRKLGHT" serverName="db2server.site.com" portNumber="50000" user="user" password="password"/>
</dataSource>

<!-- Declare the IBM Worklight Console Reports database. -->
<dataSource jndiName="worklight/jdbc/WorklightReportsDS" transactional="false">
    <jdbcDriver libraryRef="worklight/DB2Lib"/>
    <properties.db2.jcc databaseName="WLREPORT" serverName="db2server.site.com" portNumber="50000" user="user" password="password"/>
</dataSource>

如果需要,我还可以编辑此问题以包含来自与我的自定义战争关联的 worklight.properties 文件的必要信息。我非常感谢任何帮助!

我希望这个链接对我有帮助,但它是针对一个完全不同的问题(以及旧版本的 worklight,因为修复程序说“此 APAR 的修复程序当前的目标是包含在 fixpack 5.0.6.0 中。”)@ 987654321@

编辑:跟踪这很可能是一个数据库问题。我们收到如下消息: 添加小工具活动报告失败 以及与 JDBC 连接无效相关的其他错误......即使它们是由 WL ANT 脚本设置的错误

【问题讨论】:

您的 Liberty 配置文件中是否启用了 JPA 功能?如果是的话,你可以尝试一下吗? 升级后是否重启了 Liberty? 我们从某个公司的某个团队提供给我们的现有 RHEL 映像进行了全新安装,因此它不是升级的一部分。 JPA 没有按原样使用,所以我不确定为什么会出现这个错误。您想查看哪些日志?感谢您的帮助! 应用服务器的logs文件夹中的所有日志? 当然,您的客户/业务伙伴只需打开 PMR,这肯定是获得 IBM 帮助的官方方式... 【参考方案1】:

设法通过从映像中删除所有内容并自行安装来解决此问题。

【讨论】:

以上是关于Worklight 6 升级失控的主要内容,如果未能解决你的问题,请参考以下文章

将项目从 WorkLight 6.2 升级到 MobileFirst 7.1

IBM Worklight 6.1 - 关于在项目中升级 Cordova 的问题

从 Worklight 6.2 升级生产 MobileFirst 7 服务器,适配器调用不起作用

IBM Worklight 6.1 - 升级到 v6.1 后,iOS 5 中的适配器调用失败

Worklight 6.1 到 Mobilefirst 7.1 数据库迁移问题

IBM Worklight 6.1 - 无法重新生成 iPhone 本机文件夹