как получить null при разборе xml с помощью парсера geotools

Я попытался получить нулевое значение из моего XML-файла, такого как ниже

  <top:kadastroParselFeature gml:id="KADASTRO_PARSEL.1">
    <top:olcek xsi:nil="true" />
  </top:kadastroParselFeature>

но мой парсер выдает такое исключение:

java.lang.RuntimeException: Parsing failed for kadastroParselFeature: java.lang.NullPointerException
at org.geotools.xml.impl.ParseExecutor.visit(ParseExecutor.java:164)
at org.geotools.xml.impl.BindingWalker$BindingExecutionChain.execute(BindingWalker.java:220)
at org.geotools.xml.impl.BindingWalker.walk(BindingWalker.java:186)
at org.geotools.xml.impl.ElementHandlerImpl.endElement(ElementHandlerImpl.java:236)
at org.geotools.xml.impl.ParserHandler.endElement(ParserHandler.java:719)

Моя конфигурация парсера выглядит так:

   org.geotools.xml.Configuration configuration = new org.geotools.gml2.GMLConfiguration();

   org.geotools.xml.Parser parser = new org.geotools.xml.Parser( configuration );

   parser.setFailOnValidationError(false);

   HashMap<Object, Object> parsedMap = (HashMap<Object, Object>) parser.parse( isx);

если я удаляю xsi:nill="true" из элемента, он возвращает "" (пустая строка), но мне нужно null .

мой синтаксический анализатор используется по адресу http://docs.geotools.org/stable/userguide/library/xml/geometry.html


person esatilmis    schedule 22.12.2014    source источник
comment
может поднять уровень ведения журнала, если не получится посмотреть на проблему в дебиггере, чтобы увидеть, что происходит?   -  person Ian Turton    schedule 22.12.2014
comment
Привет, я нашел проблему. Я использую gml2 при разборе этой проблемы. Когда я использую версию gml3, она не выдает ошибки   -  person esatilmis    schedule 23.12.2014


Ответы (1)


Я нашел решение для своей работы. Проблема в моей версии gml-писателя, если я изменил версию с gml2 на gml3, проблема не возникла. и я изменил конфигурацию моего парсера. как это

       org.geotools.xml.Configuration configuration = new org.geotools.gml3.ApplicationSchemaConfiguration("sampleURL", "sample.xsd");


       org.geotools.xml.Parser parser = new org.geotools.xml.Parser( configuration );
person esatilmis    schedule 23.12.2014