0

我有一台从 IBM Worklight 6.0 升级到 IBM Mobilefirst 6.3 的服务器

服务器当前正在运行我的移动应用程序的旧版本,它没有启用 AppAuthenticity。

当我上传较新版本的应用程序时,AppAuthenticity 选项仅针对一个(Windows)环境启用,而其他环境则保持禁用状态。

重新启动后,Windows 环境版本变得和其他版本一样,而 iPAD 环境开始提供更改 AppAuthenticity 的选项。

我通过 WLADM CLI 列出了应用程序,它给了我以下错误:

XML 验证错误,从 https://URL/wladmin/management-apis/1.0/runtimes/worklight/applications/MYAPPS?locale=en_US读取:cvc-complex-type.4:属性“downloadLink”必须出现在元素“applicationEnvironmentDataAccess”上'。

请注意,如果应用程序在其他服务器上单独运行,则使用相同的应用程序描述符和 WAR 文件可以正常工作,只有在同一服务器上上传新旧版本时,才会出现此问题。

4

2 回答 2

1

你是说你的服务器有一个 .war 文件,上面有 2 个应用程序,一个来自 6.0,一个来自 6.3?

6.0 和 6.3 中有非常不同的应用程序真实性保护实现。这些不能共存于一个 .war 文件中。

您需要将 2 个 .war 文件部署到您的应用程序服务器 - 一个用于处理 6.0 应用程序,另一个用于处理 6.3 应用程序。

相关用户文档可以在这里阅读:http ://www-01.ibm.com/support/knowledgecenter/SSHS8R_6.3.0/com.ibm.worklight.upgrade.doc/devenv/c_upgrade_to_srvr_in_production_env.html

于 2015-07-14T19:42:18.083 回答
0

正如 Idan 所说,6.0 和 6.3 应用程序不能一起处理,因为我只想在较新版本中启用 App Authenticity,我做的解决方法是通过 WLADM 工具连接并通过禁用旧版本的 App Authenticity命令行。

以下是需要使用的命令:

\Worklight\shortcuts>wladm --url=https://server.url/wladmin --user=admin --passwordfile=password.properties

验证应用程序的当前真实性:

app version %CONTEXT% %APP_NAME% %Environment_Name% %versionCode% get authenticitycheckrule

禁用

app version %CONTEXT% %APP_NAME% %Environment_Name% %versionCode% set authenticitycheckrule DISABLED
于 2015-12-15T08:15:41.557 回答