[udig-devel] OSMM GML loading - null pointer
Vince Darley
vince.darley at eurobios.com
Tue Sep 11 11:08:09 PDT 2007
Hmm, I've removed all vestiges of Eclipse by
running this as a junit test rather than eclipse
junit-plugin test. This removes the bundle
resource stuff but now hits a null pointer:
Thread [main] (Suspended (exception NullPointerException))
Schemas.getImports(XSDSchema) line: 819
ParserHandler.startElement(String,
String, String, Attributes) line: 324
SAXParser(AbstractSAXParser).startElement(QName,
XMLAttributes, Augmentations) line: not available
XMLNSDocumentScannerImpl.scanStartElement() line: not available
XMLNSDocumentScannerImpl$NSContentDispatcher.scanRootElementHook()
line: not available
XMLNSDocumentScannerImpl$NSContentDispatcher(XMLDocumentFragmentScannerImpl$FragmentContentDispatcher).dispatch(boolean)
line: not available
XMLNSDocumentScannerImpl(XMLDocumentFragmentScannerImpl).scanDocument(boolean)
line: not available
XIncludeAwareParserConfiguration(XML11Configuration).parse(boolean)
line: not available
XIncludeAwareParserConfiguration(XML11Configuration).parse(XMLInputSource)
line: not available
SAXParser(XMLParser).parse(XMLInputSource) line: not available
SAXParser(AbstractSAXParser).parse(InputSource)
line: not available
Parser.parse(InputSource) line: 184
Parser.parse(InputStream) line: 146
OSmmSampleParsingTest.testFileReading() line: 84
NativeMethodAccessorImpl.invoke0(Method,
Object, Object[]) line: not available [native method]
NativeMethodAccessorImpl.invoke(Object, Object[]) line: 39
DelegatingMethodAccessorImpl.invoke(Object, Object[]) line: 25
Method.invoke(Object, Object...) line: 597
OSmmSampleParsingTest(TestCase).runTest() line: 154
OSmmSampleParsingTest(TestCase).runBare() line: 127
TestResult$1.protect() line: 106
TestResult.runProtected(Test, Protectable) line: 124
TestResult.run(TestCase) line: 109
OSmmSampleParsingTest(TestCase).run(TestResult) line: 118
TestSuite.runTest(Test, TestResult) line: 208
TestSuite.run(TestResult) line: 203
JUnit3TestReference.run(TestExecution) line: 128
TestExecution.run(ITestReference[]) line: 38
RemoteTestRunner.runTests(String[],
String, TestExecution) line: 460
RemoteTestRunner.runTests(TestExecution) line: 673
RemoteTestRunner.run() line: 386
RemoteTestRunner.main(String[]) line: 196
Is that any easier?
Vince.
At 18:10 11/09/2007, Jesse Eichar wrote:
>I don't know how the bundle resource stuff got in there it is the
>URLs eclipse uses. you can normally resolve the URLs using the
>FileLocator class...
>
>Jesse
>
>On Sep 11, 2007, at 9:57 AM, Vince Darley wrote:
>
>>If I manually edit two of the .xsd files to insert schemaLocations
>>in 2 places each:
>>
>> <import namespace="http://www.opengis.net/gml"
>>schemaLocation="gml.xsd"/>
>> <import namespace="http://www.w3.org/1999/xlink"
>>schemaLocation="xlink.xsd"/>
>>
>>then things get a bit further, but I then get an error:
>>
>>java.net.UnknownHostException: bundleresource
>>
>>due to an attempt to open an input stream on this URL:
>>
>>file://bundleresource://74/cache/www.w3.org/2001/datatypes.dtd
>>
>>any thoughts on that?
>>
>>Vince.
>>
>>...and I thought xml was supposed to make things easy.
>>
>>At 17:19 11/09/2007, Justin Deoliveira wrote:
>>>Hi Guys,
>>>
>>>Sorry to jump in late. Seems like you are making progress. This
>>>import
>>>seems strange to me:
>>>
>>><import namespace="http://www.opengis.net/gml"/>
>>>
>>>Since it does not have any schemaLocation attribute? Which is most
>>>likely the source of the null pointer exception. Since it is a
>>>"well-known" namespace / schema to the parser, simply putting
>>>schemaLocation="gml.xsd" should do the trick.
>>>
>>>-Justin
>>>
>>>Vince Darley wrote:
>>> > At 11:05 11/09/2007, Gabriel Roldán wrote:
>>> >> Configuration configuration = new
>>> >> ApplicationSchemaConfiguration(namespace,
>>> >> schemaLocation);
>>> >> Parser parser = new Parser( configuration );
>>> >
>>> > Now that seems to work quite a lot better, except we hit null
>>>pointer
>>> > exceptions due to calls to 'resolveSchemaLocation':
>>> >
>>> > public String resolveSchemaLocation(XSDSchema schema, String
>>>uri, String
>>> > location) {
>>> >
>>> > where:
>>> > uri "http://www.opengis.net/gml"
>>> > location null
>>> >
>>> > It tries to look for a file in the directory that we supplied on
>>> > construction, but with 'null' as a file name.
>>> >
>>> > This seems to be driven/triggered by lines like this:
>>> >
>>> > <import namespace="http://www.opengis.net/gml"/>
>>> >
>>> > in the schema being parsed.
>>> >
>>> > any idea how to avoid that problem?
>>> >
>>> > Vince.
>>> >
>>> >
>>> > !DSPAM:4007,46e671d1174873362379201!
>>> >
>>>
>>>
>>>--
>>>Justin Deoliveira
>>>The Open Planning Project
>>>http://topp.openplans.org
>>>
>>>
>>>
>>>--
>>>No virus found in this incoming message.
>>>Checked by AVG Free Edition.
>>>Version: 7.5.485 / Virus Database: 269.13.10/995 - Release Date:
>>>08/09/2007 13:24
>>
>>_______________________________________________
>>User-friendly Desktop Internet GIS (uDig)
>>http://udig.refractions.net
>>http://lists.refractions.net/mailman/listinfo/udig-devel
>
>_______________________________________________
>User-friendly Desktop Internet GIS (uDig)
>http://udig.refractions.net
>http://lists.refractions.net/mailman/listinfo/udig-devel
>
>
>
>--
>No virus found in this incoming message.
>Checked by AVG Free Edition. Version: 7.5.485 /
>Virus Database: 269.13.10/995 - Release Date: 08/09/2007 13:24
More information about the udig-devel
mailing list