나는 표준 혼자 자바 배치 프로세스를 개발 중이다. Tika Jars를 사용하여 첨부 파일 mimetype을 확인하려고합니다. Tika 1.4 Jar 파일을 사용하고 있습니다.Tika jars를 사용하여 Mimetype 검사
Parser parser= new AutoDetectParser();
InputStream stream = new FileInputStream(fileAttachment);
int writerHandler =-1;
ContentHandler contentHandler= new BodyContentHandler(writerHandler);
Metadata metadata= new Metadata();
parser.parse(stream, contentHandler, metadata, new ParseContext());
String mimeType = metadata.get(Metadata.CONTENT_TYPE);
logger.debug("File Attachment: "+fileattachment.getName()+" MimeType is: "+mimeType);
이 코드와 같은
내 코드보기는 사무실 03 및 07 문서를 제대로 작동하지 않습니다.
일식에서 실행하는 동안 올바른 mimetype을 얻고 있습니다.
jar 파일을 빌드하고 실행중인 명령에서 잘못된 mimetype을 제공합니다.
out put from command
------------
File Attachment: Testpdf.pdf MimeType is: application/pdf
File Attachment: Testpdf.tif MimeType is: image/tiff
File Attachment: Testpdf.xlsx MimeType is: application/x-tika-ooxml
File Attachment: Testpdf.xltx MimeType is: application/x-tika-ooxml
File Attachment: Testpdf.pptx MimeType is: application/x-tika-ooxml
File Attachment: Testpdf.docx MimeType is: application/x-tika-ooxml
File Attachment: Testpdf.xls MimeType is: application/zip
File Attachment: Testpdf.doc MimeType is: application/x-tika-msoffice
File Attachment: Testpdf.dot MimeType is: application/x-tika-msoffice
File Attachment: Testpdf.ppt MimeType is: application/x-tika-msoffice
File Attachment: Testpdf.xlt MimeType is: application/vnd.ms-excel
OfficePraser, OOXMLParser를 사용해 보았습니다. 작동하지 않습니다. tika 0.9 jar 파일을 사용해 보았습니다. mimeTypes가 올바르게오고 있지만 첨부 파일 중 하나라도 "편집 가능한 pdf"이면 배치 프로세스가 죽어 가고 있습니다 (코드에서 "exit (0);"와 같이). 새로운 tika 항아리가 있으면 mimeTypes가 잘못되었습니다.
도와주세요. 미리 감사드립니다.
CVSR Sarma
@ Gagravarr tika.getDetector(). detect (stream, metadata); Mediatype을 반환합니다. 나는 그것을 시도했다. 그것의 작동하지 않습니다. –
표시된대로 파일 이름을 전달했는지 확인하십시오. 정확한 결과를 원하면 클래스 패스에 tika-parser jar + 의존성을 포함 시켰는지 확인하십시오. 정확히 대답이 ... – Gagravarr
Eclipse에서 작동합니다. jar 파일을 만들고 명령 프롬프트에서 실행하면 작동하지 않습니다. maven을 사용하여 항아리와 종속성을 다운로드했으며 클래스 경로에 모든 jar 파일을 포함했습니다. @Gagravarr –