mguessan / davmail

DavMail POP/IMAP/SMTP/Caldav/Carddav/LDAP Exchange and Office 365 Gateway - Synced with main subversion repository at
http://davmail.sourceforge.net
GNU General Public License v2.0
558 stars 82 forks source link

DavMail 6.2 fails to open O365Interactive; JavaFX issue? #322

Closed ifinkelstein closed 6 months ago

ifinkelstein commented 6 months ago

Hello and thank you for making DavMail--a core component of my daily workflow.

I ran into a recent issue after having my DavMail client work flawlessly for many months.

In O365Interactive mode, the authentication window never pops up. Instead DavMail falls back to O365Manual, which I cannot use with my University.

Details: Current DavMail version: 6.2.0-3464

java -version

java version "21.0.1" 2023-10-17 LTS
Java(TM) SE Runtime Environment (build 21.0.1+12-LTS-29)
Java HotSpot(TM) 64-Bit Server VM (build 21.0.1+12-LTS-29, mixed mode, sharing)

The key message in the DavMail log appears to be:

Date:           Wed Jan 03 23:16:41 CST 2024 (1704345401830)
Thread:     ImapConnection-49334
Message #:  10
Level:      WARN
NDC:            
Category:   davmail.exchange.auth.O365InteractiveAuthenticator
Message:        Unable to load JavaFX (OpenJFX), switch to manual mode
Location:   davmail.exchange.auth.O365InteractiveAuthenticator.authenticate(O365InteractiveAuthenticator.java:143)
Thrown:

I am on Mac OSX Ventura. I did not change the Java installation, although I can't be sure that a system update didn't do something funny. Don't think that the problem showed up after an update either way. Very happy to help debug if you don't have a Mac handy.

I didn't change the DavMail settings before or after this cropped up.

mguessan commented 6 months ago

This means your JDK does not include OpenJFX.

Need someone to test the following approach as I don't have a working OSX environment:

To get all features, run with latest Zulu JRE FX:

ifinkelstein commented 6 months ago

Thank you for your response. I had trouble following your instructions, but the following worked:

  1. Install sdkman from: https://sdkman.io/
  2. Install Zulu JRE+FX: sdk install java 21.0.1.fx-zulu
  3. Check that this is the default with:
    java -version
    openjdk version "21.0.1" 2023-10-17 LTS
    OpenJDK Runtime Environment Zulu21.30+15-CA (build 21.0.1+12-LTS)
    OpenJDK 64-Bit Server VM Zulu21.30+15-CA (build 21.0.1+12-LTS, mixed mode, sharing)

Now, O365Interactive launches an authentication window and I can proceed through my SSO + Duo 2FA authentication.

(I am getting stuck at a new issue, that I'll post separately)

Thank you again!