mavenelasticsearchapache-tikastormcrawler

StormCrawler /Elastic Search Apache Tika for parsing PDF's. Getting error when running topology


I get the following errors when I run the es-crawler.flux topology. I'm not sure what I'm doing wrong. I don't think theres are yaml errors?


  **I added the Apache Tika module as an dependency in the pom.xml. file** 


           <!-- Add tika dependency  -->
              <dependency>
                      <groupId>com.digitalpebble.stormcrawler</groupId>
                      <artifactId>storm-crawler-tika</artifactId>
                      <version>${stormcrawler.version}</version>
              </dependency>

Updated the es-crawler.flux file as referenced here* https://gist.github.com/jnioche/3f09c2e3f7da845181b733253bc806f1

I ran the topology
**Got the following results.**

Exception in thread "main" Cannot create property=streams for JavaBean=org.apache.storm.flux.model.TopologyDef@65e98b1c in 'string', line 1, column 1: name: "devcrawler" ^Cannot create property=grouping for JavaBean=org.apache.storm.flux.model.StreamDef@1ff4931d in 'string', line 94, column 5: - from: "shunt"``` ^

```    in 'string', line 97, column 7:
         type: LOCAL_OR_SHUFFLE
         ^
    Unable to find property 'streamid' on class: org.apache.storm.flux.model.GroupingDef
    in 'string', line 98, column 17:
         streamid: "tika"

 ```   Unable to find property 'streamid' on class: org.apache.storm.flux.model.GroupingDef
    in 'string', line 98, column 17:
         streamid: "tika"
                   ^

   in 'string', line 97, column 7:
         type: LOCAL_OR_SHUFFLE
         ^

     in 'string', line 63, column 3:
     - from: "spout"
     ^

      at org.yaml.snakeyaml.constructor.Constructor$ConstructMapping.constructJavaBean2ndStep(Constructor.java:292)
       at org.yaml.snakeyaml.constructor.Constructor$ConstructMapping.construct(Constructor.java:171)
       at org.yaml.snakeyaml.constructor.Constructor$ConstructYamlObject.construct(Constructor.java:331)
       at org.yaml.snakeyaml.constructor.BaseConstructor.constructObjectNoCheck(BaseConstructor.java:230)
       at org.yaml.snakeyaml.constructor.BaseConstructor.constructObject(BaseConstructor.java:219)
       at org.yaml.snakeyaml.constructor.BaseConstructor.constructDocument(BaseConstructor.java:173)
       at org.yaml.snakeyaml.constructor.BaseConstructor.getSingleData(BaseConstructor.java:157)
       at org.yaml.snakeyaml.Yaml.loadFromReader(Yaml.java:472)
       at org.yaml.snakeyaml.Yaml.load(Yaml.java:398)
       at org.apache.storm.flux.parser.FluxParser.loadYaml(FluxParser.java:168)
       at org.apache.storm.flux.parser.FluxParser.parseInputStream(FluxParser.java:114)
       at org.apache.storm.flux.parser.FluxParser.parseFile(FluxParser.java:68)
       at org.apache.storm.flux.Flux.runCli(Flux.java:167)
       at org.apache.storm.flux.Flux.main(Flux.java:119)```
      Caused by: Cannot create property=grouping for JavaBean=org.apache.storm.flux.model.StreamDef@1ff4931d ```
      in 'string', line 94, column 5:
     - from: "shunt" 
       ^ 
     Cannot create property=streamid for JavaBean=org.apache.storm.flux.model.GroupingDef@710f4dc7
     in 'string', line 97, column 7:
         type: LOCAL_OR_SHUFFLE
         ^
      Unable to find property 'streamid' on class: org.apache.storm.flux.model.GroupingDef ```
      in 'string', line 98, column 17:
         streamid: "tika"
                   

  in 'string', line 97, column 7: ```
         type: LOCAL_OR_SHUFFLE
    ``` 

Solution

  • I copied the Flux file from the Gist above and it ran without problems. Maybe the alignment of the lines is incorrect in your file (e.g. space missing)?