Hello,

Harley V.Barrales wrote:
> CardRequest cr = new CardRequest(CardRequest.NEWCARD, null, null);
> 
> I can successfully create a SmartCard object.

This call means that you are not requesting a card with a
particular functionalty, i.e., any card insterted will create
the SmartCard object.

> But when I tried to invoke the followng codes:
> 
> FileAccessCardService facs = (FileAccessCardService)
> sc.getCardService(FileAccessCardService.class, true);
> 
> the exception error  occurs...

Which mean that you have either:

 - inserted a card that cannot do the "FileAccess" functionality
   (as defined by the OCF interface you are requesting), or

 - that has no implementation for this interface (a CardService,
   in the OCF vocabulary), or

 - that this implementation has not been declared as available
   in your "opencard.properties" file where you declare available
   CardServiceFactories for your platform, see for more details:
   http://www.opencard.org/docs/pguide/PGuide.html#HDRCONFIGURINGTHEOCF
   on declaring factories, "opencard.properties" file, etc. or

 - that the declared factory has not "recognized" the card, either
   by looking at its ATR or by having a dialog with it.

I hope I haven't forgot one or two possible reasons, but you get
the idea.. at one point or another OCF is trying to match a couple
of CardService interface (functionality), and an actual card that
has to be recognized by a factory. if no implementation exist or has
been declared (in the properties file) or corresponds to the actual
card, then a "ClassNotFoundException" is thrown (which BTW is probably
not a good choice, because it confuses users).

> It seems that the CardRequest requires to have the constructor as
> follows :
> 
> CardRequest cr = new CardRequest(CardRequest.NEWCARD, null,
> FileAccessCardService.class);
> 

This is basically equivalent except that you ask OCF to check
for the "CardService implementation"<->"actual card inserted"
couple earlier in the process and to block until the right type
of card is inserted..

> But whenever I tried to do so, the program hangs in the SmartCard
> object creation.

It makes sense.

Hope it'll help.

Cheers,
Christophe.

 = "The church is near, but the road is slippery. The bar is far away, =
 =  but I will walk carefully."     --Russian Proverb                  =
--
-------------------------------------------------------------
[EMAIL PROTECTED] - Gemplus Research Lab
Phone: +33 4-42-36-57-83 | Disclaimer: I don't speak for Gemplus
Gemplus doesn't speak for me... it is better that way!
-------------------------------------------------------------


---
> Visit the OpenCard web site at http://www.opencard.org/ for more
> information on OpenCard---binaries, source code, documents.
> This list is being archived at http://www.opencard.org/archive/opencard/

! To unsubscribe from the [EMAIL PROTECTED] mailing list send an email
! to
!                           [EMAIL PROTECTED]
! containing the word
!                           unsubscribe 
! in the body.

Reply via email to