Expand my Community achievements bar.

"package file parameter missing" in package manager


Level 5

facing "package file parameter missing" error message while trying to upload a package in the server. This package is fine because i have downloaded the package from other server where it is working fine. I have also modified the start.sh file based on some google help and provided below parameters - 

CQ_JVM_OPTS="-XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/app/AEM6/author/tmp ${CQ_JVM_OPTS}"
CQ_JVM_OPTS="-Djava.io.tmpdir=/app/AEM6/author/tmp ${CQ_JVM_OPTS}"


I have also looked into /tmp directory, which also looks fine (no space issues). Also looked into /tmp path, permissions are set correct

bash-4.2$ df -g /tmp
Filesystem    GB blocks      Free %Used    Iused %Iused Mounted on
/dev/hd3           2.50      2.49    1%      878     1% /tmp


Please provide some directions, what is wrong in this server.

8 Replies


Level 9

It would help if you specify what version you're on and what service packs or hotfixes you've applied.

For example, if using AEM 6.1, you need SP1.

- JK


Level 5

Tried to create a test package, while saving, getting below error - 

01.03.2016 17:12:12.245 *INFO* [pool-6-thread-1] com.adobe.granite.repository Service [3414] ServiceEvent REGISTERED
01.03.2016 17:12:12.436 *INFO* [pool-6-thread-1] com.adobe.granite.repository Service [3415] ServiceEvent REGISTERED
01.03.2016 17:12:25.420 *INFO* [qtp-1926428414-197] org.apache.sling.auth.core.impl.SlingAuthenticator getAnonymousResolver: Anonymous access not allowed by configuration - requesting credentials
01.03.2016 17:12:28.822 *ERROR* [qtp-1926428414-197] com.day.crx.packmgr.impl.servlets.UpdateServlet Error while updating package: /etc/packages/my_packages/test-test.zip
java.io.IOException: No such file or directory
        at java.io.File.createNewFile(File.java:1018)
        at java.io.File.createTempFile(File.java:2001)
        at java.io.File.createTempFile(File.java:2052)
        at com.day.crx.packmgr.impl.support.BlobFactoryImpl.allocateTmpFile(BlobFactoryImpl.java:57)
        at com.day.crx.packmgr.impl.support.BlobImpl.getFile(BlobImpl.java:111)
        at com.day.crx.packmgr.impl.support.HttpMultipartPost.getFileParameter(HttpMultipartPost.java:496)
        at com.day.crx.packmgr.impl.servlets.UpdateServlet.doService(UpdateServlet.java:124)
        at com.day.crx.packmgr.impl.AbstractServlet.service(AbstractServlet.java:52)
        at com.day.crx.packmgr.impl.MainServlet.doService(MainServlet.java:144)
        at com.day.crx.packmgr.impl.MainServlet.service(MainServlet.java:121)
        at org.apache.felix.http.base.internal.handler.ServletHandler.doHandle(ServletHandler.java:339)
        at org.apache.felix.http.base.internal.handler.ServletHandler.handle(ServletHandler.java:300)


Level 10

See if this community article helps: 


However - this deals with space issue. I suggest opening a ticket - there does not seem to be a lot of information about this condition other than space issues. 


Level 5
        Okay sure, I will open a ticket. Thanks for looking into the issue.


Level 5

This issue has been fixed. Root cause was /app/AEM6/author/tmp was not in the server, i had to create the directory manually to fix the issue. 


Level 9

Just restating the solution that when we upload the packages it creates required information at run time in /tmp folder.

Generally,this /tmp folder is existed in /crx-quickstart folder.




Level 2

Hi @sandeepm744005

The issue is normally due to one of following 3 reasons:

- tmpdir does not have enough space

- tmpdir does not exist.

- AEM service user does not have proper permission to tmpdir

Back your case, I think it is because of permission issue. Solve it by:

- Check owner and permission of tmpdir: # ls -ls

- May need to update ownership to tmpdir: # sudo chown -R aem:aem $tmpdir

- And may need to update read+write permission: # sudo chmod +rw $tmpdir