小编Nic*_* E.的帖子

在java中使用Apache Tika从pdf文件中提取文本

try {
      File file = new File("Example.pdf");
      String content = new Tika().parseToString(file);
      System.out.println("The Content: " + content);
    } catch (Exception e) {
       e.printStackTrace();
    }
Run Code Online (Sandbox Code Playgroud)

我已经导入java.io.File并导入了org.apache.tika.Tika;但在运行此代码时,我收到如下错误:

线程“main”中的异常 java.lang.NoSuchMethodError: org.slf4j.spi.LocationAwareLogger.log(Lorg/slf4j/Marker;Ljava/lang/String;ILjava/lang/String;Ljava/lang/Throwable;)V at org .apache.commons.logging.impl.SLF4JLocationAwareLog.warn(SLF4JLocationAwareLog.java:162) 在 org.apache.pdfbox.pdmodel.font.FileSystemFontProvider.loadDiskCache(FileSystemFontProvider.java:461) 在 org.apache.pdfbox.pdmodel.font .FileSystemFontProvider.(FileSystemFontProvider.java:217) 在 org.apache.pdfbox.pdmodel.font.FontMapperImpl$DefaultFontProvider.(FontMapperImpl.java:130) 在 org.apache.pdfbox.pdmodel.font.FontMapperImpl.getProvider(FontMapperImpl.java :149)在org.apache.pdfbox.pdmodel.font.FontMapperImpl.findFont(FontMapperImpl.java:413)在org.apache.pdfbox.pdmodel.font.FontMapperImpl.findFontBoxFont(FontMapperImpl.java:376)在org.apache。 pdfbox.pdmodel.font.FontMapperImpl.getFontBoxFont(FontMapperImpl.java:350)在org.apache.pdfbox.pdmodel.font.PDType1Font。(PDType1Font.java:146)在org.apache.pdfbox.pdmodel.font.PDType1Font。( PDType1Font.java:79) 在 org.apache.pdfbox.pdmodel.font.PDFontFactory.createFont(PDFontFactory.java:62) 在 org.apache.pdfbox.pdmodel.PDResources.getFont(PDResources.java:143) 在 org.apache .pdfbox.contentstream.operator.text.SetFontAndSize.process(SetFontAndSize.java:60) 在 org.apache.pdfbox.contentstream.PDFStreamEngine.processOperator(PDFStreamEngine.java:838) 在 org.apache.pdfbox.contentstream.PDFStreamEngine.processStreamOperators (PDFStreamEngine.java:495)在org.apache.pdfbox.contentstream.PDFStreamEngine.processStream(PDFStreamEngine.java:469)在org.apache.pdfbox.contentstream.PDFStreamEngine.processPage(PDFStreamEngine.java:150)在org.apache。 pdfbox.text.LegacyPDFStreamEngine.processPage(LegacyPDFStreamEngine.java:139) 在 org.apache.pdfbox.text.PDFTextStripper.processPage(PDFTextStripper.java:391) 在 org.apache.tika.parser.pdf.PDF2XHTML.processPage(PDF2XHTML. java:147)在org.apache.pdfbox.text.PDFTextStripper.processPages(PDFTextStripper.java:319)在org.apache.pdfbox.text.PDFTextStripper.writeText(PDFTextStripper.java:266)在org.apache.tika.parser .pdf.PDF2XHTML.process(PDF2XHTML.java:117) 在 org.apache.tika.parser.pdf.PDFParser.parse(PDFParser.java:167) 在 org.apache.tika.parser.CompositeParser.parse(CompositeParser.java :280)在org.apache.tika.parser.CompositeParser.parse(CompositeParser.java:280)在org.apache.tika.parser.AutoDetectParser.parse(AutoDetectParser.java:135)在org.apache.tika.Tika。 parseToString(Tika.java:527) 在 org.apache.tika.Tika.parseToString(Tika.java:642) 在 java_programs.PdfParse.main(PdfParse.java:22)

java apache apache-tika

4
推荐指数
1
解决办法
9020
查看次数

Solr索引:父/子文档

我正在使用Solr来索引某些内容但是目前,这些内容被认为是与父/子相关的.

我有类似的东西:

<doc>
  <id>*an Id*</id>
  <path>*a path*</path>
  <title>*a title*</title>
  <type>**Page**</type>
</doc>
<doc>
  <id>*an other Id*</id>
  <path>*a other path*</path>
  <title>*a other title*</title>
  <type>**Component**</type>
</doc>
Run Code Online (Sandbox Code Playgroud)

但我想有一些接近的东西:

<doc>
  <id>*an Id*</id>
  <path>*a path*</path>
  <title>*a title*</title>
  <type>**Page**</type>
  <child>
    <id>*an Id*</id>
    <path>*a path*</path>
    <title>*a title*</title>
    <type>**Component**</type>
  </child>
</doc>
Run Code Online (Sandbox Code Playgroud)

我想知道它是否可能,我怎样才能设法定义我的schema.xml方式?

我正在使用Solr 3.6,我无法改变它.

我希望有人可以帮我一臂之力.

此致,Dekx.

solr solrj

3
推荐指数
1
解决办法
1441
查看次数

Spring 启动两个对象映射器 bean

我想在我的 Spring boot 项目中创建两个 Hibernate 感知对象映射器 bean。

一个 bean 强制延迟加载,另一个 bean 强制延迟加载设置为 false。我的bean定义如下:

我创建了一个HibernateAwareObjectMapper

public class HibernateAwareObjectMapper extends ObjectMapper {
}
Run Code Online (Sandbox Code Playgroud)

@Configuration
public class CrewuiserCorebeans extends WebMvcConfigurerAdapter {

@Bean
public PasswordEncoder passwordEncoder() {
    return new BCryptPasswordEncoder();
}

@Bean
public ObjectMapper defaultObjectMapper() {
    ObjectMapper objectMapper = new ObjectMapper();
    objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
    objectMapper.setSerializationInclusion(JsonInclude.Include.NON_NULL);
    Hibernate5Module hibernate5Module = new Hibernate5Module();
    hibernate5Module.configure(Hibernate5Module.Feature.FORCE_LAZY_LOADING, true);
    objectMapper.registerModule(hibernate5Module);
    return objectMapper;
}

@Bean
public HibernateAwareObjectMapper hibernateAwareObjectMapper() {
    HibernateAwareObjectMapper objectMapper = new HibernateAwareObjectMapper();
    objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
    objectMapper.setSerializationInclusion(JsonInclude.Include.NON_NULL);
    Hibernate5Module hibernate5Module = …
Run Code Online (Sandbox Code Playgroud)

spring spring-boot

2
推荐指数
1
解决办法
4115
查看次数

Nutch - 无法从资源org/sonar/ant/antlib.xml加载定义

我正在通过官方指南学习 Nutch.所以当我在bin目录下运行 Ant时,它说:

"无法从资源加载定义org/sonar/ant/antlib.xml.无法找到它."

我花了很多时间在谷歌解决它,但我失败了.我的操作系统是Ubuntu16.04.

输入图像说明

java ant ubuntu nutch

1
推荐指数
1
解决办法
3356
查看次数

Java堆空间错误,我无法在Java中处理大型xlsx文件

我正在使用Apache Poi XSSFWorkbooks来处理xlsx文件;我的程序在小型excel文件(60000行)上运行良好。当我开始在一个大文件(700 000行)上测试代码时,我遇到了内存问题。我在具有16 GB RAM的计算机上测试我的代码,但它不起作用。

这个问题有帮助吗?我读过有关SAX解析器的信息,但是我不想修改我的代码,而且我觉得使用起来并不直观。这不像xssf那样简单,它具有获取单元格,行等的简单方法。

有没有办法保持我的代码不变并解决内存问题?或除SAX解析器之外的任何解决方案?任何帮助表示赞赏,谢谢。

java xlsx large-files apache-poi

1
推荐指数
1
解决办法
1492
查看次数

新克隆的 Tika 构建失败

我正在尝试在 Windows上安装Apache Tikamvn install按照说明运行

当我这样做时,我会失败,如下所示:

Tests run: 12, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 0.001 sec <<< FAILURE! - in org.apache.tika.parser.txt.TXTParserTest
testSubclassingMimeTypesRemain(org.apache.tika.parser.txt.TXTParserTest)  Time elapsed: 0.001 sec  <<< FAILURE!
org.junit.ComparisonFailure: expected:<...-vcalendar; charset=[ISO-8859-1]> but was:<...-vcalendar; charset=[windows-1252]>
    at org.junit.Assert.assertEquals(Assert.java:115)
    at org.junit.Assert.assertEquals(Assert.java:144)
    at org.apache.tika.parser.txt.TXTParserTest.testSubclassingMimeTypesRemain(TXTParserTest.java:299)
Run Code Online (Sandbox Code Playgroud)

如何解决此问题以使 Apache Tika 在 Windows 上运行?

maven apache-tika

1
推荐指数
1
解决办法
330
查看次数

标签 统计

java ×3

apache-tika ×2

ant ×1

apache ×1

apache-poi ×1

large-files ×1

maven ×1

nutch ×1

solr ×1

solrj ×1

spring ×1

spring-boot ×1

ubuntu ×1

xlsx ×1