Coder Social home page Coder Social logo

deoldsax / iliasdownloadertool Goto Github PK

View Code? Open in Web Editor NEW
48.0 4.0 18.0 6.61 MB

synchronize, manage and download the files from your e-learning platform https://www.ilias.de/

Home Page: https://iliasdownloadertool.de/

License: GNU General Public License v2.0

Java 85.54% CSS 12.72% Python 1.75%
ilias-downloader ilias e-learning tool synchronizer java javafx

iliasdownloadertool's Introduction

Ilias Downloader Tool

Desktop Tool for ilias. Find more information at https://iliasdownloadertool.de.

Application

Image of Application

How to build your own Ilias Downloader Tool

  1. Install Maven v3.3.9
  2. Install Java JDK v1.8.0_102
  3. Clone this repo and change your university (e.g. kit) in the pom.xml at line 12 and in src/main/java/control/IliasManager.java at line 16
  4. Build it with mvn clean install
  5. Find your iliasdownloadertool in release/
  6. Start it with java -jar ./release/IliasDownloaderTool-kit-v2/Ilias-Downloader-Tool-kit-v2.jar or a simple doubleclick

Build with SDKMAN!

  1. (Only with Windows):

    1. Install WSL, Cygwin or another Linux environment.
    2. Install a X Server for Windows like VcXsrv
    3. Start it and export the Display variable to the emulated X Server in your Linux bash. Also export a GL pass-through, because the X Server can only handle GL 1.2:
      echo "export Display=:0" >> ~/.bashrc
      echo "export LIBGL_ALWAYS_INDIRECT=1" >> ~/.bashrc
  2. Install SDKMAN!:

      curl -s "https://get.sdkman.io" | bash
      source "$HOME/.sdkman/bin/sdkman-init.sh"
      sdk version
  3. Install Java 8 with JavaFX and Maven 3.3.9:

    sdk install java 8.0.232.fx-zulu
    sdk install maven 3.3.9

    With sdk list java or sdk list maven, you can find the other available versions.

  4. Create aJAVA_HOME variable:

    echo JAVA_HOME="$HOME/.sdkman/candidates/java/current" >> ~/.bashrc
    source ~/.bashrc
  5. Clone this repo and change your university (e.g. kit) in the pom.xml at line 12 and in src/main/java/control/IliasManager.java at line 16.

  6. Build it with mvn clean install.

  7. Start it with java -jar ./release/IliasDownloaderTool-kit-v2/Ilias-Downloader-Tool-kit-v2.jar.

Contribute

If you feel like contributing to fix a bug or support a new Ilias Platform, feel free to do so and throw a pull request at this repo. In case you need any help or guidance, feel free to write an email to [email protected].

iliasdownloadertool's People

Contributors

alcoinus avatar deoldsax avatar timreibe avatar tyxz avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

iliasdownloadertool's Issues

Include Sessions and Cards

When downloading sessions, only the opened/expanded sessions are downloaded, not the collapsed ones.

Content in the cards-layout isn't downloaded at all.
Cards Layout Example

University of Konstanz: Cloud Download

Content hosted via the University of Konstanz's cloud (cloud.uni-konstanz.de) and linked to in Ilias currently isn't downloaded. This should be included.

Downloader can't find any courses - KIT

The Karlsruher Institute of Technology has updatet their Illias from Version 5 to 7.
Ever since, the IlliasDownloaderTool is not able refresh or even find any courses.
Here an image to demonstrate what I mean:
image

Any ideas how to resolve this problem?
Greetings

Integrate new Files/Folders in a root-folder with changend name using AUTO-Download

Some of the courses in my ILIAS have extremely long names (e.g. "Höhere Mathematik III für die Fachrichtungen Maschinenbau, Chemieingenieurwesen, Verfahrenstechnik, Bioingenieurwesen und das Lehramt").
If then multiple folder levels are created in the ILIAS folder (and the files themselves have long names too), this repeatedly causes problems in Windows (and OneDrive), which is why I had renamed the folders (e.g. "HM3").

Already available: The program recognizes files even if the parent folder is named differently than the online folder. The comparison works without any problems.

If you now download a folder with "AUTO-Download", the files are not copied into this structure, but a new folder with the original (long) name is created.

With single files you can avoid this problem by downloading only the file, because then the explorer opens directly at the right place, but as soon as e.g. a new folder is created in ILIAS, this does not work anymore.

Invalid Username / Password (KIT)

If it works, it would be a nice and useful tool!

However, I could not login (using my u... account). It says "Falsches Passwort" ("Invalid Password"), even though the password is certainly correct.

If I retry, it crashes:

Exception in thread "Thread-6" java.lang.IllegalStateException: Connection pool shut down
        at org.apache.http.util.Asserts.check(Asserts.java:34)
        at org.apache.http.pool.AbstractConnPool.lease(AbstractConnPool.java:185)
        at org.apache.http.impl.conn.PoolingHttpClientConnectionManager.requestConnection(PoolingHttpClientConnectionManager.java:251)
        at org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:175)
        at org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:184)
        at org.apache.http.impl.execchain.RetryExec.execute(RetryExec.java:88)
        at org.apache.http.impl.execchain.RedirectExec.execute(RedirectExec.java:110)
        at org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:184)
        at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:82)
        at plugin.KITIlias.executePost(KITIlias.java:106)
        at plugin.KITIlias.login(KITIlias.java:40)
        at control.IliasManager.login(IliasManager.java:31)
        at control.IliasStarter.login(IliasStarter.java:30)
        at control.LoginProvider$1.run(LoginProvider.java:53)
        at java.lang.Thread.run(Unknown Source)

Button alle Daten löschen.

Funktion, welche alle Daten löscht in /.ilias und registry in älteren Versionen.
class: Storer, SettingsMenu

"String input must not be null"

In a recent issue (#52 ), the login for KIT Illias wasn't working. Thankfully it got patched and seems to work.

But I compiled the new source code and since then I receive an Null-String Error while the structure is building.
Tried to backtrace and fix it but did not find the solution. Any ideas?

StringNull

Support for Heilbronn

Guten Tag,
wäre super, wenn das Tool mit Heilbronner Hochschule funktionieren würde :)

Mir freundlichem Grüßen

Tool not starting

The tool does not start for me.
When opening from the terminal I get the following log:

java -jar Ilias-Downloader-Tool-kit-v1.2.0.jar
WARN [main] (Dashboard.java:60) - Start IliasDownloaderTool.
WARN [main] (VersionValidator.java:45) - HttpConnection failed --> no version check
javax.net.ssl.SSLHandshakeException: java.security.cert.CertificateException: No X509TrustManager implementation available
at java.base/sun.security.ssl.Alerts.getSSLException(Unknown Source)
at java.base/sun.security.ssl.SSLSocketImpl.fatal(Unknown Source)
at java.base/sun.security.ssl.Handshaker.fatalSE(Unknown Source)
at java.base/sun.security.ssl.Handshaker.fatalSE(Unknown Source)
at java.base/sun.security.ssl.ClientHandshaker.checkServerCerts(Unknown Source)
at java.base/sun.security.ssl.ClientHandshaker.serverCertificate(Unknown Source)
at java.base/sun.security.ssl.ClientHandshaker.processMessage(Unknown Source)
at java.base/sun.security.ssl.Handshaker.processLoop(Unknown Source)
at java.base/sun.security.ssl.Handshaker.processRecord(Unknown Source)
at java.base/sun.security.ssl.SSLSocketImpl.processInputRecord(Unknown Source)
at java.base/sun.security.ssl.SSLSocketImpl.readRecord(Unknown Source)
at java.base/sun.security.ssl.SSLSocketImpl.readRecord(Unknown Source)
at java.base/sun.security.ssl.SSLSocketImpl.performInitialHandshake(Unknown Source)
at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source)
at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source)
at org.apache.http.conn.ssl.SSLConnectionSocketFactory.createLayeredSocket(SSLConnectionSocketFactory.java:394)
at org.apache.http.conn.ssl.SSLConnectionSocketFactory.connectSocket(SSLConnectionSocketFactory.java:353)
at org.apache.http.impl.conn.DefaultHttpClientConnectionOperator.connect(DefaultHttpClientConnectionOperator.java:141)
at org.apache.http.impl.conn.PoolingHttpClientConnectionManager.connect(PoolingHttpClientConnectionManager.java:353)
at org.apache.http.impl.execchain.MainClientExec.establishRoute(MainClientExec.java:380)
at org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:236)
at org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:184)
at org.apache.http.impl.execchain.RetryExec.execute(RetryExec.java:88)
at org.apache.http.impl.execchain.RedirectExec.execute(RedirectExec.java:110)
at org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:184)
at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:82)
at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:107)
at control.VersionValidator.validate(VersionValidator.java:31)
at view.Dashboard.main(Dashboard.java:62)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.base/java.lang.reflect.Method.invoke(Unknown Source)
at javafx.graphics/com.sun.javafx.application.LauncherImpl.launchApplicationWithArgs(Unknown Source)
at javafx.graphics/com.sun.javafx.application.LauncherImpl.launchApplication(Unknown Source)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.base/java.lang.reflect.Method.invoke(Unknown Source)
at java.base/sun.launcher.LauncherHelper$FXHelper.main(Unknown Source)
Caused by: java.security.cert.CertificateException: No X509TrustManager implementation available
at java.base/sun.security.ssl.DummyX509TrustManager.checkServerTrusted(Unknown Source)
... 36 more
Exception in Application start method
java.lang.reflect.InvocationTargetException
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.base/java.lang.reflect.Method.invoke(Unknown Source)
at javafx.graphics/com.sun.javafx.application.LauncherImpl.launchApplicationWithArgs(Unknown Source)
at javafx.graphics/com.sun.javafx.application.LauncherImpl.launchApplication(Unknown Source)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.base/java.lang.reflect.Method.invoke(Unknown Source)
at java.base/sun.launcher.LauncherHelper$FXHelper.main(Unknown Source)
Caused by: java.lang.RuntimeException: Exception in Application start method
at javafx.graphics/com.sun.javafx.application.LauncherImpl.launchApplication1(Unknown Source)
at javafx.graphics/com.sun.javafx.application.LauncherImpl.lambda$launchApplication$2(Unknown Source)
at java.base/java.lang.Thread.run(Unknown Source)
Caused by: java.lang.NoClassDefFoundError: com/sun/javafx/scene/control/skin/TextFieldSkin
at java.base/java.lang.ClassLoader.defineClass1(Native Method)
at java.base/java.lang.ClassLoader.defineClass(Unknown Source)
at java.base/java.security.SecureClassLoader.defineClass(Unknown Source)
at java.base/jdk.internal.loader.BuiltinClassLoader.defineClass(Unknown Source)
at java.base/jdk.internal.loader.BuiltinClassLoader.findClassOnClassPathOrNull(Unknown Source)
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClassOrNull(Unknown Source)
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(Unknown Source)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(Unknown Source)
at java.base/java.lang.ClassLoader.loadClass(Unknown Source)
at java.base/java.lang.ClassLoader.defineClass1(Native Method)
at java.base/java.lang.ClassLoader.defineClass(Unknown Source)
at java.base/java.security.SecureClassLoader.defineClass(Unknown Source)
at java.base/jdk.internal.loader.BuiltinClassLoader.defineClass(Unknown Source)
at java.base/jdk.internal.loader.BuiltinClassLoader.findClassOnClassPathOrNull(Unknown Source)
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClassOrNull(Unknown Source)
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(Unknown Source)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(Unknown Source)
at java.base/java.lang.ClassLoader.loadClass(Unknown Source)
at org.controlsfx.control.textfield.CustomTextField.createDefaultSkin(CustomTextField.java:161)
at javafx.controls/javafx.scene.control.Control.doProcessCSS(Unknown Source)
at javafx.controls/javafx.scene.control.Control.access$000(Unknown Source)
at javafx.controls/javafx.scene.control.Control$1.doProcessCSS(Unknown Source)
at javafx.controls/com.sun.javafx.scene.control.ControlHelper.processCSSImpl(Unknown Source)
at javafx.graphics/com.sun.javafx.scene.NodeHelper.processCSS(Unknown Source)
at javafx.graphics/javafx.scene.Parent.doProcessCSS(Unknown Source)
at javafx.graphics/javafx.scene.Parent.access$400(Unknown Source)
at javafx.graphics/javafx.scene.Parent$1.doProcessCSS(Unknown Source)
at javafx.graphics/com.sun.javafx.scene.ParentHelper.processCSSImpl(Unknown Source)
at javafx.graphics/com.sun.javafx.scene.NodeHelper.processCSS(Unknown Source)
at javafx.graphics/javafx.scene.Parent.doProcessCSS(Unknown Source)
at javafx.graphics/javafx.scene.Parent.access$400(Unknown Source)
at javafx.graphics/javafx.scene.Parent$1.doProcessCSS(Unknown Source)
at javafx.graphics/com.sun.javafx.scene.ParentHelper.processCSSImpl(Unknown Source)
at javafx.graphics/com.sun.javafx.scene.NodeHelper.processCSS(Unknown Source)
at javafx.graphics/javafx.scene.Parent.doProcessCSS(Unknown Source)
at javafx.graphics/javafx.scene.Parent.access$400(Unknown Source)
at javafx.graphics/javafx.scene.Parent$1.doProcessCSS(Unknown Source)
at javafx.graphics/com.sun.javafx.scene.ParentHelper.processCSSImpl(Unknown Source)
at javafx.graphics/com.sun.javafx.scene.NodeHelper.processCSS(Unknown Source)
at javafx.graphics/javafx.scene.Node.processCSS(Unknown Source)
at javafx.graphics/javafx.scene.Scene.doCSSPass(Unknown Source)
at javafx.graphics/javafx.scene.Scene.preferredSize(Unknown Source)
at javafx.graphics/javafx.scene.Scene$2.preferredSize(Unknown Source)
at javafx.graphics/com.sun.javafx.scene.SceneHelper.preferredSize(Unknown Source)
at javafx.graphics/javafx.stage.Window$12.invalidated(Unknown Source)
at javafx.base/javafx.beans.property.BooleanPropertyBase.markInvalid(Unknown Source)
at javafx.base/javafx.beans.property.BooleanPropertyBase.set(Unknown Source)
at javafx.graphics/javafx.stage.Window.setShowing(Unknown Source)
at javafx.graphics/javafx.stage.Window.show(Unknown Source)
at javafx.graphics/javafx.stage.Stage.show(Unknown Source)
at view.Dashboard.start(Dashboard.java:298)
at javafx.graphics/com.sun.javafx.application.LauncherImpl.lambda$launchApplication1$9(Unknown Source)
at javafx.graphics/com.sun.javafx.application.PlatformImpl.lambda$runAndWait$11(Unknown Source)
at javafx.graphics/com.sun.javafx.application.PlatformImpl.lambda$runLater$9(Unknown Source)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at javafx.graphics/com.sun.javafx.application.PlatformImpl.lambda$runLater$10(Unknown Source)
at javafx.graphics/com.sun.glass.ui.InvokeLaterDispatcher$Future.run(Unknown Source)
at javafx.graphics/com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at javafx.graphics/com.sun.glass.ui.win.WinApplication.lambda$runLoop$3(Unknown Source)
... 1 more
Caused by: java.lang.ClassNotFoundException: com.sun.javafx.scene.control.skin.TextFieldSkin
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(Unknown Source)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(Unknown Source)
at java.base/java.lang.ClassLoader.loadClass(Unknown Source)
... 60 more
Exception running application view.Dashboard

I'm using Windows 10 but got it running on my other Windows 10 machine.
Any suggestions on how to fix this?

Kind regards

Identify each request

Add HTTP-Header to every request to clearly identify the tool
maybe:

x-idt-version: 1.2.2
x-idt-website: https://iliasdownloadertool.de

Unable to build iliasDownloaderTool

I've tried to build the iliasDownloaderTool by myself but I'm running into several errors.

If I compile it with openjdk-14-jdk there is a huge stack-trace:

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.5.1:compile (default-compile) on project Ilias: Fatal error compiling: CompilerException: NullPointerException -> [Help 1] org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.5.1:compile (default-compile) on project Ilias: Fatal error compiling at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:215) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:156) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:148) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81) at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56) at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128) at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:305) at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192) at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105) at org.apache.maven.cli.MavenCli.execute (MavenCli.java:957) at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:289) at org.apache.maven.cli.MavenCli.main (MavenCli.java:193) at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method) at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62) at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke (Method.java:564) at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282) at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225) at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406) at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347) Caused by: org.apache.maven.plugin.MojoExecutionException: Fatal error compiling at org.apache.maven.plugin.compiler.AbstractCompilerMojo.execute (AbstractCompilerMojo.java:897) at org.apache.maven.plugin.compiler.CompilerMojo.execute (CompilerMojo.java:129) at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:137) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:210) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:156) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:148) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81) at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56) at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128) at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:305) at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192) at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105) at org.apache.maven.cli.MavenCli.execute (MavenCli.java:957) at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:289) at org.apache.maven.cli.MavenCli.main (MavenCli.java:193) at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method) at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62) at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke (Method.java:564) at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282) at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225) at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406) at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347) Caused by: org.codehaus.plexus.compiler.CompilerException at org.codehaus.plexus.compiler.javac.JavaxToolsCompiler.compileInProcess (JavaxToolsCompiler.java:172) at org.codehaus.plexus.compiler.javac.JavacCompiler.performCompile (JavacCompiler.java:171) at org.apache.maven.plugin.compiler.AbstractCompilerMojo.execute (AbstractCompilerMojo.java:886) at org.apache.maven.plugin.compiler.CompilerMojo.execute (CompilerMojo.java:129) at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:137) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:210) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:156) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:148) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81) at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56) at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128) at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:305) at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192) at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105) at org.apache.maven.cli.MavenCli.execute (MavenCli.java:957) at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:289) at org.apache.maven.cli.MavenCli.main (MavenCli.java:193) at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method) at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62) at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke (Method.java:564) at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282) at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225) at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406) at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347) Caused by: java.lang.NullPointerException at com.sun.tools.javac.main.JavaCompiler.readSourceFile (JavaCompiler.java:840) at com.sun.tools.javac.processing.JavacProcessingEnvironment$ImplicitCompleter.complete (JavacProcessingEnvironment.java:1588) at com.sun.tools.javac.code.Symbol.complete (Symbol.java:670) at com.sun.tools.javac.code.Symbol$ClassSymbol.complete (Symbol.java:1383) at com.sun.tools.javac.code.Type$ClassType.complete (Type.java:1157) at com.sun.tools.javac.code.Type$ClassType.getTypeArguments (Type.java:1083) at com.sun.tools.javac.code.Printer.visitClassType (Printer.java:237) at com.sun.tools.javac.code.Printer.visitClassType (Printer.java:52) at com.sun.tools.javac.code.Type$ClassType.accept (Type.java:1010) at com.sun.tools.javac.code.Printer.visit (Printer.java:136) at com.sun.tools.javac.util.AbstractDiagnosticFormatter.formatArgument (AbstractDiagnosticFormatter.java:199) at com.sun.tools.javac.util.AbstractDiagnosticFormatter.formatArguments (AbstractDiagnosticFormatter.java:167) at com.sun.tools.javac.util.BasicDiagnosticFormatter.formatMessage (BasicDiagnosticFormatter.java:111) at com.sun.tools.javac.util.BasicDiagnosticFormatter.formatMessage (BasicDiagnosticFormatter.java:67) at com.sun.tools.javac.util.AbstractDiagnosticFormatter.formatArgument (AbstractDiagnosticFormatter.java:185) at com.sun.tools.javac.util.AbstractDiagnosticFormatter.formatArguments (AbstractDiagnosticFormatter.java:167) at com.sun.tools.javac.util.BasicDiagnosticFormatter.formatMessage (BasicDiagnosticFormatter.java:111) at com.sun.tools.javac.util.BasicDiagnosticFormatter.formatMessage (BasicDiagnosticFormatter.java:67) at com.sun.tools.javac.util.JCDiagnostic.getMessage (JCDiagnostic.java:788) at com.sun.tools.javac.api.ClientCodeWrapper$DiagnosticSourceUnwrapper.getMessage (ClientCodeWrapper.java:835) at org.codehaus.plexus.compiler.javac.JavaxToolsCompiler.compileInProcess (JavaxToolsCompiler.java:130) at org.codehaus.plexus.compiler.javac.JavacCompiler.performCompile (JavacCompiler.java:171) at org.apache.maven.plugin.compiler.AbstractCompilerMojo.execute (AbstractCompilerMojo.java:886) at org.apache.maven.plugin.compiler.CompilerMojo.execute (CompilerMojo.java:129) at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:137) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:210) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:156) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:148) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81) at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56) at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128) at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:305) at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192) at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105) at org.apache.maven.cli.MavenCli.execute (MavenCli.java:957) at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:289) at org.apache.maven.cli.MavenCli.main (MavenCli.java:193) at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method) at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62) at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke (Method.java:564) at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282) at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225) at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406) at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347) [ERROR] [ERROR] [ERROR] For more information about the errors and possible solutions, please read the following articles: [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException

If I try to compile it with open-jdk-8-jdk on the other hand I get a similar huge stack-trace:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.5.1:compile (default-compile) on project Ilias: Compilation failure: Compilation failure: [ERROR] /home/julius/github/iliasDownloaderTool/src/main/java/view/SettingsMenu.java:[27,8] cannot access javafx.scene.control.PopupControl [ERROR] class file for javafx.scene.control.PopupControl not found [ERROR] /home/julius/github/iliasDownloaderTool/src/main/java/view/Dashboard.java:[8,1] package javafx.animation does not exist [ERROR] /home/julius/github/iliasDownloaderTool/src/main/java/view/Dashboard.java:[9,1] package javafx.application does not exist [ERROR] /home/julius/github/iliasDownloaderTool/src/main/java/view/Dashboard.java:[10,1] package javafx.concurrent does not exist [ERROR] /home/julius/github/iliasDownloaderTool/src/main/java/view/Dashboard.java:[11,1] package javafx.event does not exist [ERROR] /home/julius/github/iliasDownloaderTool/src/main/java/view/Dashboard.java:[12,1] package javafx.geometry does not exist [ERROR] /home/julius/github/iliasDownloaderTool/src/main/java/view/Dashboard.java:[15,1] package javafx.scene.image does not exist [ERROR] /home/julius/github/iliasDownloaderTool/src/main/java/view/Dashboard.java:[16,1] package javafx.scene.layout does not exist [ERROR] /home/julius/github/iliasDownloaderTool/src/main/java/view/Dashboard.java:[17,1] package javafx.scene.web does not exist [ERROR] /home/julius/github/iliasDownloaderTool/src/main/java/view/Dashboard.java:[18,1] package javafx.stage does not exist [ERROR] /home/julius/github/iliasDownloaderTool/src/main/java/view/Dashboard.java:[19,1] package javafx.util does not exist [ERROR] -> [Help 1] org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.5.1:compile (default-compile) on project Ilias: Compilation failure at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:215) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:156) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:148) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81) at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56) at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128) at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:305) at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192) at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105) at org.apache.maven.cli.MavenCli.execute (MavenCli.java:957) at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:289) at org.apache.maven.cli.MavenCli.main (MavenCli.java:193) at sun.reflect.NativeMethodAccessorImpl.invoke0 (Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke (Method.java:498) at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282) at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225) at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406) at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347) Caused by: org.apache.maven.plugin.compiler.CompilationFailureException: Compilation failure at org.apache.maven.plugin.compiler.AbstractCompilerMojo.execute (AbstractCompilerMojo.java:972) at org.apache.maven.plugin.compiler.CompilerMojo.execute (CompilerMojo.java:129) at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:137) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:210) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:156) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:148) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81) at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56) at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128) at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:305) at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192) at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105) at org.apache.maven.cli.MavenCli.execute (MavenCli.java:957) at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:289) at org.apache.maven.cli.MavenCli.main (MavenCli.java:193) at sun.reflect.NativeMethodAccessorImpl.invoke0 (Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke (Method.java:498) at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282) at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225) at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406) at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347) [ERROR] [ERROR] [ERROR] For more information about the errors and possible solutions, please read the following articles: [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException

Support for Marburg

Ich würde mich sehr über einen Ilias-Downloader für die Uni Marburg freuen!

XXXXX XXXXXX

Von Samsung-Tablet gesendet

Login try gets blocked with notification "Wrong password" for KIT Ilias

Hey there,

since a few days I am not longer able to use the downloader tool because I get a wrong password notification in the downloader tool (password is definitly correct). Even if I use the less secure connection I am not able to connect.
I am not sure if it helps you but I attached the command line with throws some exceptions.

Thanks for your help!

grafik

Nullpointer Error at login for University of Tuebingen

Version: tueb-v1.2.2
Java version: 1.8.0_251

Console output:

WARN [main] (Dashboard.java:65) - Start IliasDownloaderTool.

Apr 22, 2020 10:41:10 AM javafx.scene.CssStyleHelper calculateValue
WARNING: Could not resolve '-fx-control-inner-background' while resolving lookups for '-fx-highlight-fill' from rule '.custom-text-field' in stylesheet jar:file:filepath/IliasDownloaderTool-tueb-v1.2.2/lib/controlsfx-8.20.8.jar!/org/controlsfx/control/textfield/customtextfield.bss
Apr 22, 2020 10:41:10 AM javafx.scene.CssStyleHelper calculateValue
WARNING: Could not resolve '-fx-text-inner-color' while resolving lookups for '-fx-highlight-text-fill' from rule '
.custom-text-field' in stylesheet jar:file:filepath/IliasDownloaderTool-tueb-v1.2.2/lib/controlsfx-8.20.8.jar!/org/controlsfx/control/textfield/customtextfield.bss
Exception in thread "Thread-4" java.lang.NullPointerException
at plugin.TuebIlias.login(TuebIlias.java:44)
at control.IliasManager.login(IliasManager.java:31)
at control.IliasStarter.login(IliasStarter.java:30)
at control.LoginProvider$1.run(LoginProvider.java:53)
at java.lang.Thread.run(Thread.java:748)

University of Tuebingen

Based on building the develop branch and changing both respective variables to "tueb"

I'm getting all the available courses:
image
image

instead of the courses I am a member of. Additionally when I try to click download on these courses, it just creates an empty directory.

I suspect this might be because the first page after logging in is the "Magazin" showing all courses, instead of just showing the courses I'm a member of, which could be the baseClass=ilPersonalDesktopGUI.

I said in #41 that I could work further upon the work of #39. I really hate java tho, so I need some pointers to the right direction.

Maybe @Tyxz has some time to explain how the flow goes. I think I will comment in his pull request.

Include OpenCast viedos

Would be nice if OpenCast videos could also be processed. Opening each video manually is tedious.

javafx Error

As mentioned in #15 it is not possible to start the downloader with JDK15 on Win10 64bit and possibley other versions too.
'''
D:\Desktop\IliasDownloaderTool-aluf-v1.2.2>java -jar ./Ilias-Downloader-Tool-aluf-v1.2.2.jar
Error: Could not find or load main class view.Dashboard
Caused by: java.lang.NoClassDefFoundError: javafx/application/Application
'''
It seems that problem can be bypassed with the "--add-modules javafx.web" flag as mentioned by vonHartz #15, however that probably works only on linux where a compiled version of javafx.web is in the shared libaries.

I guess the reason is, that JavaFX is not part of JDK/JRE since JDK11. I tried downloading the current version from https://gluonhq.com/products/javafx/ but were not able to use it.

Download Forum

It would be awesome if we could download the forums too. Maybe in json or xml format.

File size as extension

Steps that lead to issue

  1. Opened iliasDownloaderTool
  2. Logged in using 'Anmelden' button
  3. Did a sync
  4. Downloaded a specific file

Expected Result

iliasDownloaderTool downloads the missing files with correct name and extension to the previously given path.

What really happened

Although file name is correct, the downloaded file has its size as extension.
i.e.
image

Specs

  • System: macOS Mojave
  • iliasDownloaderTool version: v1.2.0
  • JRE version 1.8.0_191

Anmeldung nicht möglich

Wahrscheinlich durch das redesign der Shibboleth Auth Seite verursacht.
Aktuell sagt das Tool nur, dass das Passwort falsch sei.

Support for University of Mannheim

Dear Admin,
it would be great if you could adjust the tool so that it would fit for the University of Mannheim.
Thanks for your help in advance!

Kind Regards

Login Schnittstelle

Login-Schnittstelle für verschiedene Ilias Versionen bzw. verschiedene Logins entwickeln.

Support for openjdk on Linux

I am using Fedora 23 and Ubuntu 15.10 and on both platforms i get:
"Error: Could not find or load main class view.Dashboard"
when trying to start the iliasdownloader.

On both systems I use the java-1.8.0-openjdk.

Support for FHöV NRW

Hallo zusammen,
gibt es einen iliasdownloader für die föhv nrw?
wenn ja ist die Version für das Macbook kompatibel?

Gruß

nixalo

New Folder System

An option would be great, to directly download files from different ilias Folders to different Folders on local pc. For example, I have an ilias Course which is called math. I want to save stuff from this Folder directly into an local Folder called math. Now i have a second ilias Folder called Sports. I want to download stuff from this Folder directly into an local Folder called Sports. That in the future would be great.

Auf Deutsch: Gemeint ist, dass man für unterschiedliche Ilias Kurse/Ordner lokal auch unterschiedliche Verzeichnisse wählen kann. In meinem Studium bin ich im Ilias in mehrer Kursen. Nun möchte ich Inhalte von dem einen Kurs direkt in einen Ordner speichern, und Inhalte aus dem anderen Kurs in einen anderen Ordner. Prinzipiell ist das ja schon möglich, in dem einfach als lokalen Ordner den Oberordner auswählt. Jedoch muss man dann immer, je nachdem aus welchem Fach die Inhalte sind, sich in den entsprächenden Unterornder reinklicken. Wenn man dies ändern könnte wäre das sehr praktisch.

Cheers
Henning

University of Stuttgart

When I want to download the illiasDownloaderTools for the University of Stuttgart, I get the following error message:
image

I would appreciate if this could get fixed.

Stuck at synchronization

Tried to use it at KIT, login succeded but synchronization is taking forever and seems to be stuck. Maybe issues with newer ILIAS-version?

EDIT: Works, when password is saved.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.