sumoDave / GarminDiveFitAppender

Combines sequential dives into a single dive activity.
GNU General Public License v3.0
4 stars 0 forks source link

Exception when merging new dive without surface interval #7

Closed khcchiu closed 1 month ago

khcchiu commented 1 month ago

Hi, am seeing "Exception in thread "main" java.lang.NullPointerException: Cannot invoke "java.lang.Long.longValue()" because the return value of "com.garmin.fit.DiveSummaryMesg.getSurfaceInterval()" is null". Believe this is due to the fact that the first dive being merged does not have any surface interval.

Wondering if there's any workaround on this? I have tried setting a surface interval before exporting the first dive but still see above error.

sumoDave commented 1 month ago

I've made a code change to cater for the scenario, but I am unable to test. Can you try again with the attached zip? GarminDiveFitAppender.zip

khcchiu commented 1 month ago

I've made a code change to cater for the scenario, but I am unable to test. Can you try again with the attached zip? GarminDiveFitAppender.zip

Hey thanks for the update, now seeing below, looks like loading individual dives' parameters has no issue now and the issue moved to further checks part?

Exception in thread "main" org.apache.commons.cli.MissingOptionException: Missing required option: f at org.apache.commons.cli.DefaultParser.checkRequiredOptions(DefaultParser.java:281) at org.apache.commons.cli.DefaultParser.parse(DefaultParser.java:723) at org.apache.commons.cli.DefaultParser.parse(DefaultParser.java:686) at org.apache.commons.cli.DefaultParser.parse(DefaultParser.java:667) at Main.main(Main.java:41)

sumoDave commented 1 month ago

How are you running the tool? If dragging and dropping ensure you're dropping the files on the bat file. If running from command line, the -f is mandatory to specify the fit files you want to append.

khcchiu commented 1 month ago

How are you running the tool? If dragging and dropping ensure you're dropping the files on the bat file. If running from command line, the -f is mandatory to specify the fit files you want to append.

Ah sorry didn't notice I missed the -f. Just tried and able to merge the dives that I was not able too. Also confirmed no problem importing to Garmin Connect and params looks good. Really appreciate the tool! Thanks!