XML验证错误Mobilefirst App真实性

时间:2015-07-13 12:14:02

标签: ibm-mobilefirst mobilefirst-server mobilefirst-cli

我有一台已从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'

请注意,如果在其他服务器上单独运行的应用程序在使用相同的Application-descriptor和WAR文件时工作正常,只有当旧版本和新版本上载到同一台服务器上时,才出现此问题。

2 个答案:

答案 0 :(得分: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

答案 1 :(得分:0)

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

以下是需要使用的命令:

\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