-
Notifications
You must be signed in to change notification settings - Fork 1
Troubleshooting
cat ~/.elogcert | openssl x509 -noout -dates
Note: An admin can check logbook server log for:
Certificate Verification: Error (10): certificate has expired
curl --cert ~/.elogcert https://logbooks.jlab.org/authtest/
Watch logging output of JLog for exceptions.
If you see the following exception:
java.net.SocketException: Software caused connection abort: recv failed
OR
java.net.SocketException: Software caused connection abort: socket write error
It might be that your client certificate is expired. See: Client Certificate Expiration
If you see the following error:
java.lang.NoClassDefFoundError: javax/xml/bind/DatatypeConverter
This should only happen if you are using older version of jlog. Use jlog 4.0.0 or newer or use Java 8 or earlier.
This error depends on the version of Java used. With Java 9 and Beyond JAXB (XML) is not included by default with Java. You'll have to download it separately. See:
Turns out that we only need the javax.xml.bind.DatatypeConverter class for base 64 decoding of certificates and Java 8 introduced a new Base64 utility class. So we can break compatibility with older Java by using the new class or we can create two separate builds - one for pre-Java 8 and one for post-Java 8. Or we can just leave it as is for now and you'll just need to download a new Jar file or use Java EE if using Java 11 (Java 9 and 10 can use flag --add-modules java.xml.bind since the module IS actually included, just disabled by default). What we've done is starting with jlog 4.0.0 the javax.xml.bind dependency was dropped and replaced with Java 8 Base64 class dependency.