Java card cap file install error in jcop tools

When i try to run java card applet in real java card it gives this error.i used jcop tools and java version 1.5  and eclipse 3.2.when i run the applet in simulater it works fine.i saw some document it says allocate memory for the installation process.i don't know how to do that.
/term "winscard:4|SCM Microsystems Inc. SCL010 Contactless Reader 0"
--Opening terminal
>  /card -a a000000003000000 -c com.ibm.jc.CardManager
resetCard with timeout: 0 (ms)
--Waiting for card...
ATR=3B 8A 80 01 4A 43 4F 50 33 31 56 32 33 32 7A       ;...JCOP31V232z
ATR: T=0, T=1, Hist="JCOP31V232"
=> 00 A4 04 00 08 A0 00 00 00 03 00 00 00 00          ..............
(23807 usec)
<= 6F 65 84 08 A0 00 00 00 03 00 00 00 A5 59 9F 65    oe...........Y.e
    01 FF 9F 6E 06 47 91 73 51 2E 00 73 4A 06 07 2A    ...n.G.sQ..sJ..*
    86 48 86 FC 6B 01 60 0C 06 0A 2A 86 48 86 FC 6B    .H..k.`...*.H..k
    02 02 01 01 63 09 06 07 2A 86 48 86 FC 6B 03 64    ....c...*.H..k.d
    0B 06 09 2A 86 48 86 FC 6B 04 02 15 65 0B 06 09    ...*.H..k...e...
    2B 85 10 86 48 64 02 01 03 66 0C 06 0A 2B 06 01    +...Hd...f...+..
    04 01 2A 02 6E 01 02 90 00                         ..*.n....
Status: No Error
cm>  set-key 255/1/DES-ECB/404142434445464748494a4b4c4d4e4f 255/2/DES-ECB/404142434445464748494a4b4c4d4e4f 255/3/DES-ECB/404142434445464748494a4b4c4d4e4f
cm>  init-update 255
=> 80 50 00 00 08 AC B1 90 01 BF 2D 24 A0 00          .P........-$..
(49906 usec)
<= 00 00 91 18 01 39 93 95 05 59 FF 02 00 2C BE 39    .....9...Y...,.9
    5E A5 07 55 87 B8 C3 A8 A6 93 66 2B 90 00          ^..U......f+..
Status: No Error
cm>  ext-auth plain
=> 84 82 00 00 10 0C AE 50 3E C8 7E 1D 92 29 E2 59    .......P>.~..).Y
    08 D9 DA 02 16                                     .....
(57276 usec)
<= 90 00                                              ..
Status: No Error
cm>  delete 060504030201
=> 80 E4 00 00 08 4F 06 06 05 04 03 02 01 00          .....O........
(40041 usec)
<= 6A 88                                              j.
Status: Reference data not found
jcshell: Error code: 6a88 (Reference data not found)
jcshell: Wrong response APDU: 6A88
Ignoring expected error
cm>  delete 010203040506
=> 80 E4 00 00 08 4F 06 01 02 03 04 05 06 00          .....O........
(17392 usec)
<= 6A 88                                              j.
Status: Reference data not found
jcshell: Error code: 6a88 (Reference data not found)
jcshell: Wrong response APDU: 6A88
Ignoring expected error
cm>  upload -d -b 250 "Cap File location"
=> 80 E6 02 00 13 06 01 02 03 04 05 06 08 A0 00 00    ................
    00 03 00 00 00 00 00 00 00                         .........
(32303 usec)
<= 00 90 00                                           ...
Status: No Error
=> 80 E8 00 00 FA C4 81 F2 01 00 23 DE CA FF ED 02    ..........#.....
    02 04 00 01 06 01 02 03 04 05 06 12 68 6D 73 2F    ............hms/
    6A 61 76 61 63 61 72 64 2F 68 65 6C 6C 6F 02 00    javacard/hello..
    21 00 23 00 21 00 0A 00 0B 00 1E 00 0E 00 3D 00    !.#.!.........=.
    0A 00 0B 00 00 00 4D 01 BE 00 00 00 00 00 00 01    ......M.........
    01 00 04 00 0B 01 02 01 07 A0 00 00 00 62 01 01    .............b..
    03 00 0A 01 06 06 05 04 03 02 01 00 08 06 00 0E    ................
    00 00 00 80 03 00 FF 00 07 01 00 00 00 1C 07 00    ................
    3D 00 01 10 18 8C 00 05 7A 05 30 8F 00 00 3D 8C    =.......z.0...=.
    00 01 18 1D 04 41 18 1D 25 8B 00 02 7A 02 21 18    .....A..%...z.!.
    8B 00 03 60 03 7A 19 8B 00 04 2D 1A 04 25 73 00    ...`.z....-..%s.
    09 00 00 00 00 00 0F 11 6D 00 8D 00 06 7A 08 00    ........m....z..
    0A 00 00 00 00 00 00 00 00 00 00 05 00 1E 00 07    ................
    01 00 02 00 06 00 00 01 03 80 03 02 03 80 03 03    ................
    03 80 0A 01 06 80 03 00 06 80 07 01 09 00 0B 00    ................
    00 00 07 05 06 04 0A 07 07 13 0B 00 4D 01 00 00    ............M...
(764519 usec)
<= 6A 80                                              j.
Status: Wrong data
jcshell: Error code: 6a80 (Wrong data)
jcshell: Wrong response APDU: 6A80
Unexpected error; aborting execution

Thanks ReNa
i am using nxp jcop 31 contact-less card.and it will support for java card 2.2.1 and global-platform card specification 2.1.1 .so i am using nxp jcop training 2007 tools and it has java card 2.2.1 and global-platform card specification 2.1.1.Inside my project there are three jar files these are jc221.jar and gp211.jar and bio10.jar
i will appreciate your help
Thanks

Similar Messages

  • Wrong CAP file version error message

    I'm trying to write a loader application that will send a CAP file into JavaCard, and then install it automatically.
    I have developed my JavaCard Applet by using Eclipse3.1.0 and JCOP30.
    After running my JavaCard Applet by Eclipse, I got its CAP file in folder [b\bin\FVSCardPkg\javacard\[/b]
    But when I run my loader application with this CAP file, the error message will display:
    EX: msg Wrong CAP file version, class class com.ibm.jc.JCException
    Wrong CAP file version
         at com.ibm.jc.CapFile.parseHeader(Unknown Source)
         at com.ibm.jc.CapFile.readCapFile(Unknown Source)
         at com.ibm.jc.CapFile.<init>(Unknown Source)
         at LoaderPkg.loader.load(loader.java:35)
         at LoaderPkg.loader.main(loader.java:20)
    This is my loader application source code:
    import java.io.*;
    import com.ibm.jc.*;
    import com.ibm.jc.terminal.*;
    *  Sample /**
    *  Sample loader. Demonstrates how to use the offcard API to download
    *  a cap-file on a JCOP41V22 Engineering sample card and listing of applets loaded will
    * follow.
    public class loader{
         private final static String termName = "pcsc:4"; // Real card
    //     private final static String termName = "Remote"; // Simulator
         protected static final byte[] JCOP_CARD_MANAGER_AID = { (byte) 0xa0, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00};
         protected static final byte defaultInstallParam[] = { -55, 0 };
         static String[] capFileName={"D:/MyCardPkg.cap"};
         public static void main(String[] args){
              try{
                   loader l = new loader();
                   l.load();
              }catch(Exception e){
                   System.err.println("EX: msg " + e.getMessage() + ", class " + e.getClass());
                   e.printStackTrace(System.err);
              System.exit(0);
              //Likewise for simulation, be patient the port takes time to close.
              //Use command line "netstate" to check the disapperance of the port before
              // activating JCShell command to read the simulated card.
         private loader(){}
         private void load() throws Exception{
              CapFile capFile = new CapFile(capFileName[0], null);
              System.out.println("Package name: " + capFile.pkg);
              byte[][] applets = capFile.aids;
              if ((applets == null) || (applets.length == 0)){
                   throw new RuntimeException("no applets in cap file");
              // Get connection to terminal, take note that jcop.exe is required to be activated
              // in simulation mode.
              System.out.println("Open terminal ...");
              //Make sure that the simulator jcop.exe is activated before unmarking this satement
              //Remember to delete the downloaded applet before running otherwise error is
              //expected if the simulator finds the existence of the applet with the
              //same pakage name ID and AID
              //Issue /close command at "cm" prompt if the card is in use,, ie it should
              //have "-" prompt. Be patient that the port takes time to close. Use command line
              //"netstate" to check the disapperance of the port before running.
              // pcsc:4=Card Terminal  Or  Remote=LocalHost Terminal
              JCTerminal term = JCTerminal.getInstance(termName, null);
              //For real JCOP41V22 card, please unmark this statement and delete the downloaded
              //applet before running. Error expected if the card finds the existence of the applet
              //with the same pakage name ID and AID
              //Issue /close command at "cm" prompt if the card is in use,, ie it should
              //have "-" prompt.
              term.open();
              // Add in this statement for real card which requires some response time
              term.waitForCard(5000);
              // Create a logging terminal spitting out the APDUs on standard out
              TraceJCTerminal _term = new TraceJCTerminal();
              _term.setLog(new PrintWriter(System.out));
              _term.init(term);
              term = _term;
              // Get JavaCard representative, passing NULL resets card and returns ATR
              System.out.println("Get card ...");
              JCard card = new JCard(term, null, 2000);
              // Get the off-card representative for the card manager and use it to
              // select the on-card CardManager
              System.out.println("Select card manager ...");
              CardManager cardManager = new CardManager(card, CardManager.daid);
              cardManager.select();
              // For downloading something, we have to be authenticated to card manager.
              // For this, the keys must be set. The keys to use should of course
              // be configurable as well.
              byte[] dfltKey = c2b("404142434445464748494a4b4c4d4e4f");
              cardManager.setKey(new OPKey(255, 1, OPKey.DES_ECB, dfltKey));
              cardManager.setKey(new OPKey(255, 2, OPKey.DES_ECB, dfltKey));
              cardManager.setKey(new OPKey(255, 3, OPKey.DES_ECB, dfltKey));
              cardManager.setKey(new OPKey(1, 1, OPKey.DES_ECB, c2b("707172737475767778797a7b7c7d7e7f")));
              cardManager.setKey(new OPKey(1, 2, OPKey.DES_ECB, c2b("606162636465666768696a6b6c6d6e6f")));
              cardManager.setKey(new OPKey(1, 3, OPKey.DES_ECB, c2b("505152535455565758595a5b5c5d5e5f")));
              System.out.println("init Update ...");
              cardManager.initializeUpdate(255,0);
              System.out.println("Authenticate to card manager ...");
              cardManager.externalAuthenticate(OPApplet.APDU_CLR);
              // And load the cap-file, do not forget to call installForLoad
              System.out.println("Loading cap-file ...");
              byte[] cardManagerAid = cardManager.getAID();
              cardManager.installForLoad(capFile.pkgId,0, capFile.pkgId.length, cardManagerAid, 0, cardManagerAid.length, null, 0, null, 0, 0, null, 0);
              cardManager.load(capFile, null, CardManager.LOAD_ALL, null, cardManager.getMaxBlockLen());
              byte[] capaid = capFile.aids[0];
              System.out.println("Finished loading !");
              // Install applet, we try to install the first applet given in the
              // cap file, and try to instantiate it under the same AID as given for its
              // representation in the cap file. No installation data is passed.
              System.out.println("Installing applet ...");
              cardManager.installForInstallAndMakeSelectable(capFile.pkgId, 0, capFile.pkgId.length, capaid,0, capaid.length, capaid, 0, capaid.length, 0, defaultInstallParam, 0, defaultInstallParam.length, null, 0);
              System.out.println("Install succeeded!");
              // synchronize state with on-card card manager
              System.out.println("Update!");
              cardManager.update();
              // Print information regarding card manager, applets and packages on-card
              JCInfo info = JCInfo.INFO;
              System.out.println("\nCardManager AID : " + JCInfo.dataToString(cardManager.getAID()));
              System.out.println("CardManager state : " + info.toString("card.status", (byte) cardManager.getState()) + "\n");
              //Echountered error 6A 86 with this statement:Object[] app = cardManager.getApplets(CardManager.GET_APPLETS,
              //CardManager.CVM_FORMAT_HEX, true);
              //Solved the bug by playing the integers in arg0 and arg1.
              Object[] app = cardManager.getApplets(1, true);
              if (app == null) {
                   System.out.println("No applets installed on-card");
              } else {
                   System.out.println("Applets:");
                   for (int i = 0; i < app.length; i++) {
                        System.out.println(info.toString("applet.status", (byte) ((OPApplet) app).getState()) + " " + JCInfo.dataToString(((OPApplet) app[i]).getAID()));
              // List packages on card
              // Encountered error with this statement:Object[] lf = cardManager.getLoadFiles(CardManager.CVM_FORMAT_HEX, true);
              // Solved the bug by setting arg0 = 0,
              Object[] lf = cardManager.getLoadFiles(true);
              if (lf == null) {
                   System.out.println("No packages installed on-card");
              } else {
                   System.out.println("Packages:");
                   for (int i = 0; i < lf.length; i++) {
                        System.out.println(info.toString("loadfile.status", (byte)((LoadFile) lf[i]).getState()) + " " + JCInfo.dataToString(((LoadFile) lf[i]).getAID()));
              term.close();
         static String numbers = "0123456789abcdef";
         private byte[] c2b(String s) {
              if (s == null) return null;
              if (s.length() % 2 != 0) throw new RuntimeException("invalid length");
              byte[] result = new byte[s.length() / 2];
              for (int i = 0; i < s.length(); i += 2) {
                   int i1 = numbers.indexOf(s.charAt(i));
                   if (i1 == -1) throw new RuntimeException("invalid number");
                   int i2 = numbers.indexOf(s.charAt(i + 1));
                   if (i2 == -1) throw new RuntimeException("invalid number");
                   result[i / 2] = (byte) ((i1 << 4) | i2);
              return result;
    How to solve this problem?
    Thank you in advance.

    I'm not understanding if your cap file is in "b\bin\FVSCardPkg\javacard\", then why are you loading "D:/MyCardPkg.cap"?
    The issue isn't with your off card application, but the cap file version. Look at the cap file components in JCVM specification. I believe it's the Header component. The major, minor should match your card but not greater. In other words, your can't load a 2.2 on a 2.1 card, but a 2.1 can load on a 2.2

  • Ant tools: converter java card -  class file  not belonging to the package!

    Hi
    I have another problem with converter. Could you help me please again if you have the time?
    I have created a directory when I save the class files generated by javac. After That , I use convert in this way:
    <convert
    JCA="true"
    EXP="true"
    CAP="true"
    packagename="testUn/classes/testUn"
    packageaid="0x01:0x01:0x01:0x01:0x01:0x01:0x01:0x01:0x02:0x00"
    majorminorversion="1.0"
    verbose = "true">
    <AppletNameAID
    appletname="testUn.classes.testUn.PorteAppUn"
    aid="0x01:0x01:0x01:0x01:0x01:0x01:0x01:0x01:0x02:0x00:0x00"/>
    <classpath refid="classpath"/>
    </convert>
    Here is the answer of the computer:
    [echo] Generation of the CAP,JCA and EXP files...
    [convert] Java Card Ant Tasks, Version 1.0
    [convert] Copyright 2005 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms.
    [convert] Note: Usage of Java Card Ant Tasks is optional. Java Card Ant Tasks are not supported by Sun Microsystems, Inc.
    [convert] Java Card 2.2.2 Class File Converter, Version 1.3
    [convert] Copyright 2005 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms.
    [convert] parsing /home/ehoudart/app-manager/VersionZero/src/testUn/classes/testUn/PorteAppUn.class
    [convert] converting testUn.PorteAppUn
    [*convert] error: class PorteAppUn does not belong to package testUn.classes.testUn.*
    [convert] conversion completed with 1 errors and 0 warnings.
    I do not understand why this unique applet class file does not belong to its own package. Is someone an idea?
    Thanks very much in advance for your answer.

    Here is a complete example build.xml (I think I have posted this before).
    <?xml version="1.0" encoding="UTF-8" ?>
    <project default="convert" name="javacard-starter">
      <!-- Build specific properties -->
      <property name="target.classes" location="${basedir}/target/classes" />
      <property name="target.javacard" location="${basedir}/target/javacard" />
      <property name="source.java" location="${basedir}/src/main/java" />
      <!-- Must point to the folder containing the JAR files from the JCDK -->
      <property name="javacard.libs" location="${basedir}/lib" />
      <!-- Must point to the folder containing the JAR file from the JCDK ant task -->
      <property name="javacard.ant-task" location="${basedir}/lib" />
      <!-- Must point to the folder containing the API export files from the JCDK -->
      <property name="javacard.export" location="${basedir}/src/main/export" />
      <property name="verbose" value="true" />
      <property name="noverify" value="false" />
      <!-- Path for JC tasks -->
      <path id="classpath">
        <fileset dir="${javacard.ant-task}">
          <include name="*.jar" />
        </fileset>
        <fileset dir="${javacard.libs}">
          <include name="*.jar" />
        </fileset>
      </path>
      <!-- set the export path to the Java Card export files -->
      <path id="export" description="set the export file path">
        <fileset dir="${javacard.export}">
          <include name="**/*.exp" />
        </fileset>
        <pathelement path="${javacard.export}" />
        <pathelement path="${target.classes}" />
        <pathelement path="${target.javacard}" />
      </path>
      <!-- Definitions for tasks for Java Card tools -->
      <taskdef name="capgen" classname="com.sun.javacard.ant.tasks.CapgenTask" classpathref="classpath" />
      <taskdef name="deploycap" classname="com.sun.javacard.ant.tasks.DeployCapTask" classpathref="classpath" />
      <taskdef name="convert" classname="com.sun.javacard.ant.tasks.ConverterTask" classpathref="classpath" />
      <taskdef name="verifyexport" classname="com.sun.javacard.ant.tasks.VerifyExpTask" classpathref="classpath" />
      <taskdef name="verifycap" classname="com.sun.javacard.ant.tasks.VerifyCapTask" classpathref="classpath" />
      <taskdef name="verifyrevision" classname="com.sun.javacard.ant.tasks.VerifyRevTask" classpathref="classpath" />
      <typedef name="appletnameaid" classname="com.sun.javacard.ant.types.AppletNameAID" classpathref="classpath" />
      <typedef name="jcainputfile" classname="com.sun.javacard.ant.types.JCAInputFile" classpathref="classpath" />
      <target name="init">
        <mkdir dir="${target.classes}" />
        <mkdir dir="${target.javacard}" />
      </target>
      <target name="clean">
        <delete dir="${target.classes}" />
        <delete dir="${target.javacard}" />
        <delete dir="${javacard.eeprom}" />
      </target>
      <target name="compile" depends="init" description="Compile source code to class files">
        <!-- Compile the java code from ${src} to ${classes} -->
        <javac debug="yes" optimize="no" srcdir="${source.java}" destdir="${target.classes}" source="1.5" target="1.5">
          <classpath refid="classpath" />
        </javac>
      </target>
      <target name="convert" depends="compile" description="Convert class files to cap files">
              <convert packagename="chaining" packageaid="0xF0:0x00:0x00:0x01:0x00:0x01" majorminorversion="1.0" classdir="${target.classes}" outputdirectory="${target.classes}" jca="true" exp="true" cap="true" debug="true" verbose="${verbose}" noverify="${noverify}">
                   <appletnameaid aid="0xF0:0x00:0x00:0x01:0x00:0x01:0x00:0x01" appletname="chaining.ChainingApplet" />
                   <exportpath refid="export" />
                   <classpath refid="classpath" />
              </convert>
      </target>
      <target name="copy-debug">
        <mkdir dir="${target.debug}" />
        <echo>Copying cap files</echo>
        <copy flatten="true" todir="${target.debug}" verbose="true">
          <fileset dir="${target.classes}" includes="**/*.cap" />
          <fileset dir="${target.classes}" includes="**/*.exp" />
          <fileset dir="${target.classes}" includes="**/*.jca" />
        </copy>
      </target>
      <target name="all" depends="clean, convert" />
    </project>

  • Upload external  cap file: jcshell: Error code: 6a80 (Wrong data)?

    Hi,
    i use eclipse + NXP JCOP Plugins_Generic3.2.8_Target ,the card is jcop31v232.
    if the cap file is generated by eclipse project , when i upload exteral cap file ,no error
    but if the cap file is generated by converter command ,there is  error
    what error?help me
    cm> /terminal "winscard:4|Feitian R502 Contact Reader 1"
    --Opening terminal
    /card -a a000000003000000 -c com.ibm.jc.CardManager
    resetCard with timeout: 0 (ms)
    --Waiting for card...
    ATR=3B FA 13 00 00 81 31 FE 45 4A 43 4F 50 33 31 56 ;.....1.EJCOP31V
    32 33 32 93 232.
    IOCTL().
    ATR: T=1, FI=1/DI=3 (93clk/etu), N=0, IFSC=254, BWI=4/CWI=5, Hist="JCOP31V232"> => 00 A4 04 00 08 A0 00 00 00 03 00 00 00 00 ..............
    (104154 usec)
    <= 6F 65 84 08 A0 00 00 00 03 00 00 00 A5 59 9F 65 oe...........Y.e
    01 FF 9F 6E 06 47 91 73 51 2E 00 73 4A 06 07 2A ...n.G.sQ..sJ..*
    86 48 86 FC 6B 01 60 0C 06 0A 2A 86 48 86 FC 6B .H..k.`...*.H..k
    02 02 01 01 63 09 06 07 2A 86 48 86 FC 6B 03 64 ....c...*.H..k.d
    0B 06 09 2A 86 48 86 FC 6B 04 02 15 65 0B 06 09 ...*.H..k...e...
    2B 85 10 86 48 64 02 01 03 66 0C 06 0A 2B 06 01 +...Hd...f...+..
    04 01 2A 02 6E 01 02 90 00 ..*.n....
    Status: No Error
    cm> set-key 255/1/DES-ECB/404142434445464748494a4b4c4d4e4f 255/2/DES-ECB/404142434445464748494a4b4c4d4e4f 255/3/DES-ECB/404142434445464748494a4b4c4d4e4f
    cm> init-update 255
    => 80 50 00 00 08 A7 C7 04 88 8C 87 3F DE 00 .P.........?..
    (68417 usec)
    <= 00 00 93 36 01 29 05 95 13 05 FF 02 00 5F E1 48 ...6.)......._.H
    67 60 FD 2F 89 FF AD A4 72 B4 17 E9 90 00 g`./....r.....
    Status: No Error
    cm> ext-auth plain
    => 84 82 00 00 10 17 6D 1C 2A 87 9E 0A 24 3F 15 83 ......m.*...$?..
    A4 84 10 C0 75 ....u
    (71713 usec)
    <= 90 00 ..
    Status: No Errorh1.
    cm> upload -d "D:\JCIDE_workspace\hello\hello\javacard\hello.cap"
    => 80 E6 02 00 12 05 A0 00 01 00 62 08 A0 00 00 00 ..........b.....
    03 00 00 00 00 00 00 00 ........
    (56499 usec)
    <= 00 90 00 ...
    Status: No Error
    => 80 E8 00 00 FF C4 82 01 A1 01 00 0F DE CA FF ED ................
    01 02 04 00 01 05 A0 00 01 00 62 02 00 1F 00 0F ..........b.....
    00 1F 00 0B 00 15 00 2E 00 0C 00 63 00 17 00 12 ...........c....
    00 00 00 6F 00 02 00 01 00 0A 02 01 00 04 00 15 ...o............
    02 03 01 07 A0 00 00 00 62 01 01 00 01 07 A0 00 ........b.......
    00 00 62 00 01 03 00 0B 01 07 A0 00 01 00 62 03 ..b...........b.> 01 00 08 06 00 0C 00 80 03 00 FF 00 07 01 00 00 ................
    > 00 1C 07 00 63 00 01 10 18 8C 00 00 7A 05 30 8F ....c.......z.0.
    > 00 01 3D 8C 00 02 18 1D 04 41 18 1D 25 8B 00 03 ..=......A..%...
    > 7A 02 21 18 8B 00 04 60 03 7A 19 8B 00 05 2D 1A z.!....`.z....-.
    > 04 25 75 00 10 00 01 00 30 00 09 18 19 8C 00 06 .%u.....0.......
    > 70 08 11 6D 00 8D 00 07 7A 05 21 19 8B 00 05 2D p..m....z.!....-
    > 7B 00 08 03 1A 03 7B 00 08 92 8D 00 09 3B 19 03 {.....{......;..
    7B 00 08 92 8B 00 0A 7A 08 00 17 00 02 00 01 00 {......z........
    01 03 00 0A 48 65 6C 6C 6F 57 6F 72 6C 64 00 00 ....HelloWorld..> 00 00 05 00 2E 00 0B 06 80 03 00 01 00 00 00 06 ................
    > 00 00 01 03 00 .....
    >(1200 msec)
    <= 6A 80 j.
    Status: Wrong data
    jcshell: Error code: 6a80 (Wrong data)
    jcshell: Wrong response APDU: 6A80

    thank you. I use jcdk 2.2.1,jcop31v232 supports jc2.2.1 and gp2.1.1
    And i can not understand this:
    your jcop card is not a javacard v3 card.
    cm> /cap-info -p "D:\JCIDE_workspace\hello\hello\javacard\hello\hello" "D:\JCIDE_workspace\hello\hello\javacard\hello.cap"
    jcshell: Cannot read file <D:\JCIDE_workspace\hello\hello\javacard\hello.cap>: Incomplete CAP file, missing mandatory component: Header.capbut there is Header.cap in hello.cap:
    hello/javacard/Header.cap :
    01 00 13 de ca ff ed 01 02 04 00 01 09 a0 00 01
    00 62 03 01 0c 02

  • How to prepare Java Card Assembly files

    Hi,
    If we rebuilt the API's in Java Card then how could be Java card Assembly files be generated
    thanks
    murali

    Thank you Lee and paulcw. Good to know that
    information and thank you for your suggestion as
    well. Like what paulcw mentioned, not to put
    sensitive information in my code. I wrote those
    because I need to connect to MS SQL. I just have no
    idea how to connect to the database without writing
    those codes in the file. Could anyone explain little
    bit more on it? Thank you.Create a password file that is accessed by your program. It keeps the passwords out of the developers' hands. (Mandatory practice implemented by our DBAs).

  • CAP file generating ERROR

    Hi everybody ,
    I'm trying to build a javacard project by using ANT tool . The problem is when i use the JCOP tool converter (tric.jar) with JRE 1.4 or 1.5 i got the following error :
    Error: class java.lang.RuntimeException, resolving constant-pool of clazz Lhun/eid/javacard/EIDApplet; failed: no such method getClass, ()Ljava/lang/Class; in Ljava/lang/Object;
    and JCOP tool converter with JRE 1.6 , igot another error : invalid magic cafebabe
    After that , i replaced the JCOP tool's converter by using the java_card_kit-2_2_2's converter , and i got another error :
    [java] converting hun.eid.javacard.EIDApplet
    [java] parsing C:\Users\mannykitty\workspace NEW\HUNEID\lib\api_export_files\javacard\framework\javacard\framework.exp
    [java] parsing C:\Users\mannykitty\workspace NEW\HUNEID\lib\api_export_files\javacardx\crypto\javacard\crypto.exp
    [java] error: line 2094: hun.eid.javacard.EIDApplet: method getClass() of class java.lang.Object not found in export file lang.exp or the method signature has changed.
    [java] error: line 2094: hun.eid.javacard.EIDApplet: class java.lang.Class not found in export file lang.exp.
    [java] error: line 2094: hun.eid.javacard.EIDApplet: class java.lang.Class in return type of method java.lang.Object.getClass() not found.
    [java] error: line 2094: hun.eid.javacard.EIDApplet: method getClass() of class java.lang.Object not found in export file lang.exp or the method signature has changed.
    [java] error: line 2094: hun.eid.javacard.EIDApplet: class java.lang.Class not found in export file lang.exp.
    [java] error: line 2094: hun.eid.javacard.EIDApplet: class java.lang.Class in return type of method java.lang.Object.getClass() not found.
    [java] conversion completed with 6 errors and 0 warnings.
    [java] Java Result: 1
    Can someone tell me how to fix this ? Any help will be appreciated !

    I've added the api.jar to class path for compiling but it's seemed not to be changed . Here is my ANT build.xml config :
    <property name="lib" value="lib"/>
         <property name="JCKlibHome" value="c:\Java\java_card_kit-2_2_2\lib"/>
    <property name="JCOPlib" value="${lib}/slbJIop.jar;${lib}/jc_api_212.jar;${lib}/jce1_2_2.jar;${lib}/sunjce_provider.jar"/>
    <property name="JCOPtools" value="${JCKlibHome}/converter.jar;${JCKlibHome}/offcardverifier.jar"/>
    <property name="src" value="src"/>
         <property name="build" value="build"/>
    <property name="classes" value="${build}/classes"/>
    <property name="cardout" value="${build}/card"/>
    <property name="tmp" value="${build}/tmp"/>
    <property name="buildcp" value="${JCOPlib};${JCKlibHome}/api.jar"/>
    Compile :
    <target name="compile" depends="init" description="Compile the javacard source into class files">
    <!-- Compile the java code from ${src} into ${classes} -->
    <javac debug="yes" classpath="${buildcp}" srcdir="${src}" destdir="${classes}"/>
    </target>
    CAP generation:
    <target name="createCAP" depends="compile,capuptodatecheck" unless="capfile.uptodate" description="Create the CAP file from the class files">
    <java classname="com.sun.javacard.converter.Converter" classpath="${JCOPtools}" fork="yes">
         <arg line="-classdir ${classes}" />
         <arg line="-exportpath ${JCOPlib};C:\Java\java_card_kit-2_2_2\api_export_files"/>
         <arg line="-d ${cardout}" />
         <arg line="-v" />
         <arg line="-out CAP EXP JCA" />
         <arg line="-applet 0x41:0x70:0x70:0x68:0x75:0x6e:0x65:0x69:0x64 hun.eid.javacard.EIDApplet hun.eid.javacard 0x41:0x70:0x70:0x68:0x75:0x6e:0x65:0x69:0x64:0x01" />
         <arg line="1.0" />
    ERROR :
    [java] error: line 2094: hun.eid.javacard.EIDApplet: method getClass() of class java.lang.Object not found in export file lang.exp or the method signature has changed.
    [java] error: line 2094: hun.eid.javacard.EIDApplet: class java.lang.Class not found in export file lang.exp.
    [java] error: line 2094: hun.eid.javacard.EIDApplet: class java.lang.Class in return type of method java.lang.Object.getClass() not found.
    [java] error: line 2094: hun.eid.javacard.EIDApplet: method getClass() of class java.lang.Object not found in export file lang.exp or the method signature has changed.
    [java] error: line 2094: hun.eid.javacard.EIDApplet: class java.lang.Class not found in export file lang.exp.
    [java] error: line 2094: hun.eid.javacard.EIDApplet: class java.lang.Class in return type of method java.lang.Object.getClass() not found.
    [java] conversion completed with 6 errors and 0 warnings.
    [java] Java Result: 1
    :(

  • Unknown Error with JCop Tools 3.1.2

    Hello All ,
    I am using Eclipse program to create a javacard applet...
    But there is a unknown Problem appears to me ..I don't know how to solve it.
    First of All ,
    My OS is Windows 7 x64 bit
    My java version is : 1.6
    My Eclipse version is : 3.2
    My Smart Card Reader is : Omnikey ,CardMan 5321
    So First of All , i added the plugin "JCOP tools 3.1.2" to the Eclipse program , and i activated the tools successfully.
    and i created a new javacard project by using Basic Javacard template
    Now when i want to Run ,
    SO i when i set the Run options to Card Reader , and set the card reader to "OmniKey"
    like this image:
    [Image 1|http://img85.imageshack.us/img85/1158/runx.jpg]
    -By the way , i don't understand where "Philps Pegoda Reader" came from?? -
    Then when i press Run , the Eclipse program will be closed and this error appears:
    [Error Image|http://img135.imageshack.us/img135/2926/errorevs.jpg]
    I am not sure what is the problem ... so please some one help me here...
    Thank you for your time
    Edited by: ahmed30 on May 25, 2010 8:44 AM

    Hi,
    The pegoda reader is the default reader that has hard coded support (like JCOP engineering sample cards). I would say this is because NXP was founded by Phillips.
    I cannot help you with the second issue. I have only used JCOP 3.1.2 for a short time (quite a while ago now) and reverted to 3.1.1.b as 3.1.2 did not add any new features and from memory did not work properly on my WIndows XP machine (32-bit). I can confirm that 3.1.1 works on XP 64-bit under a 32-bit JVM.
    Is the issue when running against a card or the simulator or both?
    You could try running the jcop.exe executable in the plugins\com.ibm.bluez.jcop.eclipse_<version>\simuls\nJCOP\win32\x86 directory from a command prompt to see if it is an issue with Eclipse/Java or the JCOP simulator.
    Cheers,
    Shane

  • Java AS 700 post install error

    I am getting an error after install of the java AS 700 when I am trying to run the JSPM.  It's telling me it cannot locate the DBINFO.XML file.
    I'm sure I've missed a step somewhere but I cant find any note or anything with DBINFO.XML in it.
    The SDM, http etc are all running fine.
    TIA,
    M

    SOLUTION:
    Turns out that my %JAVA_HOME% variable was point to the JRE from the initial install.  I never changed it to the JDK path. 
    I discovered this because the logs were telling me that that it didnt support the cp850 bin2.  A quick search on that turned up a note explaining that this variable was pointing in the wrong place.
    M.

  • Java SCS add-in install Error: role ORA_SID is not created yet.

    Greetings,
    I'm trying to get the Java add-in installed on a recently upgrade BI 7.0 system (ABAP WAS) - NON-Unicode.
    I'm erroring in SAPinst at "Defining the environment for user _______"
    I have applied the changes recommended in note 921595 and continue to get the error.
    Any seen this? I've opened a OSS note. However, they're no longer timely in thier replies......
    Details:
    Error - from the log
    Account 200 already exists.
    INFO       2006-12-22 17:01:56 [syuxccuren.cpp:543]
               CSyCurrentProcessEnvironmentImpl::setEffectiveGroup(PSyGroup)
    Effective group id set to 200.
    INFO       2006-12-22 17:01:57 [syuxccuren.cpp:543]
               CSyCurrentProcessEnvironmentImpl::setEffectiveGroup(PSyGroup)
    Effective group id set to 206.
    ERROR      2006-12-22 17:01:57 [iaxxinscbk.cpp:271]
               abortInstallation
    CJS-00030  Assertion failed: in
    function (role) {
        NWUsers.trace("NWUsers.getAccountData(", role, ")");
        this._initAccountData();
        ASSERT(arguments.callee, this.haveAccountData(role), "role " + role + " is not created yet.");
        var ad = this._readAccountDataFromKeydb(role);
        ad = this._readAccountData(ad);
        var masterpwd = this.getMasterPassword();
        if (ad.password == "" && this._useMasterPasswordForAccountData(ad) && ad.type == "USER" && masterpwd !== undefined && role != NWUsers.roles.J2EEGuest && !ad
    .locked) {
            ad.password = masterpwd;
        NWUsers.trace("NWUsers.getAccountData(): ", dump_properties(ad));
        return ad;
    role ORA_SID is not created yet.
    ERROR      2006-12-22 17:01:57
               CJSlibModule::writeError_impl()
    MUT-03025  Caught ESAPinstException in Modulecall: ESAPinstException: error text
    undefined.
    ERROR      2006-12-22 17:01:57 [iaxxgenimp.cpp:736]
               showDialog()
    FCO-00011  The step setUserEnvironment with step key |NW_Addin_SCS|ind|ind|ind|i
    nd|0|0|NW_Users_Create_Do|ind|ind|ind|ind|3|0|setUserEnvironment was executed wi
    th status ERROR .
    INFO       2006-12-22 17:03:12 [iaxxgenimp.cpp:787]
               showDialog()
    An error occured and the user decide to stop.\n Current step "|NW_Addin_SCS|ind|
    ind|ind|ind|0|0|NW_Users_Create_Do|ind|ind|ind|ind|3|0|setUserEnvironment".
    iauxsysex.c:316: child 254136 has crashed. Executable directory is /usr/sap/put/
    SCS/sapinst_exe.770326.1166835275. Contact Support.
    iaextract.c:814: child has signaled an exec error. Keeping directory /usr/sap/pu
    t/SCS/sapinst_exe.770326.1166835275
    Kernel:
    disp+work
    disp+work information
    kernel release                700
    kernel make variant           700_REL
    compiled on                   AIX 2 5 005DD9CD4C00
    compiled for                  64 BIT
    compilation mode              Non-Unicode
    compile time                  Oct 29 2006 20:38:45
    update level                  0
    patch number                  83
    source id                     0.083
    supported environment
    database (SAP, table SVERS)   700

    Resolved - password only 6 characters - changed to 8 and good to go

  • Snow Leopard 10.6.3 "Could not copy necessary support files" Install Error

    I bought the box set version of Snow Leopard 10.6.3. I am getting an error when installing it on my Macbook pro model A1150 2.16ghz. The error message says that it cannot install the support files and to restart the computer. I am currently running 10.4.11. I already checked all the hardware and everything passed. I also erased the hard drive as well and still cannot get it to work. I read in some forums that it is sometimes due to faulty RAM. I had recently installed a 1gb chip, so I removed that and still was not able to get it to work. Help please??

    First, your hard drive may be failing. Second, maybe it's not the new RAM module but the old one. Third, your drive may be corrupted. Try this:
    Drive Preparation
    1. Boot from your OS X Installer Disc. After the installer loads select your language and click on the Continue button. When the menu bar appears select Disk Utility from the Utilities menu.
    2. After DU loads select your hard drive (this is the entry with the mfgr.'s ID and size) from the left side list. Note the SMART status of the drive in DU's status area. If it does not say "Verified" then the drive is failing or has failed and will need replacing. SMART info will not be reported on external drives. Otherwise, click on the Partition tab in the DU main window.
    3. Under the Volume Scheme heading set the number of partitions from the drop down menu to one. Set the format type to Mac OS Extended (Journaled.) Click on the Options button, set the partition scheme to GUID (for Intel Macs) or APM (for PPC Macs) then click on the OK button. Click on the Partition button and wait until the process has completed.
    4. Select the volume you just created (this is the sub-entry under the drive entry) from the left side list. Click on the Erase tab in the DU main window.
    5. Set the format type to Mac OS Extended (Journaled.) Click on the Options button, check the button for Zero Data and click on OK to return to the Erase window.
    6. Click on the Erase button. The format process can take up to several hours depending upon the drive size.
    7. Quit DU when formatting is complete and return to the installer. Install OS X.

  • Dynadock V10 - " error can not find installation file" INSTALL ERROR

    Hi I have a toshiba dynadock V10.
    Every time i try to install the drivers it says " error can not find installation file". I have downloaded the latest drivers and switched off my anti virus and shut off all running proiceses and no go. There are a few references to this on the internet but none has a solution.
    I amn trying to install it on an equium U400 running windows 7.
    Funnily enough it loaded on an old dell pc easily!
    I have spent hours searching the net and there is no answer. I dont have anything showing in programs to uninstall.
    Thanks

    >Funnily enough it loaded on an old pc easily!
    Hi
    This means that drivers are ok and there must be something wrong with the system preinstalled on Equium U400.
    How did you proceed?
    Its important that you would NOT connect the Dynadock to the notebook before the drivers and software installation has not been finished.
    Therefore you have to install the software firstly. Then after new reboot connect the Dynadock to the notebook and the installation would finish the next steps.

  • SUN Java WebServer on Linux install error

    Hi All
    I am trying to install SUN JavaWebServer 6.1 SP2 on linux.
    My environment is
    Red Hat Enterprise Linux ES release 3 (Taroon Update 6)
    Kernel 2.4.21-37.ELsmp on an i686
    I am logged in as root.
    I got the software sun-webserver61-rh72[1].tar.gz from sun site, after extracting when run using
    ./setup
    After I pass through
    1. accepting license
    2.express install option,
    3. /opt/SUNWwbsvr as location
    4.install all components [1. Sun ONE Web Server, Enterprise Edition (2)] screens
    I get thie error
    ERROR: AdminSysUser not specified in install cache [tmp/fileACNAs8]
    ERROR. Failure installing Server Core. Do you want to continue [n]?
    and the installer terminates.
    Can someone plese tell me the problem here.
    Regards
    bib

    I could install it in a different machine (linux). However on the machine it failed, it never asked me to enter the user name. Where do I enter it.
    On the machine where I was succesfull, i was prompted to enter admin user name.
    Thanks
    bib

  • Help with Java card client

    Hello All ,
    i am new to javacard ...
    i am using JCOP31 , and smartcard reader 5321
    and implementing the java card by using Eclipse with the JCOP tools plugin
    I installed an applet on a java card... and i was told that i have to write a client program to test it.
    I hope some one show me how to implement a javacard Client ..and what i should do to implement a JavaCard Client .
    Thank You for your time.

    Hi,
    Your best bet (for communicating with a real card) is to use the classes in the javax.smartcardio package in Java 6. If you search the forum you should be able to find examples of using this.
    If you need to communicate with the JCOP card simulator, you will need to use the JCOP offcard API's. This is a little bit harder and you will most likely have to use trial and error (and Eclipse) to find the classes you need. I have used this in the past, but I do not have any examples of this. It was actually possible to develop a service layer that can use either API so you can switch between a real card and JCOP simulator (handy for debugging). The JCOP offcard API jar file is in the JCOP Tools plugins directory.
    Cheers,
    Shane

  • How to create CAP file based on a J2ME project ?

    Hi all,
    Recently I need to install a midlet application into the sim card with an applet loader.
    And it requires a java card cap file.
    I already installed:
    1> JAVA Card Kit 2.2.2
    2> JDK 1.6.0_01
    3> J2ME Wireless Toolkit 2.2
    4> Eclipse 3.2
    But I don't know how to generate a cap file from the Eclipse J2ME midlet project.
    Any tips?
    Thank you in advance.

    You cannot install a midlet on a sim card. If it's a Java Card, the format is defined to .cap file. Check out the Java Card VM specification for details. For .cap file creation/installation you can use Sun's Java Card development kit.
    http://java.sun.com/products/javacard/dev_kit.html

  • CAP file transmitter

    hi everyone
    other than jcop, is there any tool for sending a cap file to java card ?
    i can't get JCOP tools.

    hi
    GPShell 1.4.1 is excellent. i would like to give a special thank to aus .
    GPShell is open source, It is written on top of the GlobalPlatform library.
    http://sourceforge.net/projects/globalplatform/
    following cards are tested:
    Kona java card 20 (GP2.1.1,SCP02)
    Oberthur CosmopoliC 32K (OP201)
    CosmopoliC 64K V5.2 (GP211, SCP01, Impl05)
    Axalto Cyberflex e-gate 32k
    GemXpresso R3.2 E64
    IBM JCOP v2.2 41
    IBM JCOP 31 (36k)
    Nokia 6131 NFC Phone
    Axalto Cyberflex Access 64k
    for compiling and converting java card applets, use jcde and
    for loading cap file on the card, use GPShell.
    jcop tools need license,
    when open source projects are available and work properly , we don't need
    JCOP Tools.

Maybe you are looking for