mff-uk / odcs

ODCleanStore
1 stars 11 forks source link

Failed to set class value for: FileLoaderConfig.validDataBefore #1308

Closed janvojt closed 10 years ago

janvojt commented 10 years ago

DBpedia finishes with warning with the following error in the log (run in debug mode):

Failed to set class value for: FileLoaderConfig.validDataBefore

Stack trace:

java.beans.IntrospectionException Method not found: setValidDataBefore
 at java.beans.PropertyDescriptor.(PropertyDescriptor.java:110)
 at java.beans.PropertyDescriptor.(PropertyDescriptor.java:70)
 at cz.cuni.mff.xrg.odcs.commons.module.config.ConfigWrap.copyFields(ConfigWrap.java:236)
 at cz.cuni.mff.xrg.odcs.commons.module.config.ConfigWrap.deserialize(ConfigWrap.java:168)
 at cz.cuni.mff.xrg.odcs.commons.module.dpu.ConfigurableBase.configure(ConfigurableBase.java:43)
 at cz.cuni.mff.xrg.odcs.backend.execution.dpu.impl.Configurator.preAction(Configurator.java:71)
 at cz.cuni.mff.xrg.odcs.backend.execution.dpu.Executor.executePreExecutors(Executor.java:195)
 at cz.cuni.mff.xrg.odcs.backend.execution.dpu.Executor.execute(Executor.java:318)
 at cz.cuni.mff.xrg.odcs.backend.execution.dpu.Executor.run(Executor.java:441)
 at java.lang.Thread.run(Thread.java:744)
skodapetr commented 10 years ago

Well I can definitely change the level to warn(maybe), but basically the message is right in this case. It says that there was some unset variable in the configuration of given DPU and ODCS tries to set them from default configuration (initialized by empty ctor) but failed as there is no setter for given fields.

@tomas-knap How should ODCS behave in such situations? In some cases this may cause pipeline failure or result in bad output, so from that point of view the error level looks ok. On the other hand if author use onDesirialize method (like Jirka do) then it's not in fact a problem.

tomas-knap commented 10 years ago

1) I think it is an error. It does not make much sense to set certain attribute only in onDeserialize(). But we should specify in the tutorial that every attribute on the config class must have proper setter.

2) Please correct that for dbpedia pipeline, so that when user installs odcs and tries the dbpedia pipeline, everything goes smoothly.

skodapetr commented 10 years ago

OK, I've added the getters and setters .. but I hope I did it right as usage of some fields is not exactly clear to me. @tomesj Can you please check that?

Basically if the serialized configuration do not contains value for certain field, then ODCS create a default configuration and try to get/set that property from default do deserialized configuration. The filed I worry about is endpointParams.

tomesj commented 10 years ago

@skodape Nemůžu pochopit, proč upravuješ SPARQL extractor, když Ti Honza nareportoval problém u configurace SPARQL loaderu

skodapetr commented 10 years ago

@tomesj Aha .. tak to se bude muset upravit oboje ..

Upravil jsem ho proto, že jsem si pustil DBPedii na lokálu a šel jsem podle exception.

Nicméně pokud chybí settery, gettry všude tak bude třeba upravit všechny konfigurace? Mám to udělat já nebo chceš ty?

tomesj commented 10 years ago

Já teď mám jiné starosti, tak to udělej ty :-)

skodapetr commented 10 years ago

Well should be ok and if not it's problem of a DPU not ODCS so closing.