IBM Worklight 6.0 - 无法访问 Worklight 服务器

Posted

技术标签:

【中文标题】IBM Worklight 6.0 - 无法访问 Worklight 服务器【英文标题】:IBM Worklight 6.0 - Worklight Server not reachable 【发布时间】:2013-07-21 04:47:45 【问题描述】:

当我尝试通过右键单击应用程序名称来构建和部署我的应用程序时 -> 运行方式 -> 构建全部并部署...我在控制台中收到一条失败通知:

未能将应用程序部署到 Worklight 服务器:请验证 Worklight 服务器已启动且可访问。

我先安装了Eclipse Juno,然后在里面安装了Worklight V6的插件。是否需要通过其他方式安装 Worklight 服务器?

这是整个日志:

[2013-07-21 09:55:04] FWLPL0001W:服务器尚未启动。建立可能 初审失败。 [2013-07-21 09:55:13] 开始构建 流程:应用程序'HelloWorklightApp',所有环境[2013-07-21 09:55:14] FWLPL0010W:从目标服务器检测到“localhost” 配置。使用主机的主 IP 地址, 101.218.109.86,用于构建 Worklight 应用程序。考虑使用完全限定的主机名(避免使用“localhost”)或有效的 IP 而是地址。该值可以通过打开 Worklight Development Server 的配置编辑器来自 “服务器”视图。 [2013-07-21 09:55:16] 申请 已完成所有环境构建的“HelloWorklightApp”。 [2013-07-21 09:55:16] 部署应用程序“HelloWorklightApp” Worklight Server 的所有环境... [2013-07-21 09:55:38] 未能将应用程序部署到 Worklight 服务器:请验证 Worklight 服务器已启动且可访问。

这是我启动服务器时得到的整个日志-

[AUDIT ] CWWKE0001I: 服务器工作灯已启动。 [错误 ] CWWKO0030E: 启动链时产生异常 CHAIN-defaultHttpEndpoint 因为异常 com.ibm.wsspi.channelfw.exception.ChannelException:TCP 通道: defaultHttpEndpoint- 启动频道时出现问题:无法 建立环回连接 [AUDIT] CWWKZ0058I: 监控 应用程序的dropins。 [AUDIT] CWWKF0011I:服务器工作灯 已准备好运行一个更智能的星球。 [审核] CWWKZ0022W:应用程序 _MobileBrowserSimulator 未在 30.002 秒内启动。 [AUDIT ] CWWKZ0022W: 应用程序 HelloWorklightProject 尚未启动 30.001 秒。 [AUDIT] CWWKG0016I: 正在启动服务器配置更新。 [AUDIT ] CWWKG0018I: 服务器配置不正确 更新。未检测到功能变化。 [审核] CWWKG0016I: 开始服务器配置更新。 [审核] CWWKG0017I: 服务器配置在 0.043 秒内成功更新。 [审计 ] CWWKZ0022W: 应用程序 TestWorklightProject 尚未启动 30.002 秒。

更改prt和IP地址后登录-

Launching worklight (WebSphere Application Server 8.5.5.0/wlp-1.0.3.20130524-0951) on Java HotSpot(TM) 64-Bit Server VM, version 1.6.0_45-b06 (en_IN)
[AUDIT   ] CWWKE0001I: The server worklight has been launched.
[ERROR   ] CWWKO0221E: TCP Channel defaultHttpEndpoint initialization did not succeed.  The socket bind did not succeed for host 10.0.0.1 and port 8080.  The port might already be in use.
[AUDIT   ] CWWKZ0058I: Monitoring dropins for applications. 
[err] 255  WorklightPU  WARN   [Scheduled Executor-thread-1] openjpa.Runtime - An error occurred while registering a ClassTransformer with PersistenceUnitInfo: name 'WorklightPU', root URL [file:/C:/Users/Anil%20kumar/workspace/WorklightServerConfig/shared/resources/worklight-jee-library-6.0.0.jar]. The error has been consumed. To see it, set your openjpa.Runtime log level to TRACE. Load-time class transformation will not be available.
[err] 2256  WorklightPU  INFO   [Scheduled Executor-thread-1] openjpa.Runtime - Starting OpenJPA 1.2.2
[err] 2850  WorklightPU  INFO   [Scheduled Executor-thread-1] openjpa.jdbc.JDBC - Using dictionary class "org.apache.openjpa.jdbc.sql.HSQLDictionary".
[err] 1  WorklightReportsPU  WARN   [Scheduled Executor-thread-1] openjpa.Runtime - An error occurred while registering a ClassTransformer with PersistenceUnitInfo: name 'WorklightReportsPU', root URL [file:/C:/Users/Anil%20kumar/workspace/WorklightServerConfig/shared/resources/worklight-jee-library-6.0.0.jar]. The error has been consumed. To see it, set your openjpa.Runtime log level to TRACE. Load-time class transformation will not be available.
[AUDIT   ] CWWKF0011I: The server worklight is ready to run a smarter planet.
[err] 1  WorklightPU  WARN   [Scheduled Executor-thread-1] openjpa.Runtime - An error occurred while registering a ClassTransformer with PersistenceUnitInfo: name 'WorklightPU', root URL [file:/C:/Users/Anil%20kumar/workspace/WorklightServerConfig/shared/resources/worklight-jee-library-6.0.0.jar]. The error has been consumed. To see it, set your openjpa.Runtime log level to TRACE. Load-time class transformation will not be available.
[err] 214  WorklightPU  INFO   [Scheduled Executor-thread-1] openjpa.Runtime - Starting OpenJPA 1.2.2
[err] 216  WorklightPU  INFO   [Scheduled Executor-thread-1] openjpa.jdbc.JDBC - Using dictionary class "org.apache.openjpa.jdbc.sql.HSQLDictionary".
[err] 0  WorklightReportsPU  WARN   [Scheduled Executor-thread-1] openjpa.Runtime - An error occurred while registering a ClassTransformer with PersistenceUnitInfo: name 'WorklightReportsPU', root URL [file:/C:/Users/Anil%20kumar/workspace/WorklightServerConfig/shared/resources/worklight-jee-library-6.0.0.jar]. The error has been consumed. To see it, set your openjpa.Runtime log level to TRACE. Load-time class transformation will not be available.
[AUDIT   ] CWWKZ0022W: Application _MobileBrowserSimulator has not started in 33.066 seconds.
[AUDIT   ] CWWKZ0022W: Application TestWorklightProject has not started in 31.548 seconds.
[AUDIT   ] CWWKZ0022W: Application HelloWorklightProject has not started in 30.002 seconds.

【问题讨论】:

【参考方案1】:

几个建议:

    同样的问题is also reported here。按照那里的说明进行操作。 确保未使用默认端口号 10080

    创建新的 Worklight 项目和应用程序之后

    转到 Eclipse 中的 Servers 视图并启动服务器(不要构建应用程序);看看它是否正确加载 您可以查看 Worklight Development Server 控制台视图中的日志

    Full size image

    查看更改主机值是否有帮助。您也可以在此处更改端口,以防 10080 被占用而您因任何原因无法释放它。

    Full size image

【讨论】:

您好 Idan,我想按照您的建议启动服务器,但我没有通过右键单击 Worklight Development 服务器下的“服务器”视图来执行此操作。你能告诉我这样做的步骤吗?我是 Worklight V6 的新手,非常感谢您在这方面的帮助。 要从 Eclipse 中的服务器视图启动服务器,只需单击绿色的播放按钮。 是否需要配置一些东西以便绿色箭头按钮运行服务器,因为当我点击它时,它会打开一个窗口来创建、管理和运行配置。 :( 除了查看正确的视图外,没有什么可配置的。请仔细看图;您没有单击正确的“播放”按钮。按 Ctrl+3 并搜索“servers”,确保您在 SERVERS 视图中。 这是我启动服务器时得到的整个日志-【参考方案2】:

这也可能是由您的工作站上运行的多个网络引起的。我发现安装了 VMWare 会导致 Worklight 的构建方面感到困惑。它在您的主机 LAN 端口上启动服务器,然后在尝试部署应用程序时查找“localhost”,在我的机器上,这将获取 VMWare LAN 适配器的 IP 地址。

双击服务器并将“主机名:”字段更改为您本地 LAN 的 IP 地址。

如果我在尝试构建和部署时看到以下内容,我知道我遇到了问题: FWLPL0010W: 从目标服务器配置中检测到“localhost”。使用主机的主 IP 地址 192.168.10.1 来构建 Worklight 应用程序。考虑使用完全限定的主机名(避免使用“localhost”)或有效的 IP 地址。可以通过从“服务器”视图打开 Worklight Development Server 的配置编辑器来修改该值。

【讨论】:

【参考方案3】:

我不知道有多少人面临此类问题,并且他们的 Worklight 服务器无法正常工作,但我采取了几个步骤来解决我的问题。

1) 删除了我的整个 Eclipse 文件夹。

2) 从我从 Eclipse 站点下载的压缩文件中再次提取 Eclipse 文件夹。

3) 使用 Eclipse 的“帮助”选项卡中的“安装新软件”选项安装了 Worklight v6 插件。 此链接提供了使用此过程安装的更多详细信息-

http://www.ibm.com/developerworks/mobile/worklight/download/install.html

我的建议是不要使用 Eclipse Marketplace 安装插件,因为我遇到了麻烦 在我的两个系统中使用它。

4) 重启 Eclipse 并检查。

【讨论】:

从哪里得到worklight的zip文件,请提供链接。【参考方案4】:

就我而言,这是一个代理问题。检查您是否在 IE 工具->连接->局域网设置中配置了代理。 我必须禁用它才能使部署工作。

【讨论】:

【参考方案5】:

我面临同样的问题,但在我的情况下,问题是我使用了 Jre 1.8。因此,通过检查所有可能的结果,我最终以休闲方式更改了 jre7 路径。

实际上 IBM Worklight 需要 JRE 和 JDK 1.7(7)

    在 Worklight Studio 中,打开 服务器 视图。 双击 Worklight Development Server 打开概览页面。 在Overview页面点击Runtime Environment 在 JRE 窗格中的 Runtime Environment 窗口中单击 Configure JREs..., 它显示首选项窗口,点击添加按钮。 它显示另一个名为 Add JRE 的窗口,其中选择 Standard VM 并单击 next,在 JRE Definition 中单击 Dictionary JRE Home的,现在选择1.7 JRE路径然后点击next然后点击finishPreferences窗口勾选jre7并点击OK,最后点击Finish并重启Eclipse

现在在 Worklight 开发服务器上运行您的应用程序。

【讨论】:

以上是关于IBM Worklight 6.0 - 无法访问 Worklight 服务器的主要内容,如果未能解决你的问题,请参考以下文章

IBM Worklight 6.0 - 如何访问 Application Center 管理控制台

IBM Worklight 6.0 - 无法更改默认 WL.BusyIndi​​cator 文本

IBM Worklight 6.0 - 无法将应用程序发布到 Application Center?

IBM Worklight 6.0 - 无法在 avd 上使用适用于 android 环境的 dojo 工具包运行示例混合 Worklight 应用程序?

IBM Worklight 6.0 - 适配器身份验证失败:“服务器无法处理来自应用程序的请求”

IBM Worklight 6.0 - WL.TabBar.addItem 标题参数无法正确使用“null”作为值