KB Article #172467
Composer not starting: java.lang.UnsatisfiedLinkError: ... \ftp_jni.dll: Can't load IA 32-bit .dll on a AMD 64-bit platform
Problem
Composer isn't starting with this error:
com.axway.framework.exception.AxwayTechnicalError: An internal error occurred. at com.axway.framework.ui.workbench.AxwayWorkbench.handleError(AxwayWorkbench.java:2210) at com.axway.framework.ui.task.DesignerLongTaskDialog.handleError(DesignerLongTaskDialog.java:372) at com.axway.framework.business.task.LongTask$1.run(LongTask.java:642) java.lang.UnsatisfiedLinkError: C:\Users\user\AppData\LocalLow\Sun\Java\Deployment\cache\6.0\17\4228c0d1-5e94d888-n\ftp_jni.dll: Can't load IA 32-bit .dll on a AMD 64-bit platform at java.lang.ClassLoader$NativeLibrary.load(Native Method) at java.lang.ClassLoader.loadLibrary0(Unknown Source) at java.lang.ClassLoader.loadLibrary(Unknown Source) at java.lang.Runtime.loadLibrary0(Unknown Source) at java.lang.System.loadLibrary(Unknown Source) at core.ftp.FtpScript.<clinit>(FtpScript.java:38) at com.axway.xd.broker.xib.business.v300.channel.ftp.PhysicalChannelEnd_Xib300_FTP_TCP.checkData(PhysicalChannelEnd_Xib300_FTP_TCP.java:90) at com.axway.framework.business.abstractobjects.AxwayObject.check(AxwayObject.java:513) at com.axway.framework.business.abstractobjects.DesignObjectForStatus.check(DesignObjectForStatus.java:206) at com.axway.framework.business.abstractobjects.SecondaryDesignObject.check(SecondaryDesignObject.java:1021) at com.axway.framework.business.abstractobjects.SecondaryDesignObjectsManager.checkFrameworkData(SecondaryDesignObjectsManager.java:212) at com.axway.framework.business.abstractobjects.ParentSecondaryDesignObject.checkFrameworkData(ParentSecondaryDesignObject.java:428) at com.axway.framework.business.abstractobjects.AxwayObject.check(AxwayObject.java:512) at com.axway.framework.business.abstractobjects.DesignObjectForStatus.check(DesignObjectForStatus.java:206) at com.axway.framework.business.abstractobjects.SecondaryDesignObject.check(SecondaryDesignObject.java:1021) at com.axway.framework.business.abstractobjects.SecondaryDesignObjectsManager.checkFrameworkData(SecondaryDesignObjectsManager.java:212) at com.axway.framework.business.abstractobjects.MainDesignObject.checkFrameworkData(MainDesignObject.java:702) at com.axway.framework.business.abstractobjects.AxwayObject.check(AxwayObject.java:512) at com.axway.framework.business.abstractobjects.DesignObjectForStatus.check(DesignObjectForStatus.java:206) at com.axway.framework.business.abstractobjects.MainDesignObject.check(MainDesignObject.java:899) at com.axway.framework.business.checking.RecursiveChecker.recursiveCheck(RecursiveChecker.java:381) at com.axway.framework.business.checking.RecursiveChecker.checkObject(RecursiveChecker.java:306) at com.axway.framework.business.checking.RecursiveChecker.taskMethod(RecursiveChecker.java:270) at com.axway.framework.ui.workbench.AxwayWorkbench.performCheckObjects(AxwayWorkbench.java:1455) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at com.axway.framework.business.task.LongTask$1.run(LongTask.java:627) com.axway.framework.exception.AxwayTechnicalError: An internal error occurred. at com.axway.framework.ui.workbench.AxwayWorkbench.handleError(AxwayWorkbench.java:2210) at com.axway.framework.ui.task.DesignerLongTaskDialog.handleError(DesignerLongTaskDialog.java:372) at com.axway.framework.business.task.LongTask$1.run(LongTask.java:642) java.lang.NoClassDefFoundError: Could not initialize class core.ftp.FtpScript at com.axway.xd.broker.xib.business.v300.channel.ftp.PhysicalChannelEnd_Xib300_FTP_TCP.checkData(PhysicalChannelEnd_Xib300_FTP_TCP.java:83) at com.axway.framework.business.abstractobjects.AxwayObject.check(AxwayObject.java:513) at com.axway.framework.business.abstractobjects.DesignObjectForStatus.check(DesignObjectForStatus.java:206) at com.axway.framework.business.abstractobjects.SecondaryDesignObject.check(SecondaryDesignObject.java:1021) at com.axway.framework.business.abstractobjects.SecondaryDesignObjectsManager.checkFrameworkData(SecondaryDesignObjectsManager.java:212) at com.axway.framework.business.abstractobjects.ParentSecondaryDesignObject.checkFrameworkData(ParentSecondaryDesignObject.java:428) at com.axway.framework.business.abstractobjects.AxwayObject.check(AxwayObject.java:512) at com.axway.framework.business.abstractobjects.DesignObjectForStatus.check(DesignObjectForStatus.java:206) at com.axway.framework.business.abstractobjects.SecondaryDesignObject.check(SecondaryDesignObject.java:1021) at com.axway.framework.business.abstractobjects.SecondaryDesignObjectsManager.checkFrameworkData(SecondaryDesignObjectsManager.java:212) at com.axway.framework.business.abstractobjects.MainDesignObject.checkFrameworkData(MainDesignObject.java:702) at com.axway.framework.business.abstractobjects.AxwayObject.check(AxwayObject.java:512) at com.axway.framework.business.abstractobjects.DesignObjectForStatus.check(DesignObjectForStatus.java:206) at com.axway.framework.business.abstractobjects.MainDesignObject.check(MainDesignObject.java:899) at com.axway.framework.business.checking.RecursiveChecker.recursiveCheck(RecursiveChecker.java:381) at com.axway.framework.business.checking.RecursiveChecker.checkObject(RecursiveChecker.java:306) at com.axway.framework.business.checking.RecursiveChecker.taskMethod(RecursiveChecker.java:270) at com.axway.framework.ui.workbench.AxwayWorkbench.performCheckObjects(AxwayWorkbench.java:1455) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at com.axway.framework.business.task.LongTask$1.run(LongTask.java:627)
Resolution
Composer was correctly starting with Java on 32b:
*.bat file created with this line:
call "C:\Program Files (x86)\Java\jre6\bin\javaws.exe" http://10.133.xx.x:8081/jnlp/Composer.jnlp
Following java64 calls use separately in *.bat files are not working either:
call "C:\Program Files\Java\jre6\bin\javaws.exe" http://10.133.xx.x:8081/jnlp/Composer.jnlp
or
call "C:\Program Files\Java\jdk1.6.0_43\jre\bin\javaws.exe" http://10.133.xx.x:8081/jnlp/Composer.jnlp