diff --git a/annotation/src/main/java/lcsb/mapviewer/annotation/services/DrugbankHTMLParser.java b/annotation/src/main/java/lcsb/mapviewer/annotation/services/DrugbankHTMLParser.java index 07b0a36856c546256217932bd9e35d798fe7d083..6eac22a514f91a5b7401b74f6d7299ab144408fb 100644 --- a/annotation/src/main/java/lcsb/mapviewer/annotation/services/DrugbankHTMLParser.java +++ b/annotation/src/main/java/lcsb/mapviewer/annotation/services/DrugbankHTMLParser.java @@ -9,6 +9,7 @@ import java.util.Set; import java.util.regex.Matcher; import java.util.regex.Pattern; +import org.apache.commons.lang3.SerializationException; import org.apache.commons.lang3.StringEscapeUtils; import org.apache.log4j.Logger; import org.springframework.beans.factory.annotation.Autowired; @@ -474,8 +475,12 @@ public class DrugbankHTMLParser extends DrugAnnotation implements IExternalServi @Override public Drug findDrug(String drugName) throws DrugSearchException { String query = DRUG_NAME_PREFIX + drugName; - - Drug drug = getDrugSerializer().xmlToObject(getCacheNode(query)); + Drug drug = null; + try { + drug = getDrugSerializer().xmlToObject(getCacheNode(query)); + } catch (SerializationException e) { + logger.error("Problem with deserializing element by query: " + query); + } if (drug != null) { return drug; } diff --git a/commons/src/main/java/lcsb/mapviewer/common/XmlParser.java b/commons/src/main/java/lcsb/mapviewer/common/XmlParser.java index 0f0530880c2579459a31ce4729ed8ddf943dad6d..4df8104320ccd3743bcbc57472b3bd42ccc85d28 100644 --- a/commons/src/main/java/lcsb/mapviewer/common/XmlParser.java +++ b/commons/src/main/java/lcsb/mapviewer/common/XmlParser.java @@ -210,7 +210,12 @@ public class XmlParser { protected Document getXmlDocumentFromString(final String text) throws InvalidXmlSchemaException { InputSource is = new InputSource(); is.setCharacterStream(new StringReader(text)); - return getXmlDocumentFromInputSource(is); + try { + return getXmlDocumentFromInputSource(is); + } catch (NullPointerException e) { + logger.error("Problem with input xml: " + text); + throw new InvalidXmlSchemaException(e); + } } /**