Maximo

Maximo

Come for answers, stay for best practices. All we're missing is you.

 View Only
  • 1.  MAS 9.1 Maximo Application Framework Configuration Tool - Error during ZIP file upload action

    Posted 11/22/25 03:34 AM

    Hi,

    I encountered an issue when trying to upload a ZIP file containing a mobile application definition in the Maximo Application Framework Configuration Tool for MAS v9.1.2 using the "Upload file" action. Each time I attempted to upload a ZIP file with customizations (e.g., app.xml, AppCustomizations.js), the system returned the following error:

    TECHMOBILE.zip is not an accepted file type

    Please see the screen below.

    The problem occurred for all mobile application definitions. 

    The root cause was the Content Type associated with .zip files in Windows. To resolve the issue, the Content Type for the .zip file type must be updated in the Windows Registry to:

    application/zip

    In my case, the value had been set to:

    application/x-zip-compressed

    There are two ways to correct this. If you have sufficient privileges on the Windows server, you can modify the value directly in the following location:

    HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.zip

    In my scenario it wasn't possible so I had to create new .zip definition in: 

    HKEY_CURRENT_USER\Software\Classes

    Steps:

    1. Open Registry Editor
    2. Navigate to the key: HKEY_CURRENT_USER\Software\Classes
    3. Create the .zip key
      1. Right-click the Classes folder
      2. Choose New -> Key
      3. Name it exactly: .zip
    4. Add the Content Type string
      1. Select the newly created .zip key
      2. In the right pane -> right-click -> New -> String Value
      3. Name it: Content Type
      4. Double-click it and set the value to: application/zip
    5. Close Registry Editor

    After completing these steps, I was able to successfully upload the ZIP file to the Maximo Application Framework Configuration Tool.



    ------------------------------
    Bartosz Marchewka
    IBM Maximo Consultant
    AFRY
    ------------------------------


  • 2.  RE: MAS 9.1 Maximo Application Framework Configuration Tool - Error during ZIP file upload action

    Posted 11/26/25 04:57 PM
    Edited by Bartosz Marchewka 11/27/25 12:16 AM

    FYI After my request IBM created technote to document this problem and resolution:

    https://www.ibm.com/support/pages/techmobilezip-not-accepted-file-type-error-while-uploading-zip-file



    ------------------------------
    Bartosz Marchewka
    IBM Maximo Consultant
    AFRY
    ------------------------------



  • 3.  RE: MAS 9.1 Maximo Application Framework Configuration Tool - Error during ZIP file upload action

    Posted 01/30/26 03:35 PM

    Can you please share what structure of archive should be? Just files in zip or it should be folder inside? I need to upload new js file, but cannot to it direct 

    I have an errors on pod, after what it always crashes....

    permission.MAFCONFIG:  { READ: {} }
    ---------------------------------
    [2026-01-29A07:41:49.954+0000] INFO (38): POST /application/:appName/upload-files -> received a request to upload files for CXITMOBILE
    [2026-01-29A07:41:49.954+0000] INFO (38): POST /application/:appName/upload-files -> userID = maxadmin;
    [2026-01-29A07:41:49.954+0000] INFO (38): wkdir: ../../.workspace
    [2026-01-29A07:41:49.954+0000] INFO (38): userWkDir: maxadmin-appconfig.XXXX
    [2026-01-29A07:41:49.954+0000] INFO (38): userWkDir:: ../../.workspace/maxadmin-appconfig.XXX
    [2026-01-29A07:41:49.954+0000] INFO (38): appDir:: ../../.workspace/maxadmin-appconfig.XXXX/CXITMOBILE
    [2026-01-29A07:41:49.954+0000] INFO (38): UPLOAD: file type: application/x-zip-compressed, file name: CXITMOBILE.zip
    [2026-01-29A07:41:49.954+0000] INFO (38): Extracting uploaded zip file CXITMOBILE.zip
    [2026-01-29A07:41:49.954+0000] INFO (38): tempZipDir: ../../.workspace/maxadmin-appconfig.XXXX/temp-upload
    [2026-01-29A07:41:49.954+0000] INFO (38): execShellCommand function --> running command unzip -o ../../.workspace/uploads/53a1e91c6f5f80013202a5d29320821c -d ../../.workspace/maxadmin-appconfig.XXXX/temp-upload
    Archive:  ../../.workspace/uploads/53a1e91c6f5f80013202a5d29320821c
      inflating: ../../.workspace/maxadmin-appconfig.XXXX/temp-upload/kjs-modules.js  
      inflating: ../../.workspace/maxadmin-appconfig.XXXX/temp-upload/SoftwareLicenseAgreement.txt  
    [2026-01-29A07:41:49.966+0000] INFO (38): stdout: Archive:  ../../.workspace/uploads/53a1e91c6f5f80013202a5d29320821c
      inflating: ../../.workspace/maxadmin-appconfig.XXXX/temp-upload/kjs-modules.js  
      inflating: ../../.workspace/maxadmin-appconfig.XXXX/temp-upload/SoftwareLicenseAgreement.txt  
    
    node:fs:1507
      const result = binding.readdir(
                             ^
    
    Error: ENOENT: no such file or directory, scandir '../../.workspace/maxadmin-appconfig.XXXX/temp-upload/CXITMOBILE'
        at Object.readdirSync (node:fs:1507:26)
        at MASService.replaceAppSrcFiles (/graphite/packages/config-server/src/BaseService.js:141:60)
        at MASService.uploadFiles (/graphite/packages/config-server/src/BaseService.js:160:731)
        at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
        at async /graphite/packages/config-server/src/serverAPI.js:87:217 {
      errno: -2,
      code: 'ENOENT',
      syscall: 'scandir',
      path: '../../.workspace/maxadmin-appconfig.XXXX/temp-upload/CXITMOBILE'
    }
    
    Node.js v20.19.5
    Done in 97.72s.

    Same time when I create folder inside archive, it unpack content to wrong way:

    [2026-01-29A07:54:56.735+0000] INFO (38): POST /application/:appName/upload-files -> received a request to upload files for CXITMOBILE
    [2026-01-29A07:54:56.735+0000] INFO (38): POST /application/:appName/upload-files -> userID = maxadmin;
    [2026-01-29A07:54:56.735+0000] INFO (38): wkdir: ../../.workspace
    [2026-01-29A07:54:56.735+0000] INFO (38): userWkDir: maxadmin-appconfig.XXXX
    [2026-01-29A07:54:56.735+0000] INFO (38): userWkDir:: ../../.workspace/maxadmin-appconfig.XXXX
    [2026-01-29A07:54:56.735+0000] INFO (38): appDir:: ../../.workspace/maxadmin-appconfig.XXXX/CXITMOBILE
    [2026-01-29A07:54:56.735+0000] INFO (38): UPLOAD: file type: application/x-zip-compressed, file name: CXITMOBILE.zip
    [2026-01-29A07:54:56.735+0000] INFO (38): Extracting uploaded zip file CXITMOBILE.zip
    [2026-01-29A07:54:56.735+0000] INFO (38): tempZipDir: ../../.workspace/maxadmin-appconfig.XXXX/temp-upload
    [2026-01-29A07:54:56.735+0000] INFO (38): execShellCommand function --> running command unzip -o ../../.workspace/uploads/402035c2140557528552763bd0269b2e -d ../../.workspace/maxadmin-appconfig.XXXX/temp-upload
    Archive:  ../../.workspace/uploads/402035c2140557528552763bd0269b2e
       creating: ../../.workspace/maxadmin-appconfig.XXXX/temp-upload/CXITMOBILE/
       creating: ../../.workspace/maxadmin-appconfig.XXXX/temp-upload/CXITMOBILE/CXITMOBILE/
      inflating: ../../.workspace/maxadmin-appconfig.XXXX/temp-upload/CXITMOBILE/CXITMOBILE/kjs-modules.js  
    [2026-01-29A07:54:56.748+0000] INFO (38): stdout: Archive:  ../../.workspace/uploads/402035c2140557528552763bd0269b2e
       creating: ../../.workspace/maxadmin-appconfig.XXXX/temp-upload/CXITMOBILE/
       creating: ../../.workspace/maxadmin-appconfig.XXXX/temp-upload/CXITMOBILE/CXITMOBILE/
      inflating: ../../.workspace/maxadmin-appconfig.XXXX/temp-upload/CXITMOBILE/CXITMOBILE/kjs-modules.js  
    
    [2026-01-29A07:54:56.751+0000] INFO (38): replacing ../../.workspace/maxadmin-appconfig.XXXX/CXITMOBILE/CXITMOBILE/kjs-modules.js with ../../.workspace/maxadmin-appconfig.XXXX/temp-upload/CXITMOBILE/CXITMOBILE/kjs-modules.js


    ------------------------------
    Andrey Ilinskiy
    Handz.on
    https://www.on.de/
    München
    ------------------------------



  • 4.  RE: MAS 9.1 Maximo Application Framework Configuration Tool - Error during ZIP file upload action

    Posted 01/30/26 04:20 PM

    Below folder structure worked for me. I had to create temp-upload folder in container manually.

    zipfoldername.zip > App Folder name > src > javascript.js file



    ------------------------------
    Prajesh (PJ)
    ------------------------------