|
Re: [CDO] importer Exception [message #1007641 is a reply to message #1007597] |
Wed, 06 February 2013 20:47 |
|
Am 06.02.2013 17:51, schrieb Christophe Bouhier:
> Hi,
> See the exception when importing an xml file exported by CDO. Does CDO produce XML it can not import later on?
That's not the goal :P
> here is a snippet of the produced XML:
> <feature name="message" value="Could not locate identifier for metric STP_SCPKTSNT. For identifiers: - NODE: arnstp01
> - FUNCTION: <=�����, Failed on : - FUNCTION: <=�����"/>
Hm, is "<" allowed in attribute values?
> That's bizar encoding, this value.
> This is the code which writes this feature:
> final StringBuilder sb = new StringBuilder();
> sb.append("Could not locate networkElement for metric "
> + metric.getName());
> sb.append("Using identifiers: ");
> for (final IComponentLocator.IdentifierDescriptor idValue : identifierValues) {
> sb.append(" - " + idValue.getKind().getObjectKind().getName()
> + ": " + idValue.getValue());
> }
I checked that the exporter uses this to output the XML:
SAXTransformerFactory factory = (SAXTransformerFactory)SAXTransformerFactory.newInstance();
xmlHandler = factory.newTransformerHandler();
So, all needed conversion and escaping should be done there. I'm not an expert in XML or SAX. Maybe Ed has an idea...
Cheers
/Eike
----
http://www.esc-net.de
http://thegordian.blogspot.com
http://twitter.com/eikestepper
>
> Anything unusual?
> org.xml.sax.SAXParseException: Character reference "" is an invalid XML character.
> at
> com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195)
> at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:174)
> at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:388)
> at com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1414)
> at com.sun.org.apache.xerces.internal.impl.XMLScanner.scanCharReferenceValue(XMLScanner.java:1298)
> at com.sun.org.apache.xerces.internal.impl.XMLScanner.scanAttributeValue(XMLScanner.java:851)
> at
> com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanAttribute(XMLDocumentFragmentScannerImpl.java:1547)
> at
> com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanStartElement(XMLDocumentFragmentScannerImpl.java:1320)
> at
> com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2756)
> at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:648)
> at
> com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:511)
> at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:808)
> at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737)
> at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:119)
> at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205)
> at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522)
> at javax.xml.parsers.SAXParser.parse(SAXParser.java:395)
> at javax.xml.parsers.SAXParser.parse(SAXParser.java:198)
> at org.eclipse.emf.cdo.server.CDOServerImporter$XML.importAll(CDOServerImporter.java:329)
> at org.eclipse.emf.cdo.server.CDOServerImporter.importRepository(CDOServerImporter.java:111)
> at org.eclipse.emf.cdo.internal.server.bundle.CDOCommandProvider.importXML(CDOCommandProvider.java:230)
> at org.eclipse.emf.cdo.internal.server.bundle.CDOCommandProvider._cdo(CDOCommandProvider.java:110)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:597)
> at
> org.eclipse.osgi.framework.internal.core.FrameworkCommandInterpreter.execute(FrameworkCommandInterpreter.java:209)
> at org.eclipse.osgi.framework.internal.core.FrameworkConsole.docommand(FrameworkConsole.java:155)
> at org.eclipse.osgi.framework.internal.core.FrameworkConsole.runConsole(FrameworkConsole.java:140)
> at org.eclipse.osgi.framework.internal.core.FrameworkConsole.run(FrameworkConsole.java:104)
> at java.lang.Thread.run(Thread.java:662)
Cheers
/Eike
----
http://www.esc-net.de
http://thegordian.blogspot.com
http://twitter.com/eikestepper
|
|
|
|
|
|
Powered by
FUDForum. Page generated in 0.06162 seconds