From 8bd8d4661d336489669afd6ef48702e4a9e31b27 Mon Sep 17 00:00:00 2001 From: Tymko Oleg Date: Tue, 8 Jun 2021 23:42:01 +0700 Subject: [PATCH] fix: ForbiddenClassException java.time.Period (cherry picked from commit f30f49c615d5fd6c2419c281947d440bbdfd6bdb) --- .../github/_1c_syntax/mdclasses/unmarshal/XStreamFactory.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/main/java/com/github/_1c_syntax/mdclasses/unmarshal/XStreamFactory.java b/src/main/java/com/github/_1c_syntax/mdclasses/unmarshal/XStreamFactory.java index b1f4f07ed..74511c43e 100644 --- a/src/main/java/com/github/_1c_syntax/mdclasses/unmarshal/XStreamFactory.java +++ b/src/main/java/com/github/_1c_syntax/mdclasses/unmarshal/XStreamFactory.java @@ -92,6 +92,7 @@ import com.thoughtworks.xstream.converters.reflection.ReflectionConverter; import com.thoughtworks.xstream.io.HierarchicalStreamReader; import com.thoughtworks.xstream.io.xml.QNameMap; +import com.thoughtworks.xstream.security.ExplicitTypePermission; import com.thoughtworks.xstream.security.NoTypePermission; import com.thoughtworks.xstream.security.WildcardTypePermission; import lombok.Getter; @@ -191,6 +192,7 @@ protected void setupConverters() { XStream.setupDefaultSecurity(xStream); xStream.addPermission(NoTypePermission.NONE); xStream.addPermission(new WildcardTypePermission(new String[]{"com.github._1c_syntax.**"})); + xStream.addPermission(new ExplicitTypePermission(new String[]{"java.time.Period"})); // необходимо зарегистрировать все классы, имена которых в XML отличаются от имен самих классов registerClasses(xStream);