View Single Post
  #1  
Old 01.12.2022, 15:47
Seven.issimo Seven.issimo is offline
Baby Loader
 
Join Date: Jun 2022
Posts: 5
Default JD2 Headless: No Console breaks installation forever

I've been running JD2 Headless on my BananaPi (RaspberryPi clone) for long time.
JD2 has been running as sandboxed service (Systemd service with its own user)[1]

A recent update broke my JD2 setup: no more connection to my.jdownloader.org means JD2 is unusable.

I tryed to replicate the behaviour causing this.

1) Clean install, first run as root:
Code:
# /usr/bin/curl -s -O http://installer.jdownloader.org/JDownloader.jar
# /usr/bin/java -Djava.awt.headless=true -jar JDownloader.jar -- -console -norestart
2) When restart is needed: I copied myjd config (with login and pass), then second run:
Code:
# cp -f org.jdownloader.api.myjdownloader.MyJDownloaderSettings.json ./cfg/
# /usr/bin/java -Djava.awt.headless=true -jar JDownloader.jar -- -console -norestart
--> Ok, connection to MyJD working. Here's a sample log: jdlog://1351311370661

3) Change Ownership to appropriate user, third run as root
Code:
# chown -R jdownloader: -- *
# /usr/bin/java -Djava.awt.headless=true -jar JDownloader.jar -- -console -norestart
--> Ok, login/pass are read from cfg. Connection to MyJD working.

4) Fourth run: run as Systemd service for 1st time (no console attached)
Code:
dic 01 14:24:04 bananapi java[2518]: java.lang.ExceptionInInitializerError
dic 01 14:24:04 bananapi java[2518]:         at jd.SecondLevelLaunch$9$1.run(SecondLevelLaunch.java:747)
dic 01 14:24:04 bananapi java[2518]: Caused by: java.lang.RuntimeException: No Console Available!
dic 01 14:24:04 bananapi java[2518]:         at org.appwork.console.ConsoleDialog.<init>(ConsoleDialog.java:54)
dic 01 14:24:04 bananapi java[2518]:         at org.appwork.console.ConsoleDialog.<init>(ConsoleDialog.java:60)
dic 01 14:24:04 bananapi java[2518]:         at org.jdownloader.api.myjdownloader.MyJDownloaderController.askLoginsOnConsole(MyJDownloaderController.java:273)
dic 01 14:24:04 bananapi java[2518]:         at org.jdownloader.api.myjdownloader.MyJDownloaderController.start(MyJDownloaderController.java:125)
dic 01 14:24:04 bananapi java[2518]:         at org.jdownloader.api.myjdownloader.MyJDownloaderController.<init>(MyJDownloaderController.java:112)
dic 01 14:24:04 bananapi java[2518]:         at org.jdownloader.api.myjdownloader.MyJDownloaderController.<clinit>(MyJDownloaderController.java:37)
dic 01 14:24:04 bananapi java[2518]:         ... 1 more
5) Run again in console, again as root:
Code:
# /usr/bin/java -Djava.awt.headless=true -jar JDownloader.jar -- -console -norestart
Code:
48|org.jdownloader.api.myjdownloader.MyJDownloaderController.log 01/12/22, 14:32:56 - INFO [ jd.http.Browser(setProxySelector) ] -> Use local proxy: org.jdownloader.api.myjdownloader.api.MyJDownloaderAPI$MyJDownloaderAPIBrowser$1@ce44cc wished: org.jdownloader.api.myjdownloader.api.MyJDownloaderAPI$MyJDownloaderAPIBrowser$1@ce44cc
48|UncaughtExceptionHandler.log 01/12/22, 14:32:56 - SEVERE [ jd.SecondLevelLaunch$4(uncaughtException) ] -> Uncaught Exception in: 48=validateLogins|'org.appwork.utils.net.HTTPHeader org.appwork.utils.net.HeaderCollection.add(org.appwork.utils.net.HTTPHeader)'
48|UncaughtExceptionHandler.log 01/12/22, 14:32:56 - SEVERE [ UncaughtExceptionHandler.log ] -> Exception thrown at jd.SecondLevelLaunch$4.uncaughtException(SecondLevelLaunch.java:526):
java.lang.NoSuchMethodError: 'org.appwork.utils.net.HTTPHeader org.appwork.utils.net.HeaderCollection.add(org.appwork.utils.net.HTTPHeader)'
        at jd.http.RequestHeader.put(RequestHeader.java:96)
        at jd.http.RequestHeader.put(RequestHeader.java:100)
        at jd.http.Request.getDefaultRequestHeader(Request.java:457)
        at jd.http.Request.<init>(Request.java:282)
        at jd.http.requests.PostRequest.<init>(PostRequest.java:79)
        at jd.http.Browser.createPostRequest(Browser.java:874)
        at jd.http.Browser.createPostRequest(Browser.java:859)
        at org.jdownloader.api.myjdownloader.api.MyJDownloaderAPI.post(MyJDownloaderAPI.java:84)
        at org.jdownloader.myjdownloader.client.AbstractMyJDClient.cryptedPost(AbstractMyJDClient.java:416)
        at org.jdownloader.myjdownloader.client.AbstractMyJDClient.connect(AbstractMyJDClient.java:376)
        at org.jdownloader.api.myjdownloader.MyJDownloaderController$3.run(MyJDownloaderController.java:332)

|---------------------------Headless Information-------------------------------
|       MyJDownloader
|       Il tuo accesso a 'My.JDownloader' non è corretto.
|       Verifica utente/email e password!
|       Enter y -> Enter Logins
|       Enter n -> Exit JDownloader
--> JD gets stuck here *forever*. Typing correct login/pass doesn't work.
Also cfg/org.jdownloader.api.myjdownloader.MyJDownloaderSettings.json still contains correct login/password.

6) Clean cfg directory, copy backed-up myjd config (that worked before), run again in console as root
Code:
# rm -rf ./cfg
# mkdir ./cfg
# cp -f org.jdownloader.api.myjdownloader.MyJDownloaderSettings.json ./cfg/
--> JD still does not work. JD still stucked at login prompt.
The only solution seems to start again from clean installation.

Any thought about this behavior?

I attached a copy of log folder, extracted from lates run.


[1] Systemd service: **External links are only visible to Support Staff****External links are only visible to Support Staff**
Attached Files
File Type: zip 1669904686253.zip (24.0 KB, 0 views)
Reply With Quote