在 Liferay Portlet 中创建 JSONObject 和 JSONArray
Posted
技术标签:
【中文标题】在 Liferay Portlet 中创建 JSONObject 和 JSONArray【英文标题】:create JSONObject and JSONArray in Liferay Portlet 【发布时间】:2020-05-10 18:58:03 【问题描述】:在 Liferay portlet 中创建JSONObject
和JSONArray
的最佳选择是什么?
你不能做Java
简单的方法:
JSONObject json = new JSONObject();
JSONArray arrayJson = new JSONArray();
错误:
无法实例化 JSONObject 类型
无法实例化类型 JSONArray
尝试使用JSONFactoryUtil
,它可以工作,但已弃用。
com.liferay.util.json.JSONFactoryUtil
JSONObject json = JSONFactoryUtil.createJSONObject();
JSONArray arrayJson = JSONFactoryUtil.createJSONArray();
【问题讨论】:
JSONFactoryUtil.createJSONObject() 已弃用?这是目前唯一且正确的方法 【参考方案1】:JSONFactoryUtil.createJSONObject()
和 JSONFactoryUtil.createJSONArray()
在 Liferay 6.x 和 Liferay 7.x 中都没有被弃用。
如果还想使用new JSONObject()
和new JSONArray()
,可以导入org.json。
Maven:
<dependency>
<groupId>org.json</groupId>
<artifactId>json</artifactId>
<version>20190722</version>
</dependency>
Gradle:
compileOnly group: 'org.json', name: 'json', version: '20190722'
如果此版本不适合您,请尝试其他版本。
【讨论】:
谢谢!我使用的是com.liferay.util.json.JSONFactoryUtil
包,它已被弃用但被com.liferay.portal.kernel.json.JSONFactoryUtil
取代。 Source: com.liferay.util.json.JSONFactoryUtil。感谢您的回答,我意识到了。以上是关于在 Liferay Portlet 中创建 JSONObject 和 JSONArray的主要内容,如果未能解决你的问题,请参考以下文章
使用 liferay 和 icefaces 共享 Portlet 数据