xpages - 在 XPage 中存储和检索长字符串
问题描述
我想在 Xpages 上使用长字符串(最小大小:100kb)。我认为存储大字符串的最佳方法是在“富文本”类型的数据字段中。现在我被这个字符串的数据处理困住了。如何在服务器和客户端之间传输此字符串?
到目前为止,我尝试过:
数据绑定控件:富文本字段(问题:格式化文本、标签)、文本字段(问题:在一定大小后不起作用)
实现一个休息服务:响应体将在某一点被切断
<xe:restService pathInfo="getTestString"> <xe:this.service> <xe:customRestService> <xe:this.doGet><![CDATA[#{javascript:var id = context.getUrlParameter("documentId"); session.getCurrentDatabase().getDocumentByID(id).getItemValueString("test");}]]></xe:this.doGet> </xe:customRestService> </xe:this.service> </xe:restService> var url = new URL(window.location.href); var documentId = url.searchParams.get("documentId"); xhr.open('GET', './rest.xsp/getTestString?documentId=' + documentId, true);; xhr.send(null); xhr.response;
所以我想知道我是否错过了我的 REST 服务的配置。还有哪些其他替代方案可用于在 Xpages 上的客户端和服务器之间传输大数据?
解决方案
我测试了你的场景。doc.getItemValueString()
仅从富文本字段中读取 64 KB 的数据。如果您想要所有可以使用的数据(在 SSJS 中):
var doc = database.getDocumentByUNID(id);
var item:NotesRichTextItem = doc.getFirstItem('test');
return item.getUnformattedText();
看起来该方法从富文本项返回确切的文本,没有插入段落字符。
推荐阅读
- javascript - 可以使用 jQuery 在头部添加元标记吗?
- javascript - 有没有办法实现实时消息传递 Web 应用程序(在多个客户端之间向客户端推送消息)?
- joi - 根据需要标记所有对象属性,包括嵌套对象
- spring - spring-data-redis:如何禁用 pubsub 事件
- javascript - 强制 iframe 有一个 ID
- erlang - 拆分时 gen_tcp recv 中的错误参数
- php - 如何使用 PHP、JSON 或 AJAX 对生成的表应用下拉过滤器?
- c# - 如何使用 xaml 在 Xamarin 中显示当前时间
- ios - Moya/Alamofire 请求变量问题
- git - Visual Studio 2019 和 Android Studio 3.5.3 中的 Git 中的 Revert 有什么区别?