如何使用JasperReports JSON元数据出口商生成包含对象的对象数组
我的数据与下面一样简单,是jasper报告:
名为 | ,并 |
---|---|
John | Carter |
Mary | Ann |
Jack | Thomas |
希望将其导出到JSON。我正在尝试使用JSON Metadata,如所述在这里。
我可以
[
{
"firstName": "john",
"lastName": "carter"
},
{
"firstName": "mary",
"lastName": "ann"
},
{
"firstName": "jack",
"lastName": "thomas"
}
]
通过以下架构获取下面的输出:
{
_type: 'array',
_children: {
_type: 'object',
firstName: 'value',
lastName: 'value'
}
}
以及文本字段中的这些属性:
<property name="net.sf.jasperreports.export.json.path" value="firstName"/>
<property name="net.sf.jasperreports.export.json.path" value="lastName"/>
当我尝试生成更复杂(但不是那么多)JSON时,出现问题。如下:
[
{
"person": {
"firstName": "john",
"lastName": "carter"
}
},
{
"person": {
"firstName": "mary",
"lastName": "ann"
}
},
{
"person": {
"firstName": "jack",
"lastName": "thomas"
}
}
]
架构当然会更改为此:
{
_type: 'array',
_children: {
_type: 'object',
person: {
_type: 'object',
firstName: 'value',
lastName: 'value'
}
}
}
我将文本字段中的路径更改为:
<property name="net.sf.jasperreports.export.json.path" value="person.firstName"/>
<property name="net.sf.jasperreports.export.json.path" value="person.lastName"/>
我得到的是这种畸形的JSON:
[
{
"person": {
"firstName": "john",
"lastName": "carter"
},
{
"firstName": "mary",
"lastName": "ann"
},
{
"firstName": "jack",
"lastName": "thomas"
}
}
]
你们知道我在做什么错吗?这个JSON Metadata出口商的资源很少,即使是从JasperReports出口商也很少。有时我认为这是没有人使用或关心的半烘烤晦涩的功能。
I have data as simple as below is a jasper report:
firstName | lastName |
---|---|
john | carter |
mary | ann |
jack | thomas |
and would like to export it to json. I'm trying to use Json metadata as described here.
I'm able to get the output below:
[
{
"firstName": "john",
"lastName": "carter"
},
{
"firstName": "mary",
"lastName": "ann"
},
{
"firstName": "jack",
"lastName": "thomas"
}
]
by using the schema below:
{
_type: 'array',
_children: {
_type: 'object',
firstName: 'value',
lastName: 'value'
}
}
and these properties in the text fields:
<property name="net.sf.jasperreports.export.json.path" value="firstName"/>
<property name="net.sf.jasperreports.export.json.path" value="lastName"/>
The problem arises when I try to generate a more complicated (but not that much) json. As below:
[
{
"person": {
"firstName": "john",
"lastName": "carter"
}
},
{
"person": {
"firstName": "mary",
"lastName": "ann"
}
},
{
"person": {
"firstName": "jack",
"lastName": "thomas"
}
}
]
The schema changes of course to this:
{
_type: 'array',
_children: {
_type: 'object',
person: {
_type: 'object',
firstName: 'value',
lastName: 'value'
}
}
}
I changed the path in the text fields to this:
<property name="net.sf.jasperreports.export.json.path" value="person.firstName"/>
<property name="net.sf.jasperreports.export.json.path" value="person.lastName"/>
What I get is this malformed json:
[
{
"person": {
"firstName": "john",
"lastName": "carter"
},
{
"firstName": "mary",
"lastName": "ann"
},
{
"firstName": "jack",
"lastName": "thomas"
}
}
]
Do you guys have any idea what I'm doing wrong? There is so little resources on this Json metadata exporter, even from JasperReports. Sometimes I think it's a half baked obscure feature nobody uses or cares about.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这是一个数组[]
This is an Array []