cornerpirate / JS2PDFInjector

Inject a JS file into a PDF file.
Apache License 2.0
303 stars 56 forks source link

Getting the FileNotFoundException even when using the absolute path. #10

Open echo-harshal opened 5 months ago

tapan-indigoerp commented 5 months ago

CMD: java -jar JS2PDFInjector-1.0.jar IndigoERP.pdf temp.js

ERROR:


[*] JavaScript Payload: temp.js
[*] Output File Path: null/js_injected_IndigoERP.pdf
java.io.FileNotFoundException: null/js_injected_IndigoERP.pdf (No such file or directory)
    at java.base/java.io.FileOutputStream.open0(Native Method)
    at java.base/java.io.FileOutputStream.open(FileOutputStream.java:293)
    at java.base/java.io.FileOutputStream.<init>(FileOutputStream.java:235)
    at java.base/java.io.FileOutputStream.<init>(FileOutputStream.java:184)
    at org.apache.pdfbox.pdmodel.PDDocument.save(PDDocument.java:1305)
    at com.cornerpirate.js2pdfinjector.JS2PDFInjector.main(JS2PDFInjector.java:107)```

Please let me know if any solutions found?
tapan-indigoerp commented 5 months ago

CMD: java -jar JS2PDFInjector-1.0.jar IndigoERP.pdf temp.js

ERROR:

[*] JavaScript Payload: temp.js
[*] Output File Path: null/js_injected_IndigoERP.pdf
java.io.FileNotFoundException: null/js_injected_IndigoERP.pdf (No such file or directory)
  at java.base/java.io.FileOutputStream.open0(Native Method)
  at java.base/java.io.FileOutputStream.open(FileOutputStream.java:293)
  at java.base/java.io.FileOutputStream.<init>(FileOutputStream.java:235)
  at java.base/java.io.FileOutputStream.<init>(FileOutputStream.java:184)
  at org.apache.pdfbox.pdmodel.PDDocument.save(PDDocument.java:1305)
  at com.cornerpirate.js2pdfinjector.JS2PDFInjector.main(JS2PDFInjector.java:107)```

Please let me know if any solutions found?



Found Solution:

it's said in README.md file itself,


When running in headless mode if you see a FileNotFoundException like this:

It means you used relative paths to the files. Please supply the absolute path as command line arguments. So instead of this command:

java -jar JS2PDFInjector.jar dummy.pdf test.js

You should use absolute paths like this:

java -jar JS2PDFInjector.jar /tmp/dummy.pdf /tmp/test.js