Thanks,
im sorry but i cant solve the problem…
my Code:
package org.company.components;
import java.io.IOException;
import java.io.InputStream;
import org.jetel.exception.ComponentNotReadyException;
import org.jetel.exception.GraphConfigurationException;
import org.jetel.exception.XMLConfigurationException;
import org.jetel.graph.TransformationGraph;
import org.jetel.graph.TransformationGraphXMLReaderWriter;
import org.jetel.graph.runtime.EngineInitializer;
import org.jetel.graph.runtime.GraphRuntimeContext;
import org.jetel.graph.runtime.IThreadManager;
import org.jetel.graph.runtime.SimpleThreadManager;
import org.jetel.graph.runtime.WatchDog;
import de.schlichtherle.io.FileInputStream;
public class NewComponent {
public static void main(String[] args) throws IOException
{
// engine customization
GraphRuntimeContext runtimeContext = new GraphRuntimeContext();
TransformationGraph graph = null;
InputStream graphInputStream = null;
// engine initialization - should be called only once
EngineInitializer.initEngine("D:\\eclipse\\plugins\\com.cloveretl.gui_3.3.0.021P\\lib\\plugins", "C:\\Program Files\\CloverETL Designer Community\\plugins\\com.cloveretl.gui_3.3.0.021P\\lib\\plugins\\org.jetel.engine\\plugin.xml", "");
graphInputStream = new FileInputStream("C:\\cloverETL\\graph\\runGraph.grf");
// graph loading
try {
graph = TransformationGraphXMLReaderWriter.loadGraph(graphInputStream, runtimeContext);
} catch (XMLConfigurationException | GraphConfigurationException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// engine initialization
try {
EngineInitializer.initGraph(graph, runtimeContext);
} catch (ComponentNotReadyException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// graph running
IThreadManager threadManager = new SimpleThreadManager();
WatchDog watchDog = new WatchDog(graph, runtimeContext);
threadManager.executeWatchDog(watchDog);
}
}
The Problem is TransformationGraphXMLReaderWriter.loadGraph
when i use my graph path i become this:
INFO [main] - *** CloverETL framework/transformation graph, (c) 2002-2012 Javlin a.s, released under GNU Lesser General Public License ***
INFO [main] - Running with CloverETL library version 3.3.0 build#021 compiled 15/10/2012 15:10:55
INFO [main] - Running on 4 CPU(s), OS Windows 7, architecture amd64, Java version 1.7.0_09, max available memory for JVM 1223360 KB
INFO [main] - Loading default properties from: defaultProperties
INFO [main] - Loading Clover properties from file:C:\Program Files\CloverETL Designer Community\plugins\com.cloveretl.gui_3.3.0.021P\lib\plugins\org.jetel.engine\plugin.xml
DEBUG [main] - Plugin org.jetel.bulkloader loaded.
id - org.jetel.bulkloader
version - 3.3.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.3.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.3.0.
provider-name - Javlin a.s.
connection { className = org.jetel.connection.jdbc.DBConnection; type = JDBC; }
connection { className = org.jetel.connection.jms.JmsConnection; type = JMS; }
DEBUG [main] - Plugin org.jetel.ctlfunction loaded.
id - org.jetel.ctlfunction
version - 3.3.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.3.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.3.0.
provider-name - Javlin a.s.
jdbcSpecific { name = Generic; class = org.jetel.connection.jdbc.specific.impl.DefaultJdbcSpecific; database = GENERIC; }
jdbcSpecific { name = DB2; class = org.jetel.connection.jdbc.specific.impl.DB2Specific; database = DB2; }
jdbcSpecific { name = Derby; class = org.jetel.connection.jdbc.specific.impl.DerbySpecific; productName = Apache Derby; database = DERBY; }
jdbcSpecific { name = Firebird; class = org.jetel.connection.jdbc.specific.impl.FirebirdSpecific; database = FIREBIRD; }
jdbcSpecific { name = Generic ODBC; class = org.jetel.connection.jdbc.specific.impl.GenericODBCSpecific; database = GENERICODBC; }
jdbcSpecific { name = Informix; class = org.jetel.connection.jdbc.specific.impl.InformixSpecific; database = INFORMIX; }
jdbcSpecific { name = Microsoft Access; class = org.jetel.connection.jdbc.specific.impl.MSAccessSpecific; database = MSACCESS; }
jdbcSpecific { name = MS SQL Server 2008-2012; class = org.jetel.connection.jdbc.specific.impl.MSSQLSpecific; productName = Microsoft SQL Server; database = MSSQL; }
jdbcSpecific { name = MS SQL Server 2000-2005; class = org.jetel.connection.jdbc.specific.impl.MSSQLSpecific2005; database = MSSQL2005; }
jdbcSpecific { name = MySQL; class = org.jetel.connection.jdbc.specific.impl.MySQLSpecific; productName = MySQL; database = MYSQL; }
jdbcSpecific { name = Oracle; class = org.jetel.connection.jdbc.specific.impl.OracleSpecific; productName = Oracle; database = ORACLE; }
jdbcSpecific { name = Pervasive; class = org.jetel.connection.jdbc.specific.impl.PervasiveSpecific; database = PERVASIVE; }
jdbcSpecific { name = PostgreSQL; class = org.jetel.connection.jdbc.specific.impl.PostgreSpecific; database = POSTGRE; }
jdbcSpecific { name = Sybase; class = org.jetel.connection.jdbc.specific.impl.SybaseSpecific; database = SYBASE; }
jdbcSpecific { name = SQLite; class = org.jetel.connection.jdbc.specific.impl.SQLiteSpecific; database = SQLITE; }
jdbcDriver { driverLibrary = lib/mysql/mysql-connector-java-5.1.15-bin.jar; jdbcSpecific = MYSQL; name = MySQL; dbDriver = org.gjt.mm.mysql.Driver; jdbc.zeroDateTimeBehavior = convertToNull; urlHint = jdbc:mysql://hostname:3306/database; database = MYSQL; }
jdbcDriver { driverLibrary = lib/oracle/ojdbc6.jar; jdbcSpecific = ORACLE; name = Oracle; dbDriver = oracle.jdbc.OracleDriver; 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; database = ORACLE; }
jdbcDriver { driverLibrary = lib/postgre/postgresql-8.3-603.jdbc3.jar; jdbcSpecific = POSTGRE; name = PostgreSQL; dbDriver = org.postgresql.Driver; urlHint = jdbc:postgresql://hostname/database; database = POSTGRE; }
jdbcDriver { driverLibrary = lib/jtds/jtds-1.2.4.jar; jdbcSpecific = MSSQL; name = Microsoft SQL Server; dbDriver = net.sourceforge.jtds.jdbc.Driver; urlHint = jdbc:jtds:sqlserver://hostname:1433/database; database = MSSQL; }
jdbcDriver { driverLibrary = sun.jdbc.odbc.JdbcOdbcDriver; jdbcSpecific = GENERICODBC; name = Generic ODBC; dbDriver = sun.jdbc.odbc.JdbcOdbcDriver; urlHint = jdbc:odbc:dsn_source;; database = GENERICODBC; }
jdbcDriver { driverLibrary = sun.jdbc.odbc.JdbcOdbcDriver; jdbcSpecific = MSACCESS; name = Microsoft Access; dbDriver = sun.jdbc.odbc.JdbcOdbcDriver; 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; database = MSACCESS; }
jdbcDriver { driverLibrary = lib/jtds/jtds-1.2.4.jar; jdbcSpecific = SYBASE; name = Sybase; dbDriver = net.sourceforge.jtds.jdbc.Driver; urlHint = jdbc:jtds:sybase://hostname:7100/database; database = SYBASE; }
jdbcDriver { driverLibrary = lib/sqlite/sqlite-jdbc-3.6.20.1.jar; jdbcSpecific = SQLITE; name = SQLite; dbDriver = org.sqlite.JDBC; urlHint = jdbc:sqlite:C:/database; database = SQLITE; }
jdbcDriver { driverLibrary = lib/derby/derbyclient.jar; jdbcSpecific = DERBY; name = Derby; dbDriver = org.apache.derby.jdbc.ClientDriver; urlHint = jdbc:derby://hostname:1527/derby.db; database = DERBY; }
jdbcDriver { driverLibrary = lib/firebird/jaybird-full-2.1.6.jar; jdbcSpecific = FIREBIRD; name = Firebird; dbDriver = org.firebirdsql.jdbc.FBDriver; urlHint = jdbc:firebirdsql:localhost/3050:/firebird/test.gdb; database = FIREBIRD; }
DEBUG [main] - Plugin org.jetel.license loaded.
id - org.jetel.license
version - 3.3.0.
provider-name - Javlin a.s.
DEBUG [main] - Plugin org.jetel.lookup loaded.
id - org.jetel.lookup
version - 3.3.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.3.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.3.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.3.0.
provider-name - Javlin a.s.
tlfunction { libraryName = math; className = org.jetel.interpreter.extensions.MathLib; 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; }
tlfunction { libraryName = date; className = org.jetel.interpreter.extensions.DateLib; function = today,dateadd,datediff,trunc,trunc_date,random_date; }
tlfunction { libraryName = string; className = org.jetel.interpreter.extensions.StringLib; 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; }
tlfunction { libraryName = convert; className = org.jetel.interpreter.extensions.ConvertLib; 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; }
tlfunction { libraryName = container; className = org.jetel.interpreter.extensions.ContainerLib; function = remove_all,push,pop,poll,remove,insert,sort,copy,reverse,dict_put_str,dict_get_str; }
org.jetel.exception.XMLConfigurationException: Can't load property definition from workspace.prm
at org.jetel.graph.TransformationGraphXMLReaderWriter.instantiateProperties(TransformationGraphXMLReaderWriter.java:749)
at org.jetel.graph.TransformationGraphXMLReaderWriter.read(TransformationGraphXMLReaderWriter.java:356)
at org.jetel.graph.TransformationGraphXMLReaderWriter.read(TransformationGraphXMLReaderWriter.java:302)
at org.jetel.graph.TransformationGraphXMLReaderWriter.loadGraph(TransformationGraphXMLReaderWriter.java:231)
at org.company.components.NewComponent.main(NewComponent.java:36)
Caused by: java.io.FileNotFoundException: workspace.prm (Das System kann die angegebene Datei nicht finden)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(Unknown Source)
at java.io.FileInputStream.<init>(Unknown Source)
at org.jetel.util.file.FileUtils.getInputStream(FileUtils.java:527)
at org.jetel.util.file.FileUtils.getReadableChannel(FileUtils.java:437)
at org.jetel.graph.TransformationGraph.loadGraphPropertiesSafe(TransformationGraph.java:925)
at org.jetel.graph.TransformationGraphXMLReaderWriter.instantiateProperties(TransformationGraphXMLReaderWriter.java:747)
... 4 more
Exception in thread "main" java.lang.NullPointerException
at org.jetel.graph.runtime.EngineInitializer.initGraph(EngineInitializer.java:248)
at org.company.components.NewComponent.main(NewComponent.java:44)
if i use the workspace for graphInputStream = new FileInputStream(“C:\\cloverETL\\workspace.prm”); i become this:
INFO [main] - *** CloverETL framework/transformation graph, (c) 2002-2012 Javlin a.s, released under GNU Lesser General Public License ***
INFO [main] - Running with CloverETL library version 3.3.0 build#021 compiled 15/10/2012 15:10:55
INFO [main] - Running on 4 CPU(s), OS Windows 7, architecture amd64, Java version 1.7.0_09, max available memory for JVM 1223360 KB
INFO [main] - Loading default properties from: defaultProperties
INFO [main] - Loading Clover properties from file:C:\Program Files\CloverETL Designer Community\plugins\com.cloveretl.gui_3.3.0.021P\lib\plugins\org.jetel.engine\plugin.xml
DEBUG [main] - Plugin org.jetel.bulkloader loaded.
id - org.jetel.bulkloader
version - 3.3.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.3.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.3.0.
provider-name - Javlin a.s.
connection { className = org.jetel.connection.jdbc.DBConnection; type = JDBC; }
connection { className = org.jetel.connection.jms.JmsConnection; type = JMS; }
DEBUG [main] - Plugin org.jetel.ctlfunction loaded.
id - org.jetel.ctlfunction
version - 3.3.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.3.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.3.0.
provider-name - Javlin a.s.
jdbcSpecific { name = Generic; class = org.jetel.connection.jdbc.specific.impl.DefaultJdbcSpecific; database = GENERIC; }
jdbcSpecific { name = DB2; class = org.jetel.connection.jdbc.specific.impl.DB2Specific; database = DB2; }
jdbcSpecific { name = Derby; class = org.jetel.connection.jdbc.specific.impl.DerbySpecific; productName = Apache Derby; database = DERBY; }
jdbcSpecific { name = Firebird; class = org.jetel.connection.jdbc.specific.impl.FirebirdSpecific; database = FIREBIRD; }
jdbcSpecific { name = Generic ODBC; class = org.jetel.connection.jdbc.specific.impl.GenericODBCSpecific; database = GENERICODBC; }
jdbcSpecific { name = Informix; class = org.jetel.connection.jdbc.specific.impl.InformixSpecific; database = INFORMIX; }
jdbcSpecific { name = Microsoft Access; class = org.jetel.connection.jdbc.specific.impl.MSAccessSpecific; database = MSACCESS; }
jdbcSpecific { name = MS SQL Server 2008-2012; class = org.jetel.connection.jdbc.specific.impl.MSSQLSpecific; productName = Microsoft SQL Server; database = MSSQL; }
jdbcSpecific { name = MS SQL Server 2000-2005; class = org.jetel.connection.jdbc.specific.impl.MSSQLSpecific2005; database = MSSQL2005; }
jdbcSpecific { name = MySQL; class = org.jetel.connection.jdbc.specific.impl.MySQLSpecific; productName = MySQL; database = MYSQL; }
jdbcSpecific { name = Oracle; class = org.jetel.connection.jdbc.specific.impl.OracleSpecific; productName = Oracle; database = ORACLE; }
jdbcSpecific { name = Pervasive; class = org.jetel.connection.jdbc.specific.impl.PervasiveSpecific; database = PERVASIVE; }
jdbcSpecific { name = PostgreSQL; class = org.jetel.connection.jdbc.specific.impl.PostgreSpecific; database = POSTGRE; }
jdbcSpecific { name = Sybase; class = org.jetel.connection.jdbc.specific.impl.SybaseSpecific; database = SYBASE; }
jdbcSpecific { name = SQLite; class = org.jetel.connection.jdbc.specific.impl.SQLiteSpecific; database = SQLITE; }
jdbcDriver { driverLibrary = lib/mysql/mysql-connector-java-5.1.15-bin.jar; jdbcSpecific = MYSQL; name = MySQL; dbDriver = org.gjt.mm.mysql.Driver; jdbc.zeroDateTimeBehavior = convertToNull; urlHint = jdbc:mysql://hostname:3306/database; database = MYSQL; }
jdbcDriver { driverLibrary = lib/oracle/ojdbc6.jar; jdbcSpecific = ORACLE; name = Oracle; dbDriver = oracle.jdbc.OracleDriver; 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; database = ORACLE; }
jdbcDriver { driverLibrary = lib/postgre/postgresql-8.3-603.jdbc3.jar; jdbcSpecific = POSTGRE; name = PostgreSQL; dbDriver = org.postgresql.Driver; urlHint = jdbc:postgresql://hostname/database; database = POSTGRE; }
jdbcDriver { driverLibrary = lib/jtds/jtds-1.2.4.jar; jdbcSpecific = MSSQL; name = Microsoft SQL Server; dbDriver = net.sourceforge.jtds.jdbc.Driver; urlHint = jdbc:jtds:sqlserver://hostname:1433/database; database = MSSQL; }
jdbcDriver { driverLibrary = sun.jdbc.odbc.JdbcOdbcDriver; jdbcSpecific = GENERICODBC; name = Generic ODBC; dbDriver = sun.jdbc.odbc.JdbcOdbcDriver; urlHint = jdbc:odbc:dsn_source;; database = GENERICODBC; }
jdbcDriver { driverLibrary = sun.jdbc.odbc.JdbcOdbcDriver; jdbcSpecific = MSACCESS; name = Microsoft Access; dbDriver = sun.jdbc.odbc.JdbcOdbcDriver; 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; database = MSACCESS; }
jdbcDriver { driverLibrary = lib/jtds/jtds-1.2.4.jar; jdbcSpecific = SYBASE; name = Sybase; dbDriver = net.sourceforge.jtds.jdbc.Driver; urlHint = jdbc:jtds:sybase://hostname:7100/database; database = SYBASE; }
jdbcDriver { driverLibrary = lib/sqlite/sqlite-jdbc-3.6.20.1.jar; jdbcSpecific = SQLITE; name = SQLite; dbDriver = org.sqlite.JDBC; urlHint = jdbc:sqlite:C:/database; database = SQLITE; }
jdbcDriver { driverLibrary = lib/derby/derbyclient.jar; jdbcSpecific = DERBY; name = Derby; dbDriver = org.apache.derby.jdbc.ClientDriver; urlHint = jdbc:derby://hostname:1527/derby.db; database = DERBY; }
jdbcDriver { driverLibrary = lib/firebird/jaybird-full-2.1.6.jar; jdbcSpecific = FIREBIRD; name = Firebird; dbDriver = org.firebirdsql.jdbc.FBDriver; urlHint = jdbc:firebirdsql:localhost/3050:/firebird/test.gdb; database = FIREBIRD; }
DEBUG [main] - Plugin org.jetel.license loaded.
id - org.jetel.license
version - 3.3.0.
provider-name - Javlin a.s.
DEBUG [main] - Plugin org.jetel.lookup loaded.
id - org.jetel.lookup
version - 3.3.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.3.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.3.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.3.0.
provider-name - Javlin a.s.
tlfunction { libraryName = math; className = org.jetel.interpreter.extensions.MathLib; 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; }
tlfunction { libraryName = date; className = org.jetel.interpreter.extensions.DateLib; function = today,dateadd,datediff,trunc,trunc_date,random_date; }
tlfunction { libraryName = string; className = org.jetel.interpreter.extensions.StringLib; 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; }
tlfunction { libraryName = convert; className = org.jetel.interpreter.extensions.ConvertLib; 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; }
tlfunction { libraryName = container; className = org.jetel.interpreter.extensions.ContainerLib; function = remove_all,push,pop,poll,remove,insert,sort,copy,reverse,dict_put_str,dict_get_str; }
[Fatal Error] :1:1: Content ist nicht zulässig in Prolog.
ERROR [main] - Error when parsing graph's XML definition --> on line 1 row 1
org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 1; Content ist nicht zulässig in Prolog.
at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(Unknown Source)
at javax.xml.parsers.DocumentBuilder.parse(Unknown Source)
at org.jetel.graph.TransformationGraphXMLReaderWriter.prepareDocument(TransformationGraphXMLReaderWriter.java:260)
at org.jetel.graph.TransformationGraphXMLReaderWriter.read(TransformationGraphXMLReaderWriter.java:300)
at org.jetel.graph.TransformationGraphXMLReaderWriter.loadGraph(TransformationGraphXMLReaderWriter.java:231)
at org.company.components.NewComponent.main(NewComponent.java:36)
org.jetel.exception.XMLConfigurationException: org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 1; Content ist nicht zulässig in Prolog.
at org.jetel.graph.TransformationGraphXMLReaderWriter.prepareDocument(TransformationGraphXMLReaderWriter.java:268)
at org.jetel.graph.TransformationGraphXMLReaderWriter.read(TransformationGraphXMLReaderWriter.java:300)
at org.jetel.graph.TransformationGraphXMLReaderWriter.loadGraph(TransformationGraphXMLReaderWriter.java:231)
at org.company.components.NewComponent.main(NewComponent.java:36)
Caused by: org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 1; Content ist nicht zulässig in Prolog.
at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(Unknown Source)
at javax.xml.parsers.DocumentBuilder.parse(Unknown Source)
at org.jetel.graph.TransformationGraphXMLReaderWriter.prepareDocument(TransformationGraphXMLReaderWriter.java:260)
... 3 more
Exception in thread "main" java.lang.NullPointerException
at org.jetel.graph.runtime.EngineInitializer.initGraph(EngineInitializer.java:248)
at org.company.components.NewComponent.main(NewComponent.java:44)
I dont understand the problem and all javadoc and forum reads cant help me.
Sorry for my maybe stupid posts!
Thanks for your help