安装在服务器上的 WL 应用程序仍然指向适配器的本地 URL
Posted
技术标签:
【中文标题】安装在服务器上的 WL 应用程序仍然指向适配器的本地 URL【英文标题】:WL App installed on server still pointing to local URL for adapter 【发布时间】:2014-04-23 22:08:30 【问题描述】:我在将一个简单的混合应用程序部署到 WL 6.1 服务器时遇到问题。我正在使用 Configure Worklight Build and Deploy Target 窗口来覆盖本地开发服务器并为测试服务器放入服务器和上下文。在此之后,我进行了构建(我尝试了 构建所有环境 和 在 worklight 开发服务器上运行 选项)并将 .wlapp 文件上传到服务器。问题是,当我的简单应用程序调用部署在同一服务器上的适配器过程时,它总是返回到我的开发服务器。我已经通过停止本地并查看日志中的错误来验证这一点。在更改工作灯地址方面我缺少一个步骤吗?在 5.x 中,您修改了应用程序 xml 以指定这一点。
如果我在 Eclipse 中关闭本地开发服务器,则在日志中,当从远程服务器运行时,我会在我的 chrome 控制台中看到以下内容(注意 xenotp 是我的开发笔记本电脑):
POST http://xenotp:10080/bobCATWLProject/apps/services/api/test/common/query net::ERR_CONNECTION_REFUSED
仅供参考,我正在使用 Worklight Studio 插件 6.1.0.01-20140310-1427 运行 eclipse
【问题讨论】:
【参考方案1】:您的应用部署在哪里?我发现我必须在 XCode 中手动编辑 .plist 文件才能在 ios 中配置正确的服务器设置。
另请参阅此相关帖子:IBM Worklight 6.0 - application uses an incorrect Server URL
【讨论】:
【参考方案2】:我想我现在已经弄清楚了。有两个主要项目。一,我需要将 WL.Client.connect 添加到我的应用程序中。在 WL 5 中,自动连接是默认设置。我不认为这会导致问题,但仍然是良好的内务管理。
二、当您设置Configure Worklight Build and Deploy Target选项时,您只能使用Build All Environments选项生成一个有效的wlapp文件部署到远程服务器。我以为我以前这样做过,但我猜这两者结合(不调用连接)引起了问题。在The Build All Environments command的网上资料中有如下注释:
重要提示:如果您选中了构建应用程序以使用 配置 Worklight 构建中的不同 Worklight 服务器选项和 部署目标对话框,然后此菜单选项触发构建使用 Worklight Server 信息,并通过测试识别它 服务器设置。如果清除此选项,则使用 为指定的测试服务器构建设置。
我确实了解到,如果您搞砸并上传了一个不是为远程服务器构建的 wlapp 文件,您的项目文件会收到一堆 404。
我能够构建一个 android 应用程序并从设备运行它并连接到远程服务器。通过 DDMS 日志验证。
【讨论】:
以上是在windows box上完成的。我在 OSX 上遇到过类似的问题,但这并不能解决它。其他问题请见***.com/questions/23378925/…。以上是关于安装在服务器上的 WL 应用程序仍然指向适配器的本地 URL的主要内容,如果未能解决你的问题,请参考以下文章
如何最好地测试(单元测试)独立于 WL 应用程序的 WL 适配器? + Jasmine 测试:不能使用“in”运算符在 null 中搜索“SUPPORT_COOKIES”
Worklight 6.1-在调用适配器时,此记录“wl_antiXSRFRealm 质询处理程序的等待列表”是啥意思
Worklight Clustering 如何在 WAS Liberty Core 中工作?
WL6.1 使用 dataSourceJNDIName 部署 sql 适配器给出错误 Runtime: Datasource not found in jndi