The J301 Errors typically occur as part of the installation process.
In sdkj_userguide_exxx.pdf error cause is defined as installation destination invalid and other errors.
The most common causes are:
1. The application was not signed properly.
2. There was a mismatch of the product id between the dalp file and the signature.
3. The bmp file specified in the <icon> tag in the dalp was not found in the specified location.
4. Jar files specified in the dalp file were not included in the installation medium.If you have installed/uninstalled an application for debugging many times over, it may be necessary to clear all installed information on the device by rebooting device. And subsequently when reinstalling the application either via RXOP or WebImageMonitor make sure desired installation directory is correct, e.g. HDD.
5. Specific to the 4.x platform: Jar file size is bigger than the allowed size.
[stderr] java.lang.OutOfMemoryError: [B
[stderr] at java.util.jar.JarFile.getBytes(Unknown Source)
[stderr] at java.util.jar.JarFile.initializeVerifier(Unknown Source)
[stderr] at java.util.jar.JarFile.getInputStream(Unknown Source)
[stderr] at jp.co.ricoh.dsdk.osgi.service.auManager.AuManager.getClassesHashFromFileURL(Unknown Source)
[stderr] at jp.co.ricoh.dsdk.osgi.service.auManager.AuManager.checkJarHash(Unknown Source)
[stderr] at jp.co.ricoh.dsdk.osgi.service.appManager.AppManager.install(Unknown Source)
[stderr] at jp.co.ricoh.dsdk.osgi.service.appManager.AppManager.access$300(Unknown Source)
[stderr] at jp.co.ricoh.dsdk.osgi.service.appManager.AppManager$InstallThread.run(Unknown Source)
[stderr] at java.lang.Thread.startup(Unknown Source)
[stdout] e.getEventType()=301
[stdout] [SDK_P_RIM__]Http Response Code:200 OK
[stdout] bs.toString()=<?xml version="1.0" encoding="UTF-8" ?>
<type2error>
<errno>301</errno>
<errmsg>install failed</errmsg>
</type2error>
In the past, the core engineering team modified an issue that occurred during installation with regards to the size of the jar files. Please see SDK/J V4.15 release note below:
[CHNG-0737] <<Target model: all models>>
Change of the timeout time for SDK/J application installation
The timeout time for SDK/J application installation has been changed from 90 seconds to 4 minutes. This change has been made in response to the problem of an occurrence of a timeout error in a time-consuming SDK/J application installation process. Previously, when installation of an SDK/J application took more time than the specified timeout time, a timeout error occurred even if the installation was successful. This problem often occurred with SDK/J applications that were authenticated only for a specific device or for a specific number of devices. (This is because installation of such SDK/J applications is usually time-consuming (mainly for authentication) compared to other SDK/J applications.)
Specifically, a timeout error occurred when the jar file size of the SDK/J application exceeded the following limits:
<Model> <Jar file size limit>
Aficio MP C4000 / Aficio MP C5000 : 2.2MB
Aficio MP C6000/C7500 : 3MB
Aficio MP 2550 Series / 3350 Series : 2MB
Aficio MP C3500/C3500SP/C4500/C4500SP : 3MB
In this change, the jar file size limit for SDK/J applications that are authenticated for a specific device or for a specific number of devices has been increased to 5MB. The solution to avoid this error in the 4.x platform is to reduce your application main jar file size to be < 5mb. It's always a good idea to modularize your application by creating separate libraries.