Java Worklight 6升级失控

Java Worklight 6升级失控,java,jpa,ibm-mobilefirst,websphere-liberty,Java,Jpa,Ibm Mobilefirst,Websphere Liberty,我们目前正在将Studio和服务器实例从Worklight 5.0.6升级到Worklight 6。我正在使用以下中间件在新安装的RHEL 6映像上设置服务器端。服务器安装说明(在图中已经完成的操作之外)遵循来自官方IBMDocsforWL6的T <!-- Declare the jar files for DB2 access through JDBC. --> <library id="worklight/DB2Lib"> <fileset dir="$

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

<!-- 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>
WebSphere Application Server Liberty Profile 8.5 带有fixpack 8的DB2V9.7 Worklight 6.0.0

<!-- 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>
Studio升级顺利,因此没有问题。当我试图实际访问应用程序控制台,甚至是已安装的appcenter war时,错误发生在服务器端。在这两种情况下,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'
<!-- 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>
安装的映像是在公司预装了WL6和WLP的VM上创建的。我手动安装了DB2,并创建了所有必要的用户、组和配置,以确保连接性。然后,我运行了WL6提供的DB2配置ant任务,以确保WorkLight和Appcenter的表创建正确,构建成功。然后,我还运行了安装任务。建设成功

<!-- 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>
下面是添加了敏感信息的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>
<!-- 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>

<!-- 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>
编辑:很可能是数据库问题。我们收到的信息如下: 添加小工具活动报告失败
以及其他与JDBC连接无效相关的错误…即使它们是WL ANT脚本seutp处理的错误

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

您的Liberty配置文件中是否启用了JPA功能?如果是的话,你能试用一下吗?升级后你重新启动Liberty了吗?我们重新安装了一个RHEL镜像,这个镜像是由某公司的某个团队提供给我们的,所以它不是升级的一部分。JPA没有按原样使用,所以我不确定为什么会出现这种错误。您想查看哪些日志?谢谢你的帮助!应用服务器的logs文件夹中的所有日志?当然,您的客户/业务合作伙伴可以打开PMR,这是从IBM获得帮助的正式方式。。。
<!-- 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>