MX 4.0.1 upgrade error

0
Just upgraded modeler to 4.0.1. Fixed resulting errors in the app (e.g. persistent object issues) and warnings (deprecated buttons, etc.). Updated relevant widgets. Updated model on team server successfully. We are currently using a custom cloud installation, so we have to crate a deployment package in the modeler and then use a combination of SFTP and CLI to update the application in TEST and PROD. However, when trying to compile a deployment package in the modeler, we encounter the error below. Can anyone suggest a solution? Thanks, James Buildfile: C:\Users\Administrator\AppData\Local\Temp\tmpE279.tmp\deployment\build.xml compile: [javac] Compiling 176 source files to C:\Users\Administrator\AppData\Local\Temp\tmpE279.tmp\deployment\model\lib\bin [javac] C:\Users\Administrator\AppData\Local\Temp\tmpE279.tmp\javasource\profile\actions\SessionFinishedWorkout.java:81: cannot find symbol [javac] symbol : method getObjectStoreId() [javac] location: interface com.mendix.systemwideinterfaces.core.IMendixIdentifier [javac] if(obj.getId().getObjectStoreId()== object.getId().getObjectStoreId()){ [javac] ^ [javac] C:\Users\Administrator\AppData\Local\Temp\tmpE279.tmp\javasource\profile\actions\SessionFinishedWorkout.java:81: cannot find symbol [javac] symbol : method getObjectStoreId() [javac] location: interface com.mendix.systemwideinterfaces.core.IMendixIdentifier [javac] if(obj.getId().getObjectStoreId()== object.getId().getObjectStoreId()){ [javac] ^ [javac] Note: Some input files use or override a deprecated API. [javac] Note: Recompile with -Xlint:deprecation for details. [javac] 2 errors BUILD FAILED C:\Users\Administrator\AppData\Local\Temp\tmpE279.tmp\deployment\build.xml:70: Compile failed; see the compiler error output for details. Total time: 2 seconds
asked
2 answers
1

You have to change the source file profile\actions\SessionFinishedWorkout.java at line 81. Change the texts 'getObjectStoreId()' to 'toLong()'.

Previously, the method getObjectStoreId returns the database id of the object, or the database id part of the old object identifier/GUID. Since Mendix 4, the database id is the same as the old guid value of the MendixIdentifier. The method 'getObjectStore' has been removed, the method 'getGuid' deprecated and the new unified method is: 'toLong()'.

answered
0

Jonathan,

I appreciate the suggestion. However, that file doesn't seem to exist anywhere. I assume it is stored in temp while trying to build the deployment package and is then deleted?

Also, not sure why the problem exists in the first place. Is dealing with legacy issues not something that is handled as part of the modeler upgrade. Or is it some piece of custom java that isn't part of the standard install?

Thanks.

answered