CLOVER_HOME=D:\CloverETL\bin\.\.. CLOVER_CMD_LINE_ARGS=D:\CloverETL\Workspace\KPIs\data-out\StatusCake-Page_Speed_Checks.grf JAVA_CMD_LINE_ARGS= USER_CLASSPATH= "java.exe" -classpath ";;D:\CloverETL\bin\;;;D:\CloverETL\bin\.\../lib/annotations.jar;D:\CloverETL\bin\.\../lib/cloveretl.engine.jar;D:\CloverETL\bin\.\../lib/commons-cli-1.1.jar;D:\CloverETL\bin\.\../lib/commons-codec-1.4.jar;D:\CloverETL\bin\.\../lib/commons-httpclient-3.1.jar;D:\CloverETL\bin\.\../lib/commons-io-1.4.jar;D:\CloverETL\bin\.\../lib/commons-io-LICENSE.txt;D:\CloverETL\bin\.\../lib/commons-logging-1.1.1.jar;D:\CloverETL\bin\.\../lib/commons-net-2.0.jar;D:\CloverETL\bin\.\../lib/commons-pool-1.6.jar;D:\CloverETL\bin\.\../lib/dom4j-1.6.1.jar;D:\CloverETL\bin\.\../lib/ftp4j-1.4.3.jar;D:\CloverETL\bin\.\../lib/ftp4j-LICENSE.txt;D:\CloverETL\bin\.\../lib/httpclient-4.2.jar;D:\CloverETL\bin\.\../lib/httpclient-LICENSE.txt;D:\CloverETL\bin\.\../lib/httpcore-4.2.jar;D:\CloverETL\bin\.\../lib/httpcore-LICENSE.txt;D:\CloverETL\bin\.\../lib/httpmime-4.2.jar;D:\CloverETL\bin\.\../lib/httpmime-LICENSE.txt;D:\CloverETL\bin\.\../lib/icu4j-LICENSE.html;D:\CloverETL\bin\.\../lib/icu4j-normalizer_transliterator-4.8.1.1.jar;D:\CloverETL\bin\.\../lib/icu4j-unicode-LICENSE.txt;D:\CloverETL\bin\.\../lib/jakarta-oro-2.0.8.jar;D:\CloverETL\bin\.\../lib/javolution.jar;D:\CloverETL\bin\.\../lib/jaxen-1.1.1.jar;D:\CloverETL\bin\.\../lib/jets3t-0.8.0.jar;D:\CloverETL\bin\.\../lib/jms.jar;D:\CloverETL\bin\.\../lib/joda-time-2.1.jar;D:\CloverETL\bin\.\../lib/jsch-0.1.49.jar;D:\CloverETL\bin\.\../lib/jxl.jar;D:\CloverETL\bin\.\../lib/LICENSE.txt;D:\CloverETL\bin\.\../lib/log4j-1.2.15.jar;D:\CloverETL\bin\.\../lib/poi-3.8-20120326.jar;D:\CloverETL\bin\.\../lib/poi-ooxml-3.8-20120326.jar;D:\CloverETL\bin\.\../lib/poi-ooxml-schemas-3.8-20120326.jar;D:\CloverETL\bin\.\../lib/sardine.jar;D:\CloverETL\bin\.\../lib/signpost-commonshttp4-1.2.1.2.jar;D:\CloverETL\bin\.\../lib/signpost-core-1.2.1.2.jar;D:\CloverETL\bin\.\../lib/slf4j-api-1.6.2.jar;D:\CloverETL\bin\.\../lib/tar.jar;D:\CloverETL\bin\.\../lib/truezip-6.8.1.jar;D:\CloverETL\bin\.\../lib/xmlbeans-2.5.0-modified-for-WSC.jar;D:\CloverETL\bin\.\../lib/XmlSchema-1.4.7-modified-for-WSC.jar;D:\CloverETL\bin\.\../lib/XmlSchema-LICENSE.txt" "-Dclover.home=D:\CloverETL\bin\.\.." org.jetel.main.runGraph -plugins "D:\CloverETL\bin\.\..\plugins" D:\CloverETL\Workspace\KPIs\data-out\StatusCake-Page_Speed_Checks.grf INFO [main] - *** CloverETL framework/transformation graph, (c) 2002-2013 Javlin a.s, released under GNU Lesser General Public License *** INFO [main] - Running with CloverETL library version 3.4.0 build#037 compiled 14/05/2013 08:40:56 INFO [main] - Running on 4 CPU(s), OS Windows Server 2016, architecture x86, Java version 1.8.0_192, max available memory for JVM 253440 KB INFO [main] - Loading default properties from: defaultProperties DEBUG [main] - Plugin org.jetel.bulkloader loaded. id - org.jetel.bulkloader version - 3.4.0 provider-name - null component { className = org.jetel.component.OracleDataWriter; type = ORACLE_DATA_WRITER; } component { className = org.jetel.component.DB2DataWriter; type = DB2_DATA_WRITER; } component { className = org.jetel.component.InformixDataWriter; type = INFORMIX_DATA_WRITER; } component { className = org.jetel.component.MsSqlDataWriter; type = MS_SQL_DATA_WRITER; } component { className = org.jetel.component.MysqlDataWriter; type = MYSQL_DATA_WRITER; } component { className = org.jetel.component.PostgreSqlDataWriter; type = POSTGRESQL_DATA_WRITER; } component { className = org.jetel.component.InfobrightDataWriter; type = INFOBRIGHT_DATA_WRITER; } DEBUG [main] - Plugin org.jetel.component loaded. id - org.jetel.component version - 3.4.0 provider-name - Javlin a.s. component { className = org.jetel.component.DataReader; type = DATA_READER; } component { className = org.jetel.component.DataWriter; type = DATA_WRITER; } component { className = org.jetel.component.DelimitedDataReader; type = DELIMITED_DATA_READER; } component { className = org.jetel.component.DelimitedDataWriter; type = DELIMITED_DATA_WRITER; } component { className = org.jetel.component.SimpleCopy; type = SIMPLE_COPY; } component { className = org.jetel.component.Concatenate; type = CONCATENATE; } component { className = org.jetel.component.SimpleGather; type = SIMPLE_GATHER; } component { className = org.jetel.component.Reformat; type = REFORMAT; } component { className = org.jetel.component.DBInputTable; type = DB_INPUT_TABLE; } component { className = org.jetel.component.Sort; type = SORT; } component { className = org.jetel.component.DBOutputTable; type = DB_OUTPUT_TABLE; } component { className = org.jetel.component.FixLenDataWriter; type = FIXLEN_DATA_WRITER; } component { className = org.jetel.component.Dedup; type = DEDUP; } component { className = org.jetel.component.FixLenDataReader; type = FIXLEN_DATA_READER; } component { className = org.jetel.component.Merge; type = MERGE; } component { className = org.jetel.component.MergeJoin; type = MERGE_JOIN; } component { className = org.jetel.component.MergeJoin; type = EXT_MERGE_JOIN; } component { className = org.jetel.component.MergeJoin; type = SORTED_JOIN; } component { className = org.jetel.component.Trash; type = TRASH; } component { className = org.jetel.component.DBExecute; type = DB_EXECUTE; } component { className = org.jetel.component.HashJoin; type = HASH_JOIN; } component { className = org.jetel.component.HashJoin; type = EXT_HASH_JOIN; } component { className = org.jetel.component.CheckForeignKey; type = CHECK_FOREIGN_KEY; } component { className = org.jetel.component.DBFDataReader; type = DBF_DATA_READER; } component { className = org.jetel.component.DBFDataWriter; type = DBF_DATA_WRITER; } component { className = org.jetel.component.ExtFilter; type = EXT_FILTER; } component { className = org.jetel.component.ExtSort; type = EXT_SORT; } component { className = org.jetel.component.SortWithinGroups; type = SORT_WITHIN_GROUPS; } component { className = org.jetel.component.Partition; type = PARTITION; } component { className = org.jetel.component.DataIntersection; type = DATA_INTERSECTION; } component { className = org.jetel.component.Aggregate; type = AGGREGATE; } component { className = org.jetel.component.SystemExecute; type = SYS_EXECUTE; } component { className = org.jetel.component.RunGraph; type = RUN_GRAPH; } component { className = org.jetel.component.HttpConnector; type = HTTP_CONNECTOR; } component { className = org.jetel.component.KeyGenerator; type = KEY_GEN; } component { className = org.jetel.component.AproxMergeJoin; type = APROX_MERGE_JOIN; } component { className = org.jetel.component.DBJoin; type = DBJOIN; } component { className = org.jetel.component.XLSReader; type = XLS_READER; } component { className = org.jetel.component.XLSWriter; type = XLS_WRITER; } component { className = org.jetel.component.CloverDataWriter; type = CLOVER_WRITER; } component { className = org.jetel.component.CloverDataReader; type = CLOVER_READER; } component { className = org.jetel.component.StructureWriter; type = STRUCTURE_WRITER; } component { className = org.jetel.component.Normalizer; type = NORMALIZER; } component { className = org.jetel.component.Denormalizer; type = DENORMALIZER; } component { className = org.jetel.component.Rollup; type = ROLLUP; } component { className = org.jetel.component.JmsReader; type = JMS_READER; } component { className = org.jetel.component.JmsWriter; type = JMS_WRITER; } component { className = org.jetel.component.LookupJoin; type = LOOKUP_JOIN; } component { className = org.jetel.component.LookupTableReaderWriter; type = LOOKUP_TABLE_READER_WRITER; } component { className = org.jetel.component.DataGenerator; type = DATA_GENERATOR; } component { className = org.jetel.component.SequenceChecker; type = SEQUENCE_CHECKER; } component { className = org.jetel.component.TextTableWriter; type = TEXT_TABLE_WRITER; } component { className = org.jetel.component.XmlXPathReader; type = XML_XPATH_READER; } component { className = org.jetel.component.XMLExtract; type = XML_EXTRACT; } component { className = org.jetel.component.XmlReader; type = XML_READER; } component { className = org.jetel.component.SpeedLimiter; type = SPEED_LIMITER; } component { className = org.jetel.component.JavaExecute; type = JAVA_EXECUTE; } component { className = org.jetel.component.XmlWriter; type = XML_WRITER; } component { className = org.jetel.component.ExtXmlWriter; type = EXT_XML_WRITER; } component { className = org.jetel.component.XSLDataTransformer; type = XSL_TRANSFORMER; } DEBUG [main] - Plugin org.jetel.connection loaded. id - org.jetel.connection version - 3.4.0 provider-name - Javlin a.s. connection { className = org.jetel.connection.jdbc.DBConnectionImpl; type = JDBC; } connection { className = org.jetel.connection.jms.JmsConnection; type = JMS; } DEBUG [main] - Plugin org.jetel.ctlfunction loaded. id - org.jetel.ctlfunction version - 3.4.0 provider-name - Javlin a.s. ctlfunction { libraryName = math; className = org.jetel.ctl.extensions.MathLib; } ctlfunction { libraryName = date; className = org.jetel.ctl.extensions.DateLib; } ctlfunction { libraryName = string; className = org.jetel.ctl.extensions.StringLib; } ctlfunction { libraryName = convert; className = org.jetel.ctl.extensions.ConvertLib; } ctlfunction { libraryName = container; className = org.jetel.ctl.extensions.ContainerLib; } ctlfunction { libraryName = random; className = org.jetel.ctl.extensions.RandomLib; } ctlfunction { libraryName = util; className = org.jetel.ctl.extensions.UtilLib; } ctlfunction { libraryName = dynamic; className = org.jetel.ctl.extensions.DynamicLib; } DEBUG [main] - Plugin org.jetel.engine loaded. id - org.jetel.engine version - 3.4.0 provider-name - Javlin a.s. dictionaryType { className = org.jetel.graph.dictionary.StringDictionaryType; type = string; } dictionaryType { className = org.jetel.graph.dictionary.ObjectDictionaryType; type = object; } dictionaryType { className = org.jetel.graph.dictionary.ReadableChannelDictionaryType; type = readable.channel; } dictionaryType { className = org.jetel.graph.dictionary.WritableChannelDictionaryType; type = writable.channel; } dictionaryType { className = org.jetel.graph.dictionary.IntegerDictionaryType; type = integer; } dictionaryType { className = org.jetel.graph.dictionary.LongDictionaryType; type = long; } dictionaryType { className = org.jetel.graph.dictionary.DecimalDictionaryType; type = decimal; } dictionaryType { className = org.jetel.graph.dictionary.NumberDictionaryType; type = number; } dictionaryType { className = org.jetel.graph.dictionary.DateDictionaryType; type = date; } dictionaryType { className = org.jetel.graph.dictionary.BooleanDictionaryType; type = boolean; } dictionaryType { className = org.jetel.graph.dictionary.ByteDictionaryType; type = byte; } dictionaryType { className = org.jetel.graph.dictionary.ListDictionaryType; type = list; } dictionaryType { className = org.jetel.graph.dictionary.MapDictionaryType; type = map; } tlCompiler { className = org.jetel.ctl.TLCompiler; type = simple.compiler; } ctlfunction { libraryName = integral; className = org.jetel.ctl.extensions.IntegralLib; } DEBUG [main] - Plugin org.jetel.jdbc loaded. id - org.jetel.jdbc version - 3.4.0 provider-name - Javlin a.s. jdbcSpecific { database = GENERIC; name = Generic; class = org.jetel.connection.jdbc.specific.impl.DefaultJdbcSpecific; } jdbcSpecific { database = DB2; name = DB2; class = org.jetel.connection.jdbc.specific.impl.DB2Specific; } jdbcSpecific { database = DERBY; name = Derby; class = org.jetel.connection.jdbc.specific.impl.DerbySpecific; productName = Apache Derby; } jdbcSpecific { database = FIREBIRD; name = Firebird; class = org.jetel.connection.jdbc.specific.impl.FirebirdSpecific; } jdbcSpecific { database = GENERICODBC; name = Generic ODBC; class = org.jetel.connection.jdbc.specific.impl.GenericODBCSpecific; } jdbcSpecific { database = HIVE; name = Hive; class = org.jetel.connection.jdbc.specific.impl.HiveSpecific; } jdbcSpecific { database = INFORMIX; name = Informix; class = org.jetel.connection.jdbc.specific.impl.InformixSpecific; } jdbcSpecific { database = MSACCESS; name = Microsoft Access; class = org.jetel.connection.jdbc.specific.impl.MSAccessSpecific; } jdbcSpecific { database = MSSQL; name = MS SQL Server 2008-2012; class = org.jetel.connection.jdbc.specific.impl.MSSQLSpecific; productName = Microsoft SQL Server; } jdbcSpecific { database = MSSQL2005; name = MS SQL Server 2000-2005; class = org.jetel.connection.jdbc.specific.impl.MSSQLSpecific2005; } jdbcSpecific { database = MYSQL; name = MySQL; class = org.jetel.connection.jdbc.specific.impl.MySQLSpecific; productName = MySQL; } jdbcSpecific { database = ORACLE; name = Oracle; class = org.jetel.connection.jdbc.specific.impl.OracleSpecific; productName = Oracle; } jdbcSpecific { database = PERVASIVE; name = Pervasive; class = org.jetel.connection.jdbc.specific.impl.PervasiveSpecific; } jdbcSpecific { database = POSTGRE; name = PostgreSQL; class = org.jetel.connection.jdbc.specific.impl.PostgreSpecific; } jdbcSpecific { database = SYBASE; name = Sybase; class = org.jetel.connection.jdbc.specific.impl.SybaseSpecific; } jdbcSpecific { database = SQLITE; name = SQLite; class = org.jetel.connection.jdbc.specific.impl.SQLiteSpecific; } jdbcDriver { database = MYSQL; urlHint = jdbc:mysql://hostname:3306/database; jdbc.zeroDateTimeBehavior = convertToNull; name = MySQL; driverLibrary = lib/mysql/mysql-connector-java-5.1.22-bin.jar; jdbcSpecific = MYSQL; dbDriver = org.gjt.mm.mysql.Driver; } jdbcDriver { database = ORACLE; urlHint = jdbc:oracle:thin:@host:1521:SID,jdbc:oracle:thin:@cluster-alias:1521/service_name,jdbc:oracle:thin:@(DESCRIPTION=(LOAD_BALANCE=on)(ADDRESS=(PROTOCOL=TCP)(HOST=host1)(PORT=1521))(ADDRESS=(PROTOCOL=TCP)(HOST=host2)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=service_name))),jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=cluster_alias)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=service_name))),jdbc:oracle:thin:@host:1521/service_name; name = Oracle; driverLibrary = lib/oracle/ojdbc6.jar; jdbcSpecific = ORACLE; dbDriver = oracle.jdbc.OracleDriver; } jdbcDriver { database = POSTGRE; urlHint = jdbc:postgresql://hostname/database; name = PostgreSQL; driverLibrary = lib/postgre/postgresql-9.2-1002.jdbc4.jar; jdbcSpecific = POSTGRE; dbDriver = org.postgresql.Driver; } jdbcDriver { database = MSSQL; urlHint = jdbc:jtds:sqlserver://hostname:1433/database; name = Microsoft SQL Server; driverLibrary = lib/jtds/jtds-1.2.4.jar; jdbcSpecific = MSSQL; dbDriver = net.sourceforge.jtds.jdbc.Driver; } jdbcDriver { database = GENERICODBC; urlHint = jdbc:odbc:dsn_source;; name = Generic ODBC; driverLibrary = sun.jdbc.odbc.JdbcOdbcDriver; jdbcSpecific = GENERICODBC; dbDriver = sun.jdbc.odbc.JdbcOdbcDriver; } jdbcDriver { database = MSACCESS; urlHint = jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=database_file,jdbc:odbc:driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=database_file,jdbc:odbc:odbc_source_name; name = Microsoft Access; driverLibrary = sun.jdbc.odbc.JdbcOdbcDriver; jdbcSpecific = MSACCESS; dbDriver = sun.jdbc.odbc.JdbcOdbcDriver; } jdbcDriver { database = SYBASE; urlHint = jdbc:jtds:sybase://hostname:7100/database; name = Sybase; driverLibrary = lib/jtds/jtds-1.2.4.jar; jdbcSpecific = SYBASE; dbDriver = net.sourceforge.jtds.jdbc.Driver; } jdbcDriver { database = SQLITE; urlHint = jdbc:sqlite:C:/database; name = SQLite; driverLibrary = lib/sqlite/sqlite-jdbc-3.6.20.1.jar; jdbcSpecific = SQLITE; dbDriver = org.sqlite.JDBC; } jdbcDriver { database = DERBY; urlHint = jdbc:derby://hostname:1527/derby.db; name = Derby; driverLibrary = lib/derby/derbyclient.jar; jdbcSpecific = DERBY; dbDriver = org.apache.derby.jdbc.ClientDriver; } jdbcDriver { database = FIREBIRD; urlHint = jdbc:firebirdsql:localhost/3050:/firebird/test.gdb; name = Firebird; driverLibrary = lib/firebird/jaybird-full-2.2.1.jar; jdbcSpecific = FIREBIRD; dbDriver = org.firebirdsql.jdbc.FBDriver; } DEBUG [main] - Plugin org.jetel.lookup loaded. id - org.jetel.lookup version - 3.4.0 provider-name - Javlin a.s. lookup { className = org.jetel.lookup.SimpleLookupTable; type = simpleLookup; } lookup { className = org.jetel.lookup.DBLookupTable; type = dbLookup; } lookup { className = org.jetel.lookup.RangeLookupTable; type = rangeLookup; } DEBUG [main] - Plugin org.jetel.sequence loaded. id - org.jetel.sequence version - 3.4.0 provider-name - Javlin a.s. sequence { className = org.jetel.sequence.SimpleSequence; type = SIMPLE_SEQUENCE; } sequence { className = org.jetel.sequence.PrimitiveSequence; type = PRIMITIVE_SEQUENCE; } DEBUG [main] - Plugin org.jetel.thirdparty loaded. id - org.jetel.thirdparty version - 3.4.0 provider-name - Javlin a.s. component { className = org.jetel.component.Filter; type = FILTER; } component { className = com.linagora.component.LdapReader; type = LDAP_READER; } component { className = com.linagora.component.LdapWriter; type = LDAP_WRITER; } DEBUG [main] - Plugin org.jetel.tlfunction loaded. id - org.jetel.tlfunction version - 3.4.0 provider-name - Javlin a.s. tlfunction { libraryName = math; function = sqrt,log,log10,exp,round,pow,pi,e,random,random_gaussian,random_boolean,random_int,random_long,abs,bit_and,bit_or,bit_xor,bit_set,bit_invert,bit_is_set,bit_lshift,bit_rshift; className = org.jetel.interpreter.extensions.MathLib; } tlfunction { libraryName = date; function = today,dateadd,datediff,trunc,trunc_date,random_date; className = org.jetel.interpreter.extensions.DateLib; } tlfunction { libraryName = string; function = concat,uppercase,lowercase,substring,left,right,trim,length,replace,split,char_at,is_blank,is_ascii,is_number,is_integer,is_long,is_date,remove_diacritic,remove_blank_space,get_alphanumeric_chars,translate,join,index_of,count_char,chop,remove_nonprintable,remove_nonascii,find,cut,random_string; className = org.jetel.interpreter.extensions.StringLib; } tlfunction { libraryName = convert; function = num2str,date2str,str2date,date2num,str2num,try_convert,base64byte,byte2base64,bits2str,str2bits,hex2byte,byte2hex,num2num,num2bool,bool2num,str2bool,long2date,date2long,to_string,md5,sha,long2pacdecimal,pacdecimal2long,get_field_name,get_field_type; className = org.jetel.interpreter.extensions.ConvertLib; } tlfunction { libraryName = container; function = remove_all,push,pop,poll,remove,insert,sort,copy,reverse,dict_put_str,dict_get_str; className = org.jetel.interpreter.extensions.ContainerLib; } INFO [main] - Graph definition file: D:\CloverETL\Workspace\KPIs\data-out\StatusCake-Page_Speed_Checks.grf ERROR [main] - Error in reading graph from XML ! Unknown component: JSON_EXTRACT class: JSON_EXTRACT ERROR [main] - Error details: org.jetel.exception.XMLConfigurationException at org.jetel.graph.TransformationGraphXMLReaderWriter.throwXMLConfigurationException(TransformationGraphXMLReaderWriter.java:921) at org.jetel.graph.TransformationGraphXMLReaderWriter.instantiatePhases(TransformationGraphXMLReaderWriter.java:496) at org.jetel.graph.TransformationGraphXMLReaderWriter.read(TransformationGraphXMLReaderWriter.java:395) at org.jetel.graph.TransformationGraphXMLReaderWriter.read(TransformationGraphXMLReaderWriter.java:305) at org.jetel.graph.TransformationGraphXMLReaderWriter.loadGraph(TransformationGraphXMLReaderWriter.java:233) at org.jetel.main.runGraph.main(runGraph.java:377) Caused by: org.jetel.exception.XMLConfigurationException at org.jetel.graph.TransformationGraphXMLReaderWriter.throwXMLConfigurationException(TransformationGraphXMLReaderWriter.java:921) at org.jetel.graph.TransformationGraphXMLReaderWriter.throwXMLConfigurationException(TransformationGraphXMLReaderWriter.java:916) at org.jetel.graph.TransformationGraphXMLReaderWriter.instantiateNodes(TransformationGraphXMLReaderWriter.java:549) at org.jetel.graph.TransformationGraphXMLReaderWriter.instantiatePhases(TransformationGraphXMLReaderWriter.java:490) ... 4 more Caused by: java.lang.RuntimeException: Unknown component: JSON_EXTRACT class: JSON_EXTRACT at org.jetel.component.ComponentFactory.getComponentClass(ComponentFactory.java:111) at org.jetel.component.ComponentFactory.createComponent(ComponentFactory.java:128) at org.jetel.graph.TransformationGraphXMLReaderWriter.instantiateNodes(TransformationGraphXMLReaderWriter.java:534) ... 5 more Caused by: java.lang.ClassNotFoundException: JSON_EXTRACT at java.net.URLClassLoader.findClass(URLClassLoader.java:382) at java.lang.ClassLoader.loadClass(ClassLoader.java:424) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349) at java.lang.ClassLoader.loadClass(ClassLoader.java:357) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:264) at org.jetel.component.ComponentFactory.getComponentClass(ComponentFactory.java:101) ... 7 more ERROR [main] - --------------------------------- Error details ---------------------------------- Error in reading graph from XML ! Unknown component: JSON_EXTRACT class: JSON_EXTRACT ----------------------------------------------------------------------------------