问题标签 [worklight-adapters]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
worklight-adapters - 诊断 Worklight 6 SQL 适配器问题、JPA 跟踪
Worklight Studio 6,SQL 适配器尝试连接到 DB2 数据库。
程序的标准模式
当我调用我的程序时,我看到了这个错误
[错误] FWLSE0035E: 调用过程“SqlStatement”失败。[project Infrabel01] 类型“函数”当前不支持编组为 JSON。
日志显示
[err] 0 WorklightPU WARN [Scheduled Executor-thread-1] openjpa.Runtime - 使用 PersistenceUnitInfo 注册 ClassTransformer 时出错:名称“WorklightPU”,根 URL [file:/C:/djna-nobackup/Workspaces/WL6。 0/01/WorklightServerConfig/shared/resources/worklight-jee-library-6.0.0.jar]。错误已被消耗。要查看它,请将您的 openjpa.Runtime 日志级别设置为 TRACE。加载时类转换将不可用。
如何诊断?如何在工作灯中设置跟踪级别?
JPA 文档说:
属性名称="openjpa.Log" 值="DefaultLevel=WARN,运行时=INFO,工具=INFO,SQL=TRACE"
但是在哪里把它放在工作灯里呢?
oauth - 如何在 IBM Worklight 6.0 中实现 OAUTH 2.0
在我的应用程序中,我通过实现安全领域实现了登录模块身份验证安全性。但我正在考虑实施 OAUTH2.0 身份验证,一旦我获得令牌并重新验证,用户将在应用程序启动时进行身份验证。
因此,请指导实施此操作的先决条件是什么。我可以通过创建自定义身份验证模块来实现这一点吗?任何指南示例代码都会非常有帮助。
ibm-mobilefirst - IBM Worklight - securityTest="wl_unprotected" 导致适配器无法工作
我正在调用一个公共适配器过程并已分配securityTest="wl_unprotected"
给它。如果我通过 URL 调用该过程,它可以正常工作,但是当从设备/应用程序调用时,它就无法正常工作......
可能是什么原因?
ibm-mobilefirst - IBM Worklight 6.0 - 适配器身份验证失败:“服务器无法处理来自应用程序的请求”
环境配置:
- Windows Server 2008 R2 企业版
- WebSphere 应用服务器 v7
- Worklight 服务器 v6
- Derby 数据库(默认通过 Worklight Installation Manager 安装)
在我的 Worklight 生产服务器上部署我的应用程序和适配器后,当我使用 Worklight Console 的 MBS(iPad 环境)测试我的应用程序时,我收到以下错误:
getNewsFeed_CallbackFailure 响应 :: {"status":500,"invocationContext":null,"errorCode":"UNEXPECTED_ERROR","errorMsg":"服务器无法处理来自应用程序的请求。请稍后再试。"}
当我的 DB2Adapter 的过程失败时在哪里getNewFeed_CallbackFailure
调用。newsFeed
我的 Websphere 中有这个错误SystemOut.log
:
日志文件的前 3 行来自我的自定义身份验证登录模块:
除此之外,我在 Worklight 开发服务器上没有任何错误……适配器的工作原理就像一个魅力。
ibm-mobilefirst - 使用基于 Worklight 适配器的身份验证时如何获取正在注销的用户的 userIdentity
我目前正在为我的 Worklight 应用程序实施基于适配器的身份验证。作为记录,我使用的是 Worklight 版本 5.0.6.1。
正如文档中似乎建议的那样,我想做的是在我的身份验证适配器的“注销”功能中执行一些清理。
因此,在 Worklight 框架自动调用的注销函数中,我想检索保存有关正在注销的用户的信息的 userIdentity 对象。我试图通过调用“WL.Server.getActiveUser()”来实现这一点,但在注销功能中似乎无法做到这一点。
我可以在日志中看到以下异常(WebSphere App Server 7):
这背后的想法是我想调用一个外部 REST 服务,该服务将在数据库中执行一些清理,并且我需要将移动应用程序 userId 作为该服务的参数传递。
有人可以提供一些最佳实践,以检索从身份验证适配器注销功能内部注销的用户的身份吗?
谢谢。
ibm-mobilefirst - IBM Worklight 与 HttpAdapter 的连接正在重置
在我的应用程序中,我正在调用 Http Adapter 过程以执行某些操作。该过程并非每次调用时都有效。有时它与服务器的连接会重置,有时会给出完美的响应。有人请告诉我这可能是什么原因以及如何处理这个?
这是我在 Worklight 控制台中遇到的异常,
session - 在多个设备上看到 Worklight Session
使用 HTTP 适配器在工作灯中创建一个简单的多页表单。当两个用户同时尝试创建帐户时。最后启动该过程的用户将在其他用户设备上看到他们的数据。看起来他们正在共享同一个会话。
这听起来像任何人以前见过的东西吗?
ibm-mobilefirst - 向 IBM Worklight 添加虚拟身份验证以创建新会话
拥有一个多页表单,允许用户通过我们的 worklight mobilewebapp 注册卡。
对此没有身份验证,因为它只是一个基于 Web 的表单,它使用适配器将信息返回到服务器并继续整个过程。显然这很糟糕,如果客户端同时启动该进程,它们将共享同一个会话。基本上,如果两个或更多设备同时开始注册过程,最后一个启动的设备会将数据交叉传输到另一个客户端,并从前一个客户端获取数据和信息。
我被告知要在每个过程调用中添加 connectAs="endUser" 但这需要我们没有使用的身份验证。有没有人有一个简单的程序可以在会话开始时添加以确保每个会话都是唯一的并且不会发生这个问题?
ibm-mobilefirst - IBM Worklight - JSONStore 逻辑,用于从服务器刷新数据并能够脱机工作
目前 JSONStore API 提供了一个 load() 方法,在文档中说:
此函数始终存储从适配器返回的任何内容。如果数据存在,则在集合中重复”。这意味着如果您想通过调用 load() 对已填充的集合来避免重复,则需要先清空或删除集合。但是如果您希望能够为了在没有更多连接并且您的应用程序进入离线模式的情况下保留集合中已有的元素,您还需要跟踪这些现有元素。
由于 API 没有提供“覆盖”选项来替换现有元素,以防对适配器的调用成功,我想知道应该放置什么样的逻辑来管理数据的离线可用性和随时刷新的能力?由于承诺,通过嵌套 JS 代码来管理所有失败案例并不是那么明显......
感谢您的建议!
push-notification - 在 IBM Worklight 推送通知中使用轮询时出现问题
我正在使用 Android 设备尝试 WL 6.0 推送通知。推送通知工作正常。我也尝试使用轮询。根据信息中心的文档,
对于轮询,我们需要调用另一个过程,并且在某些时间间隔后,当我们从该过程中获得响应时,方法推送完成。如果我错了,请纠正我。
因此,按照这个我已经声明了一个名为getNotificationsFromBackend
并调用它的新过程。
像这样
现在,我面临的问题是当我点击Subscribe
(来自示例应用程序)时,控制台说它无法找到适配器。不知道怎么回事,请帮帮我。
我在控制台中得到这个,