Hi Edwin Cornelisse
In Start_LogTransporter.java, change the method call to match the method name that actually exists in your updated LogTransporterConfigurationBuilder.
replace this
.setFlushThreshold(logTransporterConfig.getFlushTreshold())
With this:
.setFlushTreshold(logTransporterConfig.getFlushTreshold())
The module historically used the misspelled method setFlushTreshold, and after your upgrade the builder no longer has setFlushThreshold.
I hope this helps
It looks like this may be caused by a breaking change in the LogTransporter Java API after the upgrade.
The important part is the compiler error:
cannot find symbol
setFlushThreshold(Integer)
That usually means the method name in the underlying Java code no longer matches what Start_LogTransporter.java is calling.
Looking at this line:
.setFlushThreshold(logTransporterConfig.getFlushTreshold())
there may also be a spelling mismatch involved between Threshold and Treshold. So one possibility is that the method was renamed or corrected in the newer module version, but the generated Java action in the project is still referring to the old method signature.
A few things I would check:
First, clean the deployment directory and rebuild the app.
Second, refresh or resync the project files in Studio Pro.
If the error is still there, open Start_LogTransporter.java and check line 69. It is worth verifying whether the builder still exposes setFlushThreshold(...) or whether that method was renamed, removed, or changed in the new version.
The vendorlib overwrite warning is usually expected during a module upgrade and is probably not the direct cause of this compilation error. It looks more like the Java action and the updated module code are out of sync.
If needed, comparing the new LogTransporter Java classes with the generated Start_LogTransporter.java should make the mismatch clear.
If this resolve your issue, please close the topic.
Hi,
This error happens because LogTransporter 5.2.0 removed the setFlushThreshold() configuration method, but the Java action in your project (Start_LogTransporter.java) is still calling that old method. That is why the compiler says:
cannot find symbol .setFlushThreshold(...)
In LogTransporter ≤ 5.1, the configuration builder supported:
LogTransporterConfigurationBuilder.setFlushThreshold(Integer)
But starting from LogTransporter 5.2.0, this parameter was removed from the configuration API, so the builder class no longer contains that method.
So the Java action generated in your project still references an API that no longer exists in the updated library.
You need to update the Java action to match the new LogTransporter API.
Open the file:
javasource/logtransporter/actions/Start_LogTransporter.java
Find the line around where the error occurs (around line ~69):
.setFlushThreshold(logTransporterConfig.getFlushThreshold())
Remove that line completely.
Your configuration block should look something like this:
Before:
LogTransporterConfiguration config =
LogTransporterConfigurationBuilder.newBuilder()
.setEndpoint(logTransporterConfig.getEndpoint())
.setApiKey(logTransporterConfig.getApiKey())
.setFlushThreshold(logTransporterConfig.getFlushThreshold())
.build();
After fix:
LogTransporterConfiguration config =
LogTransporterConfigurationBuilder.newBuilder()
.setEndpoint(logTransporterConfig.getEndpoint())
.setApiKey(logTransporterConfig.getApiKey())
.build();
In LogTransporter 5.2.0:
flushThreshold configuration was removed from the public API.So keeping that method call causes the Java compiler failure.
After updating the module:
deployment
This ensures no old compiled classes remain.
Cause:
LogTransporter 5.2.0 removed setFlushThreshold() but your Java action still calls it.
Fix:
Remove the line:
.setFlushThreshold(...)
from Start_LogTransporter.java.
After that the project will compile and run normally.
If you want, I can also show you the safest way to upgrade Mendix Marketplace modules like LogTransporter without breaking Java actions (most Mendix developers follow that method).