iPhone 上的 Lotus 本机应用程序
如何使 Lotus 应用程序成为 iPhone 原生应用程序? 例如:eLeave。
表单中的提交或批准操作按钮是使用 Lotusscript 创建的。那么它如何在 iOS 中工作呢?我不知道如何将我的 Lotus 应用程序扩展到 iPhone 本机应用程序。有人建议使用 SOAP 或通过 HTTP 的 REST 在 iOS 和 domino 之间进行通信。但我什至不知道我可以在我的应用程序中使用 SOAP 做什么。 请帮忙。
How can i make a lotus application an iPhone native apps?
For e.g: eLeave.
The submit or approve action button in the form was created using lotusscript. So how can it work in iOS ? I have no idea how can i extend my lotus application to an iPhone Native Apps. Someone had suggested to use either SOAP or REST via HTTP to communicate between iOS and domino. But i don't even know what can i do with SOAP in my apps.
Pls help.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
关于 SOAP 或其他基于 HTTP 的数据访问方式的建议是正确的。由于您不能仅将 Notes 应用程序移植到 iPhone(出于多种原因)或使用 Notes Java API 类(因为 iPhone 没有 Java),因此某种形式的 HTTP 访问是您的最佳选择。通过表单或 XPages 进行传统的 Domino Web 访问很可能是最好的方法,因为这样您就可以在 Designer 中编写 UI。如果出于某种原因您不想或不能这样做,那么您就需要单独为 iOS 应用程序编写 UI,然后通过 Web 服务或 REST 功能连接到 Domino。
SOAP Web 服务可能就是您想要的。它们的优点是直接在 Designer 中得到支持 - 您可以使用 LotusScript 或 Java 创建 Web 服务提供者,就像编写代理或脚本库一样。您必须编写方法来访问和更新所需的数据,但这也意味着您可以完全控制所发生的情况。您可以将表单提交代码重新实现为 Web 服务调用,该调用将更改的数据作为参数,然后执行您想要的任何操作并创建/保存文档。
The suggestions along the lines of SOAP or other HTTP-based access to the data are correct. Since you can't just port a Notes app to the iPhone (for a variety of reasons) or use the Notes Java API classes (since the iPhone doesn't have Java), some form of HTTP access is your best bet. Either traditional Domino web access via forms or XPages are most likely the best way to go, since then you can write your UI in Designer. If you don't want to or can't do that for whatever reason, you're on the hook for writing the UI for your iOS app separately and then connecting to Domino via Web Services or REST functionality.
SOAP Web Services are probably what you want. They have the advantage of being supported directly in Designer - you can create a Web Service Provider in LotusScript or Java in much the same way you would write an Agent or Script Library. You would have to write methods to access and update the data you want, but it would also mean you have full control over what happens. You could re-implement your form-submission code as a web service call that takes the changed data as parameters and then does whatever manipulation you want and creates/saves the document.
它确实取决于您正在运行的 Lotus/Domino 版本。这可能是XPages Mobile Controls的开始,我不确定这里的“本机”。这是 XPages,基于网络。
根据您的评论,我知道一个本机应用程序 TSAzr。该应用程序使用 XPage 作为 domino 服务器上的 Web 服务。可以在此处找到更多信息 dominoGuru
It does depend on the version of Lotus/Domino you are running. This could be a start XPages Mobile Controls I am not sure about the "native"here. This is XPages, web based.
Based on your comment, I know of one native application TSAzr. This application uses XPages as web-services on the domino server. A bit more info can be found here dominoGuru
您的后续行动表明,针对移动设备优化的 Web 应用程序无法满足您的需求,因此您需要一个本机应用程序。这意味着编写一个新的 iOS 应用程序,故事就结束了。当然,有不同的方法可以实现这一点,例如,您可以构建一个 Web 应用程序,然后使用 Appcelerator Titanium 或 PhoneGap 之类的东西对其进行包装,但最终,您需要编写一些东西。
正如 @Jesse Gallagher 已经指出的那样,Notes 应用程序无法直接移植到 iOS 设备。除此之外,Lotus Notes 客户端应用程序是一个专有数据存储 (NSF),位于为相关底层平台(Win 或 OS X)构建和编译的基于 C 和 C++ 的客户端中。除了重新编码您的应用程序之外,iOS 没有直接的类似物(当然,您可以通过 Web 服务调用重新使用现有的 Lotusscript 业务逻辑,如前面的答案中详述)。
Your follow-up suggests that a mobile-optimised web application will not cut it, and that you want a native application. This means writing a new iOS application, end of story. There are different ways to go about this of course—e.g. you could build a web app and then wrapper it using something like Appcelerator Titanium, or PhoneGap—but ultimately, you need to write something.
As @Jesse Gallagher has already stated, Notes applications can't be ported directly to an iOS device. Apart from anything else, a Lotus Notes client application is a proprietary data store (NSF) sitting within a C and C++-based client built and compiled for the relevant underlying platform (Win or OS X). There is no direct analogue for iOS other than re-coding your app (of course, you could re-use the existing Lotusscript business logic via web service calls, as detailed in earlier answers).