JCOP Tools 3.0 (Eclipse Plugin) Release Notes
Version 1.0.3.3 (Howald)
Please note that a JRE of version 1.4.x is required to run JCOP Tools.
What's new in 1.0.3?
What's new in 1.0.2?
- Converter bug fixed.
A bug that caused the converter to refuse building projects with abstract classes which extend
javacard.framework.Applet has been fixed.
- Applet install order support.
The order in which applets from a given package are installed can now be specified in the
Package Properties dialog.
- New CAP File Properties view.
The new CAP File Properties view displays more useful information obtained directly from the
CAP file, and not from the Converter. This means that CAP file properties are persisted across
sessions.
- String encoding support. (1.0.2.a)
A string in the Java Editor can now be easily converted into a byte array of desired encoding:
- JCOP21id simulation.
The JCOP21id simulation is now correctly included.
- Custom Card Types.
Custom OpenPlatform card types are now supported. Parameters such as CardManager AID,
key sets, Shell plugin or lifecycle state can now be freely configured or
selected from pre-defined types.
- Better SIM support. (1.0.2.a)
The shell scripts used for SIM cards and simulations have been improved and streamlined.
What was new in 1.0.1?
- Converter bug fixed. (1.0.1.a)
A bug that caused the converter to only include one applet per CAP file has been fixed.
- New applet wizard. (1.0.1.a)
A wizard to create new JavaCard applets has been added.
- Command Line Interface.
Documentation for using JCOP Tools from the command line has been added.
- Other bug fixes.
A few bugs that mainly affect users running Eclipse with JRE 1.3.x have been fixed. Please
note that we recommend using a 1.4.x JDK.
What was new in 1.0.0?
- Batic no longer a pre-requisite.
JCOP Tools 3.0 do not require JCOP Tools 2.2 to be installed on the system anymore.
- Exportmap support.
Support for maintaining binary compatibility against Export Files has been added.
What was new in 0.9.5?
- Converter bug fixed.
A bug in the converter that caused non-compliant (but working) CAP files has been
fixed.
- Multiple reader support.
Users with multiple PC/SC readers can now select the desired reader in a convenient
drop-down box.
What was new in 0.9.4?
- Code Coverage / Profiling
Support for code coverage and profiling is now available. If enabled, the debugger
will mark executed lines of code with colored bars and indicate the execution
frequency of lines and blocks when the VM is suspended.
What was new in 0.9.3?
Note for beta-testers of releases prior to 0.9.3:
After upgrading to 0.9.3, you should reset the classpath of all your JCOP projects.
In the Package Explorer, right-click on a project and select "Reset Classpath". Eclipse
will then select the correct libraries for your target. If this does not resolve compilation
problems, make sure the settings found in the "Project Properties" dialog under "JCOP
Project Properties" and/or "Java Build Path" are correct.
- JCOP specific APIs split into smaller libraries.
Instead of developing against a certain type of JCOP card, you may now develop
against a freely configurable set of libraries, such as JavaCard 2.1.1 or OpenPlatform
2.0.1'. Preconfigured sets for all supported JCOP cards are included.
- Multiple project support
Building CAP files from sources whose dependencies span across multiple projects
is now supported.
- Projects outside of workspace
Projects which live outside of the Eclipse workspace root are now supported.
- Custom build folders for source folders
Projects with source folders that specify a custom output path (new feature in Eclipse 2.1)
are now supported as well.
- Shell View Buttons
The JCOP Shell now provides buttons for often-used actions such as installing and deleting
packages and applets, authentication, key loading, and others.
- Enhanced Support for Physical Card Targets
The JCOP shell can now talk to "real" card terminals, such as PC/SC or T=CL readers. Please
note that an applet running on a real card cannot be debugged.
- High-Precision Timer
For readers that support this feature, the JCOP Shell will show the exact APDU execution
time at microsecond level (μsec).
Currently, this feature works only with the newest generation of the contactless 'Pegoda'
reader from Philips. Drivers which support this new feature must be obtained from Philips.
- New JCOP Targets
Support for all currently available JCOP card families is now included.
What was new in 0.9.2?
- Support for SIM Toolkit applets.
With the JCOP 21sim Family API and the JCOP 21sim Target, support for STK applets is now
available. SIM install parameters can be set in the applet's property dialog; other SIM
options can be found in the SIM tab of the JCOP 21sim Target in the Run... or Debug...
dialogs.
- JCOP Explorer View
The JCOP Explorer gives you a quick overview of your packages and applets, and their AIDs
and other JavaCard related settings. Double-click on any node to display the respective
property dialog.
- Cusom Mask Support
Support for simulating a custom mask (packages pre-loaded in ROM) is now available. See the
Cusom Mask tab of any JCOP target in the Run... or Debug... dialogs. Please note that ROM
applets cannot be debugged at this time.
- Improved Debugging Support
Breakpoints can now be set before a package is uploaded on the card. Also, breakpoints are
recycled for any future launches. Furthermore, slow-speed emulation is now available.
Known Problems
- When refactoring an Applet or JavaCard package, AID associations are lost. This
problem is related to Eclipse's lack of support for Refactoring Participants. We hope
it will be addressed in the 2.2 release of Eclipse.
- Eclipse allows breakpoints be set on the line of a method declaration. This has
however no effect on execution. Note that there will never be a small check mark next
to the blue dot, indicating that said breakpoint is not active.
- JCOP property pages are shown for projects, packages, and compilation units, regardless
of the project type. This issue is related to the lack of an IActionFilter for IJavaElement
within the Eclipse JDT/UI. (See Eclipse Bug 30948.)
- The debugger shows "NullPointerException" in datail pane of variables view when a
non-primitive type object is selected. This issue is caused by Eclipse's assumption that
java.lang.Object has a method toString [()Ljava/lang/String;], which of course is not the
case on JavaCard. (See Eclipse Bug 30948.)
- Certain debugging features Eclipse offers, such as Inspect, Display, and Execute are not
supported on JCOP simulations.
- The Memory Information does not receive Debug event information until it is first displayed.
It will thus not show any data if it is activated when the simulation is suspended. Once active,
the view will function properly, even if another view is selected.
|