viggonavarsete
-
Posts
5 -
Joined
-
Last visited
Content Type
Profiles
Forum
Events
Featured Visualizations
Knowledge Base
Documentation (PDF Downloads)
Blog
Documentation (Test Area)
Documentation
Dr. Jaspersoft Webinar Series
Security Advisories
Downloads
Posts posted by viggonavarsete
-
-
Hi, what's the status of this? I'm also facing problems using XPath to XML elements with namespaces. I'm using iReport 3.7.2. The XML document I'm using looks like this:
<QueryResults
xmlns:ns2="http://www.unece.org/cefact/namespaces/StandardBusinessDocumentHeader"
xmlns:ns3="urn:epcglobal:epcis-query:xsd:1" xmlns:ns4="urn:epcglobal:epcis-masterdata:xsd:1"
xmlns:ns5="urn:epcglobal:epcis:xsd:1">
<results>
<queryName>/query/SimpleEventQuery</queryName>
<resultsBody>
<EventList>
<ObjectEvent>
<eventTime>2010-07-02T13:24:00.000+02:00</eventTime>
<recordTime>2010-07-06T14:13:18.028+02:00</recordTime>
<eventTimeZoneOffset>+02:00</eventTimeZoneOffset>
<epcList>
<epc>Lot2</epc>
</epcList>
<action>OBSERVE</action>
<ns6:weight xmlns:ns6="http://www.tracefood.org/schema/epcis">1000</ns6:weight>
</ObjectEvent>
<ObjectEvent>
<eventTime>2010-07-02T13:24:00.000+02:00</eventTime>
<recordTime>2010-07-06T14:13:18.029+02:00</recordTime>
<eventTimeZoneOffset>+02:00</eventTimeZoneOffset>
<epcList>
<epc>Lot2</epc>
</epcList>
<action>OBSERVE</action>
<ns6:moisture xmlns:ns6="http://www.tracefood.org/schema/epcis">20</ns6:moisture>
</ObjectEvent>
</EventList>
</resultsBody>
</results>
</QueryResults>
and I want to access the weight and moisture elements. Ireport generates the following XPath's for me:
/QueryResults/results/resultsBody/EventList/ObjectEvent/ns6:weight
but I get this exception back when I try to preview it:
Error filling print... XPath selection failed. Expression: /QueryResults/results/resultsBody/EventList/ObjectEvent/ns6:weight
net.sf.jasperreports.engine.JRException: XPath selection failed. Expression: /QueryResults/results/resultsBody/EventList/ObjectEvent/ns6:weight     at net.sf.jasperreports.engine.util.xml.JaxenXPathExecuter.selectObject(JaxenXPathExecuter.java:128)     at net.sf.jasperreports.engine.data.JRXmlDataSource.getFieldValue(JRXmlDataSource.java:302)     at net.sf.jasperreports.engine.fill.JRFillDataset.setOldValues(JRFillDataset.java:823)     at net.sf.jasperreports.engine.fill.JRFillDataset.next(JRFillDataset.java:787)     at net.sf.jasperreports.engine.fill.JRBaseFiller.next(JRBaseFiller.java:1474)     at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReport(JRVerticalFiller.java:125)     at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:938)     at net.sf.jasperreports.engine.fill.JRFiller.fillReport(JRFiller.java:118)     at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:435)     at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:271)     at com.jaspersoft.ireport.designer.compiler.IReportCompiler.run(IReportCompiler.java:970)     at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:572)     at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:997) Caused by: org.jaxen.UnresolvableException: Cannot resolve namespace prefix 'ns6'     at org.jaxen.expr.DefaultNameStep.matches(DefaultNameStep.java:358)     at org.jaxen.expr.DefaultNameStep.evaluate(DefaultNameStep.java:285)     at org.jaxen.expr.DefaultLocationPath.evaluate(DefaultLocationPath.java:140)     at org.jaxen.expr.DefaultAbsoluteLocationPath.evaluate(DefaultAbsoluteLocationPath.java:113)     at org.jaxen.expr.DefaultXPathExpr.asList(DefaultXPathExpr.java:102)     at org.jaxen.BaseXPath.selectNodesForContext(BaseXPath.java:674)     at org.jaxen.BaseXPath.selectNodes(BaseXPath.java:213)     at org.jaxen.BaseXPath.evaluate(BaseXPath.java:172)     at net.sf.jasperreports.engine.util.xml.JaxenXPathExecuter.selectObject(JaxenXPathExecuter.java:102)     ... 12 more
-
Hi,
I have the following XMLdatasource:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<QueryResults
xmlns:ns2="http://www.unece.org/cefact/namespaces/StandardBusinessDocumentHeader"
xmlns:ns3="urn:epcglobal:epcis-query:xsd:1" xmlns:ns4="urn:epcglobal:epcis-masterdata:xsd:1"
xmlns:ns5="urn:epcglobal:epcis:xsd:1">
<results>
<queryName>/query/SimpleEventQuery</queryName>
<resultsBody>
<EventList>
<AggregationEvent>
<eventTime>2010-07-02T15:24:00.000+02:00</eventTime>
<recordTime>2010-07-06T14:12:47.311+02:00</recordTime>
<eventTimeZoneOffset>+02:00</eventTimeZoneOffset>
<parentID>DeliveryA</parentID>
<childEPCs>
<epc>Lot2</epc>
</childEPCs>
<action>DELETE</action>
<bizStep>urn:epcglobal:cbv:bizstep:unpacking</bizStep>
<ns6:transformationType
xmlns:ns6="http://www.globaltraceability.net/schema/epcis">LEAVECLUSTER</ns6:transformationType>
</AggregationEvent>
<ObjectEvent>
<eventTime>2010-07-02T13:24:00.000+02:00</eventTime>
<recordTime>2010-07-06T14:13:18.027+02:00</recordTime>
<eventTimeZoneOffset>+02:00</eventTimeZoneOffset>
<epcList>
<epc>Lot2</epc>
</epcList>
<action>ADD</action>
</ObjectEvent>
<ObjectEvent>
<eventTime>2010-07-02T13:24:00.000+02:00</eventTime>
<recordTime>2010-07-06T14:13:18.028+02:00</recordTime>
<eventTimeZoneOffset>+02:00</eventTimeZoneOffset>
<epcList>
<epc>Lot2</epc>
</epcList>
<action>OBSERVE</action>
<ns6:weight xmlns:ns6="http://www.tracefood.org/schema/epcis">1000</ns6:weight>
</ObjectEvent>
<ObjectEvent>
<eventTime>2010-07-02T13:24:00.000+02:00</eventTime>
<recordTime>2010-07-06T14:13:18.029+02:00</recordTime>
<eventTimeZoneOffset>+02:00</eventTimeZoneOffset>
<epcList>
<epc>Lot2</epc>
</epcList>
<action>OBSERVE</action>
<ns6:moisture xmlns:ns6="http://www.tracefood.org/schema/epcis">20</ns6:moisture>
</ObjectEvent>
<ObjectEvent>
<eventTime>2010-07-02T13:24:00.000+02:00</eventTime>
<recordTime>2010-07-06T14:13:18.030+02:00</recordTime>
<eventTimeZoneOffset>+02:00</eventTimeZoneOffset>
<epcList>
<epc>Lot2</epc>
</epcList>
<action>OBSERVE</action>
<ns6:noofbags xmlns:ns6="http://www.tracefood.org/schema/epcis">200</ns6:noofbags>
</ObjectEvent>
<ObjectEvent>
<eventTime>2010-07-02T13:24:00.000+02:00</eventTime>
<recordTime>2010-07-06T14:13:18.031+02:00</recordTime>
<eventTimeZoneOffset>+02:00</eventTimeZoneOffset>
<epcList>
<epc>Lot2</epc>
</epcList>
<action>OBSERVE</action>
<ns6:bagmarks xmlns:ns6="http://www.tracefood.org/schema/epcis">Co-op 2</ns6:bagmarks>
</ObjectEvent>
<ObjectEvent>
<eventTime>2010-07-02T13:24:00.000+02:00</eventTime>
<recordTime>2010-07-06T14:13:18.032+02:00</recordTime>
<eventTimeZoneOffset>+02:00</eventTimeZoneOffset>
<epcList>
<epc>Lot2</epc>
</epcList>
<action>OBSERVE</action>
<ns6:coffeetype xmlns:ns6="http://www.tracefood.org/schema/epcis">PII</ns6:coffeetype>
</ObjectEvent>
<ObjectEvent>
<eventTime>2010-07-02T13:24:00.000+02:00</eventTime>
<recordTime>2010-07-06T14:13:18.063+02:00</recordTime>
<eventTimeZoneOffset>+02:00</eventTimeZoneOffset>
<epcList>
<epc>Lot2</epc>
</epcList>
<action>OBSERVE</action>
<ns6:coopname xmlns:ns6="http://www.tracefood.org/schema/epcis">Co-op 2</ns6:coopname>
</ObjectEvent>
<ObjectEvent>
<eventTime>2010-07-02T13:24:00.000+02:00</eventTime>
<recordTime>2010-07-06T14:13:18.064+02:00</recordTime>
<eventTimeZoneOffset>+02:00</eventTimeZoneOffset>
<epcList>
<epc>Lot2</epc>
</epcList>
<action>OBSERVE</action>
<ns6:season xmlns:ns6="http://www.tracefood.org/schema/epcis">2010</ns6:season>
</ObjectEvent>
<ObjectEvent>
<eventTime>2010-07-02T13:24:00.000+02:00</eventTime>
<recordTime>2010-07-06T14:13:18.065+02:00</recordTime>
<eventTimeZoneOffset>+02:00</eventTimeZoneOffset>
<epcList>
<epc>Lot2</epc>
</epcList>
<action>OBSERVE</action>
<ns6:receiptno xmlns:ns6="http://www.tracefood.org/schema/epcis">Rec 2</ns6:receiptno>
</ObjectEvent>
<ObjectEvent>
<eventTime>2010-07-02T13:24:00.000+02:00</eventTime>
<recordTime>2010-07-06T14:13:18.066+02:00</recordTime>
<eventTimeZoneOffset>+02:00</eventTimeZoneOffset>
<epcList>
<epc>Lot2</epc>
</epcList>
<action>OBSERVE</action>
<ns6:storename xmlns:ns6="http://www.tracefood.org/schema/epcis">Store House 2
</ns6:storename>
</ObjectEvent>
<ObjectEvent>
<eventTime>2010-07-02T13:24:00.000+02:00</eventTime>
<recordTime>2010-07-06T14:13:18.067+02:00</recordTime>
<eventTimeZoneOffset>+02:00</eventTimeZoneOffset>
<epcList>
<epc>Lot2</epc>
</epcList>
<action>OBSERVE</action>
<ns6:remarks xmlns:ns6="http://www.tracefood.org/schema/epcis">okay</ns6:remarks>
</ObjectEvent>
</EventList>
</resultsBody>
</results>
</QueryResults>and I want to retrieve elements having inline namespace ns6, like the
/QueryResults/results/resultsBody/EventList/ObjectEvent/ns6:remarks
So, I drag the element into the Field table in the Report Query so that a Field is created, all fine so far. Then I map the field created into a a field in the report, and then I try to preview the report, which gives me the following failure:
Error filling print...XPath seletion failed. Expression: ObjectEvent/ns6:remarks
and a long stacktrace. I assume it has something todo with the inline namespace? or? How could I make this work?
Best regards,
Viggo Navarsete
XML datasource error
in Products
Posted
Hi, what's the status of this? I'm also facing problems using XPath to XML elements with namespaces. I'm using iReport 3.7.2. The XML document I'm using looks like this:
<QueryResults
xmlns:ns2="http://www.unece.org/cefact/namespaces/StandardBusinessDocumentHeader"
xmlns:ns3="urn:epcglobal:epcis-query:xsd:1" xmlns:ns4="urn:epcglobal:epcis-masterdata:xsd:1"
xmlns:ns5="urn:epcglobal:epcis:xsd:1">
<results>
<queryName>/query/SimpleEventQuery</queryName>
<resultsBody>
<EventList>
<ObjectEvent>
<eventTime>2010-07-02T13:24:00.000+02:00</eventTime>
<recordTime>2010-07-06T14:13:18.028+02:00</recordTime>
<eventTimeZoneOffset>+02:00</eventTimeZoneOffset>
<epcList>
<epc>Lot2</epc>
</epcList>
<action>OBSERVE</action>
<ns6:weight xmlns:ns6="http://www.tracefood.org/schema/epcis">1000</ns6:weight>
</ObjectEvent>
<ObjectEvent>
<eventTime>2010-07-02T13:24:00.000+02:00</eventTime>
<recordTime>2010-07-06T14:13:18.029+02:00</recordTime>
<eventTimeZoneOffset>+02:00</eventTimeZoneOffset>
<epcList>
<epc>Lot2</epc>
</epcList>
<action>OBSERVE</action>
<ns6:moisture xmlns:ns6="http://www.tracefood.org/schema/epcis">20</ns6:moisture>
</ObjectEvent>
</EventList>
</resultsBody>
</results>
</QueryResults>
and I want to access the weight and moisture elements. Ireport generates the following XPath's for me:
/QueryResults/results/resultsBody/EventList/ObjectEvent/ns6:weight
but I get this exception back when I try to preview it:
Error filling print... XPath selection failed. Expression: /QueryResults/results/resultsBody/EventList/ObjectEvent/ns6:weight
net.sf.jasperreports.engine.JRException: XPath selection failed. Expression: /QueryResults/results/resultsBody/EventList/ObjectEvent/ns6:weight at net.sf.jasperreports.engine.util.xml.JaxenXPathExecuter.selectObject(JaxenXPathExecuter.java:128) at net.sf.jasperreports.engine.data.JRXmlDataSource.getFieldValue(JRXmlDataSource.java:302) at net.sf.jasperreports.engine.fill.JRFillDataset.setOldValues(JRFillDataset.java:823) at net.sf.jasperreports.engine.fill.JRFillDataset.next(JRFillDataset.java:787) at net.sf.jasperreports.engine.fill.JRBaseFiller.next(JRBaseFiller.java:1474) at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReport(JRVerticalFiller.java:125) at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:938) at net.sf.jasperreports.engine.fill.JRFiller.fillReport(JRFiller.java:118) at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:435) at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:271) at com.jaspersoft.ireport.designer.compiler.IReportCompiler.run(IReportCompiler.java:970) at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:572) at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:997) Caused by: org.jaxen.UnresolvableException: Cannot resolve namespace prefix 'ns6' at org.jaxen.expr.DefaultNameStep.matches(DefaultNameStep.java:358) at org.jaxen.expr.DefaultNameStep.evaluate(DefaultNameStep.java:285) at org.jaxen.expr.DefaultLocationPath.evaluate(DefaultLocationPath.java:140) at org.jaxen.expr.DefaultAbsoluteLocationPath.evaluate(DefaultAbsoluteLocationPath.java:113) at org.jaxen.expr.DefaultXPathExpr.asList(DefaultXPathExpr.java:102) at org.jaxen.BaseXPath.selectNodesForContext(BaseXPath.java:674) at org.jaxen.BaseXPath.selectNodes(BaseXPath.java:213) at org.jaxen.BaseXPath.evaluate(BaseXPath.java:172) at net.sf.jasperreports.engine.util.xml.JaxenXPathExecuter.selectObject(JaxenXPathExecuter.java:102) ... 12 more