Skip to content

WebDAV server based on Apache Tomcat's WebDAV servlet - updates

Latest
Compare
Choose a tag to compare
@ag88 ag88 released this 07 Oct 17:33
· 5 commits to main since this release

WebDAV server based on Apache Tomcat's WebDAV servlet - updates

This is a WebDAV server based on Apache Tomcat's WebDAV servlet and embedded Tomcat server
https://github.com/ag88/embtomcatwebdav

Feature list

  • It runs on http://localhost:8080/webdav

  • It serves the current working directory in which the app is started

  • Added (BASIC) authentication

  • Added (DIGEST) authentication v0.3.0, v0.2.1

  • Added command line arguments so that various parameters can be changed:

  • It requires a folder 'tomcat.port' for the embedded Tomcat instance, if the folder isn't present, it is created.

  • dropped JSP container, makes for a quite a bit smaller binary

  • added option to change basedir - tomcat's work directory

  • added 'quiet' option, mute most logs

  • fixed a bug related to path construction, now does it in an OS independent manner.

  • SSL (i.e. https://) v0.2.0

  • added option to change urlprefix ("/webdav") v0.3.1

  • Added loading of options from properties file, and option to generate a default config file v0.3.2

  • Added a dialog to generate DIGEST passwords that can be used in the config file. - v0.3.2

  • v0.3.3 is a rather major bugfix release, this release is released to maven central

  • v0.3.3 this app can be embedded, see the junit test cases to see how that is done

  • v0.3.3 added runserverfork() method which lets apps embedding this to run the server in a separate thread.

  • v0.3.4 fixed a bug related to race conditions in isRunning() method and runserverfork()

  • v0.4.1 added a refactored command line options and config properties processing engine, this makes it feasible for apps linking the library to add command line options and config properties in the same app.

  • v0.4.1 use console.readPassword() to avoid displaying the password in the console during entry.
    This is more secure in case there is a crowd nearby ;)

  • v0.5.0 is a rather major feature release

  • v0.5.0 added an Upload servlet that includes a form based file upload in the directory list. This makes it possible to upload files without a WebDAV client. In addition, it is styled with responsive html and css so that it is more readable on small (mobile) devices.

  • v0.5.1 is a bugfix release for v0.5.0, Upload servlet, some refactoring: enabled alwaysUseSession for authentication, some mobile devices do not cache authentication and keeps prompting authentication every refresh and page. This is still as secure (managed by a session) and avoided the annoying auth prompts every screen. Login only at the start, and for cookie tests (needed for jesssion), only checks in doPost() where it is needed and only if it is a new (invalid) session.

  • v0.5.2 added(fixed) sorting in Upload servlet

  • v0.6.0 added accesslog

  • v0.6.1 usability updates for upload servlet:

    • limit authentication access to configured url prefix instead of /*,
      this helps to reduce authentication challenges for resources icons,
      e.g. favicon.ico etc for some browsers.
    • added upload feedback on the page for large/long uploads,
      add upload feedback for the upload servlet, so that
      it shows 'uploading...' once upload is clicked.
  • v0.6.2 usability updates for upload servlet:

    • added a link to upload section at the top, this help with long directory lists
      relieves from long scrolls to the bottom just for uploads
  • *new v0.8.0 major feature release:

    • new upload servlet:
    • migrated to Apache Velocity templates.
    • added download of multiple files as zip *new
    • added filename filters *new

    Download as zip and filename filters significantly improves usability of the upload servlet

  • *new v0.8.1 add support for ip 0.0.0.0 listen on all interfaces

    • host aliases will be added for all interfaces if 0.0.0.0 is specified as the host name

    This solves problems related to dynamic IP addresses

  • *new v0.8.2 improvements, fixes for config file generation.

    • improvements, fixes for config file generation
      config file generation now adds description entries and is sorted
    • improved help documentation / description
    • upload servlet is now default from this release
  • *new v0.9.0 checks for updates from this repository

    • checks for updates from this repository
    • added option to enable/disable check for updates
    • display server info: Embtomcatwebdav and version in page for upload servlet
  • *new v0.9.1 adds allowlinking option

    • allow linking (e.g. follow symbolic links, warn: links can go outside working
      dir/path, only works in upload servlet)
  • *new v0.9.2 make filter case insensitive

    • in prior release the filter in upload servlet is case sensitive, this is troublesome
      searching for files/patterns. This minor update makes it case insensitive, word
      searches matches regardless of case
  • **new v1.0.0 major feature release new QR Code Gui, scan QR code and connect !

    • scan the QR Code with your mobile phone and connect to upload servlet !
    • Added a 'setup wizard' that helps to configure embtomcatwebdav and get it up and running easily
    • Gui configuration panels for the various server configuration
    • it now uses a standard configuration file so that you can simply launch it and start uploading / downloading
  • **new v1.1.0 major feature release create dir/folder from web interface, urlprefix changed to /files instead of /webdav

    • added createdir servlet, it is now possible to create a new dir/folder from the web interface
    • the default urlprefix is now http://<host/ipaddr>:8080/files instead of /webdav.
      This makes it easier to remember the url
    • improvements in the gui, initial run now makes a better selection of the host address,
      added a copy url to clipboard button

more details are in README.md in the repository
https://github.com/ag88/embtomcatwebdav/

sha256:
96a9d14ce72d86d0c8fb44f0112b457701d508c83f0f3d0eb3a387101e1dcc3b embtomcatwebdav-1.1.0.jar