The DB_KEYEMPTY return code ?
Hi,
We are using a Berkeley DB queue in a transactional database. Our application is designed with some threads inserting records into the queue and a single thread reading records from the queue. Our concern is around the reading of the queue where we use the "Db::get" method to read records using a given recno key:
rtn = m_queueDb->get(m_dbTxn, &m_queueDbKey, &m_queueDbData, DB_READ_COMMITTED);
Note, we are intentionally not using DB_CONSUME/DB_CONSUME_WAIT as we may want to read the record again at a later date. We also have maintenance tasks to clean-up (consume) records when we are certain the records are no longer needed in the queue.
We would like someone explain the scenarios in which the "DB_KEYEMPTY" code is returned for the "Db::get" method:
The documentation appears to be a little unclear around the exact circumstances that cause the DB_KEYEMPTY code to be returned:
http://www.sleepycat.com/docs/api_cxx/db_get.html
Since we use the "Db::get" method with an incrementing recno key to our retrieve records in the queue, we assume that it is possible to get a DB_KEYEMPTY return code for records that were part of a transaction which was rolled back (i.e. these would be implicit records we should skip over). Is that a fair assumption?
Also, what else might cause a DB_KEYEMPTY code to be returned, because we seem to be getting this even when nothing is rolled back?
Thanks,
Atiq.
Hi Atiq,
Since the reader and writers are in separate threads,
there is always the chance that the reader thread may
be reading the queue while a writer is adding records
in an open transaction. Due to the nature of our
application, it is not appropriate for us to
co-ordinate our worker threads such that we suspend
the writer threads while the reader thread attempts
to read the queue. We were expecting that the
DB_READ_COMMITTED isolation level would be sufficient
to take care of this.The readers threads will only see data that had been committed by the writer threads. If your application is under the constraint of having the threads work so that neither of them can suspend and wait for the other one, maybe you should consider relaxing the isolation degree, and use DB_READ_UNCOMMITTED (this flag should be specified when opening the database "DB->open", as well as when creating the transaction "DB_ENV->txn_begin").
Of course, this means that the readers threads can get data that could disappear at a future moment, due to aborting a writing transaction.
> DB_KEYEMPTY could be thrown in case you are
trying to retrieve a record
inserted in a transaction that hasn't been yetcommitted (or a record inserted
through using an aborted transaction).
OK. The statement above outlines two different
scenarios:
(1) DB_KEYEMPTY can be thrown to the reader thread
while trying to retrieve a record inserted in an open
transaction (i.e. not yet committed). Is this true
while using the DB_READ_COMMITTED flag? If so, in
this particular case we should wait and then trying
reading the record again in the expectancy that it
will be committed soon.Yes this is the behavior when using the second isolation degree, DB_READ_COMMITTED. The reader thread should begin working after the writing transaction had been committed (estimate how long you should delay starting your readers threads).
(2) DB_KEYEMPTY can be thrown to the reader thread
while trying to retrieve a record inserted in an
aborted transaction. In this particular case I assume
it is sensible to skip this record?Records inserted in an aborted transaction will never be seen by the reader thread, since they hadn't been committed. If you were using DB_READ_UNCOMMITTED, these records would be seen by the reader threads, before being dropped.
> You may also step into this exception if the
specified key exists, but wasn't
explicitly created through your application or waslater deleted.
The statement "wasn't explicitly created through your
application" is a little unclear to me. Can you
please clarify further what this means?It's possible to insert a record that has a specific number which is greater that any other record numbers existing in the Recno (or Queue) database. Fictive records will then be created with record numbers between the newly inserted record number and the first record number smaller than this one (e.g.: your database has 48 records; the greatest record number in the database than, is 48; let's say that you insert a record with a specific record number of 52; implicit records are created, with record numbers 49 to 51).
If you try to retrieve any of these " fictive" records, DB_KEYEMPTY will be thrown, because for these records, data doesn't exist.
Thank you, best regards,
Andrei Costache
Oracle Support Services
Similar Messages
-
Why have the patch return codes changed?
When patching sparc Solaris 10, have the patch return code 2's now become code 1's? Why the change? Is there documentation somewhere about this? What other ones have changed?
Code 1 could indicate a number of different things besides patch allready installed which there is a code allready for. I do not really have the time to search through all the logs to verify this. I believe this is a problem that needs addressed.
-
What does the return code 20 stands for in the Transport request log
Hi,
When we have retreived the Transport request log by using the Unix command, we have got return code 20.
Please let us know what does the return code 20 stands for and under what scenerios I will get the return code 20.
Thanks & Regards,
Madhuri.chk the last return code in this link
http://help.sap.com/saphelp_nw2004s/helpdata/en/57/38e26c4eb711d182bf0000e829fbfe/content.htm -
Tp ended with return code 0212
Hi Experts,
when Iu2019m trying to release a transport request in Development Iu2019m getting the following return code
Test call of transport control program (tp) ended with return code 0212.
please let me know how to proceed with this return code...
SAP 4.6C
Windows 2003
Datebase 10.0.2.2
Regards
PrakashWhen i go for tp system log, i'm getting the TMS Alert Viewer:Warning
command - TMS_MGR_READ_TP_SYSLOG
service - Transport service
Function - TMS_TP_READ_LOGFILE
Message - OPEN_FAILED
Regards
Prakash -
How to evaluate 64 bit return code from realtime sequence
Hello,
I'm using the ExecuteAsync method of the StimulusProfile Class to execute a stimulus profile. The stimulus profile only contains one entry: A call to a realtime sequence.
After the profile has finished executing I retrieve the return code of the realtime sequence by opening the result XML-File.
The xml-node of intrest might light look this:
<TestResult ID="ReturnValue">
<TestData>
<Datum xsi:type="unsignedInteger" value="2147516544" xmlns="http://www.ieee.org/ATML/2006/Common" />
</TestData>
My problem is that the "value" attribute seems to be limited to 32 Bit. The upper 32 Bit of my 64 Bit return code are simply cutoff. How do I get the complete return code?
After I ran into this problem when using the .NET API, I tried to do a "NumericBoundsCheck" evaluation using the Stimulus Profile Editor. As expected, it doesn't work correctly when working with values > 2^32 - 1.
I'm using VeriStand 2012.
ThanksHello Gregor,
I don't think it's necessary to post example code. Just return a value >= 2^32 from a realtime sequence and you will see that the evaluation in the realtime stimulus editor does not work correctly. Also, in the resulting XML-File, the return value will be truncated to 32 Bit.
Meanwhile I have found that this this issue has already been discussed on this board (http://forums.ni.com/t5/NI-VeriStand/ATML-return-value-does-not-return-Uint64/m-p/2848796#M3649), but no solution was proposed so far.
I now run my realtime sequence using the ClientAPI. This allows me to evaluate the full 64Bit.
Regards
Krid -
How do you carry out an event if a job finishes with a return code 4?
Hi
A job which would complete successfully in SAP via the SM36 scheduler completes with an 'Error' in Redwood CPS because there are errors within the spool and it ends with a return code 4.
We don't want this to error in Redwood CPS, so we have set the return code mapping to Completed with entries of 0 and 4.
I.e. whether or not there is an error in the spool, the job will complete successfully in Redwood CPS.
However, we want to be alerted if there are errors in the spool.
How do we do this? The manual says "A job can raise one or more events when the job gets a specific job status or return code" - where is this set? I can see on the 'Event' tab of a job definition you can raise an Event when the job enters a specific status, but I only want to raise an event (or carry out a step / send an email etc) if I get a return code 4 (none of the job statuses are relevant) - how can I do this?
Thanks
RossHi Anton
Thanks for that. However, it's a bit more complicated...
I have a job chain with 2 steps. Any one of the two steps can have an error in the spool which by default in Redwood CPS result in the job ending in status Error. I don't want this, as the second step should still run if the first step ran okay with with errors in the spool (but shouldn't run at all if the 1st step fails completely). I.e. setting 'on Error goto step 2' or having no dependancy at all is not what we want.
Therefore, I set the return code mapping on Completed to return codes 0 and 4. I.e. if step 1 has an error in the spool (return code 4) it still ends as 'Completed' and step 2 runs.
Our problem is that we want to be alerted if there is a return code 4 (error in the spool). I tried as you suggested by entering on the 'Raise Event' tab of the job chain to raise an event on status 'Error' with a return code of 4. But no event was raised. I think this is because the return code mapping is setting the status to 'Completed' (on return code 0 or 4) BEFORE the software checks the status; i.e. the status is actually 'Completed' (rc=4) and not 'Error' (rc=4) so an event is not raised.
Ideally I want to set the Event to be raised on status 'Completed' with a return code 4 - but when I select 'Completed' the 'Error Code' box is greyed out.
I.e. can't set this - I can only set on a generic 'Completed' and I don't want to raise a message if the status is Completed but the return code is 0....
Any ideas??
Ross -
IMPORT_PROPER return code is 16
hi gurus, i am installing support pack for ecc 5 and the patch level is sapkb64012 i applyed continues 10,11, 12 and when i am applying 12 it's given dump no users can logon like syntax error , the tp return code is 16
this is error information please give me any hints The import was stopped, since an error occurred during the phase
IMPORT_PROPER, which the Support Package Manager is unable to resolve
without your input.
After you have corrected the cause of the error, continue with the
import by choosing Support Package -> Import queue from the initial
screen of the Support Package Manager.
The following details help you to analyze the problem:
- Error in phase: IMPORT_PROPER
- Reason for error: TP_STEP_FAILURE
- Return code: 0016
- Error message: OCS Package SAPKB64012, tp step "I", return code
0016
Notes on phase IMPORT_PROPER
In this phase repository objects and table entries are imported. This
phase can terminate due to the following reasons:
o TP_INTERFACE_FAILURE: The tp interface could not be called.
o TP_FAILURE: The program tp could not be executed. For more
information on this, see the SLOG or ALOG log file.
o TP_STEP_FAILURE: A tp step could not be executed. To find the cause
of the error, see the appropriate log, such as the import log.
If the cancelation message contains a tp step 6, N or S, the step in
question is independent of the transport request. You can find these
logs under the node Import steps not specific to transport request
in the log overview.
Alternatively, you can find these logs in the following files in the
log directory of your transport directory (usually:
/usr/sap/trans/log):
- tp Step 6: P<YY><MM><DD>.<SID>
- tp Step N: N<YY><MM><DD>.<SID>
- tp Step S: DS<YY><MM><DD>.<SID>
You can display these files using the report RSPUTPRT or by calling
transaction AL11.
A prerequisite of the Support Package Manager is that the Change and
Transport System (CTS) is configured correctly. For more detailed
information, read the online documentation available from Help -> SAP
Library -> mySAP Technology Components -> SAP Web Application Server ->
Change and Transport System .
A list of the most important SAP Notes for Online Correction Support
(OCS) is available in SAP Note 97620, which is updated regularly
cheersRead what you have posted:
Alternatively, you can find these logs in the following files in the
log directory of your transport directory (usually:
/usr/sap/trans/log):
- tp Step 6: P<YY><MM><DD>.<SID>
- tp Step N: N<YY><MM><DD>.<SID>
- tp Step S: DS<YY><MM><DD>.<SID>
Sort the files by date and check the latest one.
Markus -
How to invoke from UNIX script and pass back return code?
Though I am an experienced developer, I am new to java. I created a class containing a single method. I have performed my testing by running the class class.method from the command line in a UNIX (Solaris) environment. Now, I would like to have the class.method invoked from a UNIX shell script, and to return a success/failure indicator from the method, to the UNIX script. I modified the method to make it return char, rather than being defined as void. Within the class and method, I declared and initialized a char variable. I added a finally clause which contains a single return statement, returning the char return code variable. Within my UNIX script, I invoke the class/method as follows:
return_code = java myClass
This does not seem to be invoking the method however. Can someone please tell me what I am doing wrong? Or is more information needed in order for someone to help me out.
Please let me know.
Thanks.
Bradstdunbar,
Using your suggestion of System.exit(retVal); seems to allow the java method to be performed successfully (Thank You). But I am still having a problem with the value being recognized by the shell script.
In my script, I'm doing the following:
java MyClass inputparameter > return_code
export return_code
echo $return_code
But return_code does not seem to contain a value. Just before the System.exit(retVal); I added System.out.println("return code = " + retVal ); and I can see that retVal. When I run the java method outside of the UNIX shell script, I can see that retVal does indeed contain a value. So I think my problem might actually be the code in the UNIX script.
Thanks again.
Brad -
Return code = 00000057 using a gem pc twin reader with OCF
Hello, i really need help.
I'm having the famous return code = 00000057 when i try to send an APDU command, I'm using a applet proxy, so it send an select APDU inside the OCF framework, and the result is success, so i'm able to send an select Applet, but when i try to send the following apdu:
allocateCardChannel();
// Set up the command APDU and send it to the card.
getBalanceAPDU.setLength(0);
getBalanceAPDU.append(MyAPPLET_CLA); // Class
getBalanceAPDU.append(VERIFY_INS); // Instr'n
getBalanceAPDU.append((byte) 0x00); // P1
getBalanceAPDU.append((byte) 0x00); // P2
getBalanceAPDU.append((byte) 0x00); // Lc
getBalanceAPDU.append((byte) 0x05); // Le
// Send command APDU and check the response.
ResponseAPDU response;
//response = new ResponseAPDU(07);
response = sendCommandAPDU(getCardChannel(), MY_CARD_AID,
getBalanceAPDU);
i got that error. I pasted, all the debug message below. I already updated the pcsc-wrapper-2.0.jar file, but i'm still having this error, as i said i'm using an gem pc twin cardreader with gemxpresso card. My opencard.properties file:
# Card service configuration #
OpenCard.services = com.ibm.opencard.factory.MFCCardServiceFactory \
opencard.opt.util.PassThruCardServiceFactory \
br.com.neac.petrobras.medidorgas.process.NastekCardProxyFactory
#OpenCard.services = br.com.neac.petrobras.medidorgas.process.NastekCardProxyFactory
# Card terminal configuration #
#OpenCard.terminals = GemplusCardTerminalFactory
OpenCard.terminals = com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminalFactory|Autodetect|*|SHARED
#OpenCard.terminals = com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminalFactory
#OpenCard.terminals=com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminalFactory|myGEMPlus|GEM430PC|SHARED
# Trace configuration #
OpenCard.trace = opencard:9
----- the debug----
[DEBUG ] opencard.core.service.SmartCard.getRegistryEntry
--- message tag OpenCard.terminals = com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminalFactory|Autodetect|*|SHARED
--- thread Thread[AWT-EventQueue-0,6,main]
--- source class opencard.core.service.SmartCard
[DEBUG ] opencard.core.terminal.CardTerminal.<init>
--- message (Gemplus USB Smart Card Reader 0, PCSC10, )
--- thread Thread[AWT-EventQueue-0,6,main]
--- source class opencard.core.terminal.CardTerminal
[DEBUG ] opencard.core.event.EventGenerator.updateTerminals
--- message new pollable Terminal = com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminal@1e1df6e
+ name Gemplus USB Smart Card Reader 0
+ type PCSC10
+ addr
--- thread Thread[AWT-EventQueue-0,6,main]
--- source class opencard.core.event.EventGenerator
[DEBUG ] com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminal.cardInserted
--- message slotID 0, )
--- thread Thread[AWT-EventQueue-0,6,main]
--- source com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminal@1e1df6e
+ name Gemplus USB Smart Card Reader 0
+ type PCSC10
+ addr
[DEBUG ] opencard.core.event.EventGenerator.updateCards
--- message card inserted slotID = 0
--- thread Thread[AWT-EventQueue-0,6,main]
--- source class opencard.core.event.EventGenerator
[DEBUG ] opencard.core.service.SmartCard.getRegistryEntry
--- message tag OpenCard.services = com.ibm.opencard.factory.MFCCardServiceFactory opencard.opt.util.PassThruCardServiceFactory br.com.neac.petrobras.medidorgas.process.NastekCardProxyFactory
--- thread Thread[AWT-EventQueue-0,6,main]
--- source class opencard.core.service.SmartCard
[DEBUG ] opencard.core.service.CardServiceFactory.<init>
--- message instantiating
--- thread Thread[AWT-EventQueue-0,6,main]
--- source class opencard.core.service.CardServiceFactory
[DEBUG ] opencard.core.service.CardServiceRegistry.add
--- message com.ibm.opencard.factory.MFCCardServiceFactory@103368e
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.CardServiceRegistry@1f2ae62++ registered factory [email protected]c68b6f
[DEBUG ] opencard.core.service.CardServiceFactory.<init>
--- message instantiating
--- thread Thread[AWT-EventQueue-0,6,main]
--- source class opencard.core.service.CardServiceFactory
[DEBUG ] opencard.opt.service.OCF11CardServiceFactory.<init>
--- message instantiating
--- thread Thread[AWT-EventQueue-0,6,main]
--- source class opencard.opt.service.OCF11CardServiceFactory
[DEBUG ] opencard.core.service.CardServiceRegistry.add
--- message opencard.opt.util.PassThruCardServiceFactory@94cc7
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.CardServiceRegistry@1f2ae62++ registered factory [email protected]c68b6f
++ registered factory com.ibm.opencard.factory.MFCCardServiceFactory@103368e
[DEBUG ] opencard.core.service.CardServiceFactory.<init>
--- message instantiating
--- thread Thread[AWT-EventQueue-0,6,main]
--- source class opencard.core.service.CardServiceFactory
[DEBUG ] opencard.core.service.CardServiceRegistry.add
--- message [email protected]fa0f0
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.CardServiceRegistry@1f2ae62++ registered factory [email protected]c68b6f
++ registered factory com.ibm.opencard.factory.MFCCardServiceFactory@103368e
++ registered factory opencard.opt.util.PassThruCardServiceFactory@94cc7
[DEBUG ] opencard.core.service.SmartCard.<start>
--- message finished
--- thread Thread[AWT-EventQueue-0,6,main]
--- source class opencard.core.service.SmartCard
[DEBUG ] opencard.core.service.CardServiceRegistry.getSmartCard
--- message CTEvent opencard.core.event.CardTerminalEvent[source=com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminal@1e1df6e
+ name Gemplus USB Smart Card Reader 0
+ type PCSC10
+ addr ]
---source com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminal@1e1df6e
+ name Gemplus USB Smart Card Reader 0
+ type PCSC10
+ addr
---id 1
card inserted in slot 0
terminal com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminal@1e1df6e
+ name Gemplus USB Smart Card Reader 0
+ type PCSC10
+ addr
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.CardServiceRegistry@1f2ae62++ registered factory [email protected]c68b6f
++ registered factory com.ibm.opencard.factory.MFCCardServiceFactory@103368e
++ registered factory opencard.opt.util.PassThruCardServiceFactory@94cc7
++ registered factory [email protected]fa0f0
[DEBUG ] com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminal.openSlotChannel
--- message for slot #0
--- thread Thread[AWT-EventQueue-0,6,main]
--- source com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminal@1e1df6e
+ name Gemplus USB Smart Card Reader 0
+ type PCSC10
+ addr
[DEBUG ] com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminal.openSlotChannel
--- message new SlotChannel is opencard.core.terminal.SlotChannel@182815a
+ state open
--- thread Thread[AWT-EventQueue-0,6,main]
--- source com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminal@1e1df6e
+ name Gemplus USB Smart Card Reader 0
+ type PCSC10
+ addr
[DEBUG ] opencard.core.service.CardServiceRegistry.allocateCardServiceScheduler
--- message instantiating CardServiceScheduler
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.CardServiceRegistry@1f2ae62++ registered factory [email protected]c68b6f
++ registered factory com.ibm.opencard.factory.MFCCardServiceFactory@103368e
++ registered factory opencard.opt.util.PassThruCardServiceFactory@94cc7
++ registered factory [email protected]fa0f0
[DEBUG ] opencard.core.service.CardServiceScheduler.<init>
--- message slotChannel opencard.core.terminal.SlotChannel@182815a
+ state open
--- thread Thread[AWT-EventQueue-0,6,main]
--- source class opencard.core.service.CardServiceScheduler
[DEBUG ] opencard.core.service.CardChannel.<init>
--- message (opencard.core.terminal.SlotChannel@182815a
+ state open)
--- thread Thread[AWT-EventQueue-0,6,main]
--- source class opencard.core.service.CardChannel
[DEBUG ] opencard.core.service.CardServiceRegistry.getSmartCard
--- message using CardServiceScheduler opencard.core.service.CardServiceScheduler@4ab8b9, is alive
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.CardServiceRegistry@1f2ae62++ registered factory [email protected]c68b6f
++ registered factory com.ibm.opencard.factory.MFCCardServiceFactory@103368e
++ registered factory opencard.opt.util.PassThruCardServiceFactory@94cc7
++ registered factory [email protected]fa0f0
[DEBUG ] opencard.core.service.CardServiceScheduler.createSmartCard
--- message creating SmartCard
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.CardServiceScheduler@4ab8b9, is alive
[DEBUG ] opencard.core.service.SmartCard.<init>
--- message scheduler opencard.core.service.CardServiceScheduler@4ab8b9, is alive, cid opencard.core.terminal.CardID@1a5ba75 ATR: 3B 7D 94 00 00 80 31 80 65 B0 83 01 02 90 83 00
90 00
--- thread Thread[AWT-EventQueue-0,6,main]
--- source class opencard.core.service.SmartCard
[DEBUG ] opencard.core.service.SmartCard.getCardService
--- message (class br.com.neac.petrobras.medidorgas.process.NastekCardProxy)
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.SmartCard@fb7efa
[DEBUG ] opencard.core.service.CardServiceRegistry.getCardServiceInstance
--- message for class br.com.neac.petrobras.medidorgas.process.NastekCardProxy from opencard.core.service.SmartCard@fb7efa
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.CardServiceRegistry@1f2ae62++ registered factory [email protected]c68b6f
++ registered factory com.ibm.opencard.factory.MFCCardServiceFactory@103368e
++ registered factory opencard.opt.util.PassThruCardServiceFactory@94cc7
++ registered factory [email protected]fa0f0
[DEBUG ] opencard.core.service.CardServiceRegistry.getCardServiceInstance
--- message checking [email protected]c68b6f
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.CardServiceRegistry@1f2ae62++ registered factory [email protected]c68b6f
++ registered factory com.ibm.opencard.factory.MFCCardServiceFactory@103368e
++ registered factory opencard.opt.util.PassThruCardServiceFactory@94cc7
++ registered factory [email protected]fa0f0
[DEBUG ] opencard.core.service.CardService.<init>
--- message default constructor of br.com.neac.petrobras.medidorgas.process.NastekCardProxy@8f57a
--- thread Thread[AWT-EventQueue-0,6,main]
--- source class opencard.core.service.CardService
[DEBUG ] opencard.opt.applet.AppletProxy.<init>
--- message (A0 00 00 00 62 03 01 0C 02,opencard.core.service.CardServiceScheduler@4ab8b9, is alive,opencard.core.service.SmartCard@fb7efa,true)
--- thread Thread[AWT-EventQueue-0,6,main]
--- source class opencard.opt.applet.AppletProxy
[DEBUG ] br.com.neac.petrobras.medidorgas.process.NastekCardProxy.initialize
--- message (opencard.core.service.CardServiceScheduler@4ab8b9, is alive,opencard.core.service.SmartCard@fb7efa)
--- thread Thread[AWT-EventQueue-0,6,main]
--- source br.com.neac.petrobras.medidorgas.process.NastekCardProxy@8f57a
[DEBUG ] opencard.opt.applet.BasicAppletCardService.<init>
--- message (opencard.core.service.CardServiceScheduler@4ab8b9, is alive,opencard.core.service.SmartCard@fb7efa,true)
--- thread Thread[AWT-EventQueue-0,6,main]
--- source class opencard.opt.applet.BasicAppletCardService
[DEBUG ] br.com.neac.petrobras.medidorgas.process.NastekCardProxy.allocateCardChannel
--- message allocating
--- thread Thread[AWT-EventQueue-0,6,main]
--- source br.com.neac.petrobras.medidorgas.process.NastekCardProxy@8f57a
[DEBUG ] opencard.core.service.CardServiceScheduler.allocateCardChannel
--- message applicant br.com.neac.petrobras.medidorgas.process.NastekCardProxy@8f57a
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.CardServiceScheduler@4ab8b9, is alive
[DEBUG ] opencard.core.service.CardChannel.open
--- message opening CardChannel
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.CardChannel@9bb457, not open, not jammed
BasicAppletCardService - allocated CardChannel()
[DEBUG ] br.com.neac.petrobras.medidorgas.process.NastekCardProxy.releaseCardChannel
--- message releasing
--- thread Thread[AWT-EventQueue-0,6,main]
--- source br.com.neac.petrobras.medidorgas.process.NastekCardProxy@8f57a
[DEBUG ] opencard.core.service.CardServiceScheduler.releaseCardChannel
--- message releasing opencard.core.service.CardChannel@9bb457, is open, not jammed
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.CardServiceScheduler@4ab8b9, is alive
++ channel is allocated
[DEBUG ] opencard.core.service.CardChannel.close
--- message CardChannel closed
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.CardChannel@9bb457, not open, not jammed
[DEBUG ] br.com.neac.petrobras.medidorgas.process.NastekCardProxy.allocateCardChannel
--- message allocating
--- thread Thread[AWT-EventQueue-0,6,main]
--- source br.com.neac.petrobras.medidorgas.process.NastekCardProxy@8f57a
[DEBUG ] opencard.core.service.CardServiceScheduler.allocateCardChannel
--- message applicant br.com.neac.petrobras.medidorgas.process.NastekCardProxy@8f57a
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.CardServiceScheduler@4ab8b9, is alive
[DEBUG ] opencard.core.service.CardChannel.open
--- message opening CardChannel
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.CardChannel@9bb457, not open, not jammed
[DEBUG ] br.com.neac.petrobras.medidorgas.process.NastekCardProxy.releaseCardChannel
--- message releasing
--- thread Thread[AWT-EventQueue-0,6,main]
--- source br.com.neac.petrobras.medidorgas.process.NastekCardProxy@8f57a
[DEBUG ] opencard.core.service.CardServiceScheduler.releaseCardChannel
--- message releasing opencard.core.service.CardChannel@9bb457, is open, not jammed
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.CardServiceScheduler@4ab8b9, is alive
++ channel is allocated
[DEBUG ] opencard.core.service.CardChannel.close
--- message CardChannel closed
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.CardChannel@9bb457, not open, not jammed
[DEBUG ] opencard.core.service.CardServiceRegistry.getCardServiceInstance
--- message factory [email protected]c68b6f produced br.com.neac.petrobras.medidorgas.process.NastekCardProxy@8f57a
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.CardServiceRegistry@1f2ae62++ registered factory [email protected]c68b6f
++ registered factory com.ibm.opencard.factory.MFCCardServiceFactory@103368e
++ registered factory opencard.opt.util.PassThruCardServiceFactory@94cc7
++ registered factory [email protected]fa0f0
[DEBUG ] br.com.neac.petrobras.medidorgas.process.NastekCardProxy.allocateCardChannel
--- message allocating
--- thread Thread[AWT-EventQueue-0,6,main]
--- source br.com.neac.petrobras.medidorgas.process.NastekCardProxy@8f57a
[DEBUG ] opencard.core.service.CardServiceScheduler.allocateCardChannel
--- message applicant br.com.neac.petrobras.medidorgas.process.NastekCardProxy@8f57a
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.CardServiceScheduler@4ab8b9, is alive
[DEBUG ] opencard.core.service.CardChannel.open
--- message opening CardChannel
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.CardChannel@9bb457, not open, not jammed
[DEBUG ] opencard.opt.applet.BasicAppletCardService.sendCommandAPDU(channel,...)
--- message sending opencard.core.terminal.CommandAPDU@1d92803
0000: 00 20 00 00 00 05 . ....
to <A0 00 00 00 62 03 01 0C 02>
--- thread Thread[AWT-EventQueue-0,6,main]
--- source class opencard.opt.applet.BasicAppletCardService
[DEBUG ] opencard.opt.applet.BasicAppletCardService.selectApplet
--- message selecting A0 00 00 00 62 03 01 0C 02
--- thread Thread[AWT-EventQueue-0,6,main]
--- source class opencard.opt.applet.BasicAppletCardService
[DEBUG ] opencard.opt.applet.ISOAppletSelector.selectApplet
--- message selecting A0 00 00 00 62 03 01 0C 02
--- thread Thread[AWT-EventQueue-0,6,main]
--- source class opencard.opt.applet.ISOAppletSelector
[DEBUG ] opencard.core.service.CardChannel.sendCommandAPDU
--- message opencard.core.terminal.CommandAPDU@1d206f0
0000: 00 A4 04 00 09 A0 00 00 00 62 03 01 0C 02 00 .........b.....
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.CardChannel@9bb457, is open, not jammed
[DEBUG ] opencard.core.service.CardChannel.response:
--- message opencard.core.terminal.ResponseAPDU@1f23f8b
0000: 90 00 ..
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.CardChannel@9bb457, is open, not jammed
[DEBUG ] opencard.opt.applet.ISOAppletSelector.selectApplet
--- message Selection response sw = 0x9000
--- thread Thread[AWT-EventQueue-0,6,main]
--- source class opencard.opt.applet.ISOAppletSelector
[DEBUG ] opencard.core.service.CardChannel.sendCommandAPDU
--- message opencard.core.terminal.CommandAPDU@1d92803
0000: 00 20 00 00 00 05 . ....
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.CardChannel@9bb457, is open, not jammed
[DEBUG ] br.com.neac.petrobras.medidorgas.process.NastekCardProxy.releaseCardChannel
--- message releasing
--- thread Thread[AWT-EventQueue-0,6,main]
--- source br.com.neac.petrobras.medidorgas.process.NastekCardProxy@8f57a
[DEBUG ] opencard.core.service.CardServiceScheduler.releaseCardChannel
--- message releasing opencard.core.service.CardChannel@9bb457, is open, not jammed
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.CardServiceScheduler@4ab8b9, is alive
++ channel is allocated
[DEBUG ] opencard.core.service.CardChannel.close
--- message CardChannel closed
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.CardChannel@9bb457, not open, not jammed
opencard.core.terminal.CardTerminalException: Pcsc10CardTerminal: PCSC Exception in method SCardTransmit: error occurred with SCardTransmit
return code = 00000057
at com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminal.translatePcscException(Pcsc10CardTerminal.java:502)Hello, i really need help.
I'm having the famous return code = 00000057 when i try to send an APDU command, I'm using a applet proxy, so it send an select APDU inside the OCF framework, and the result is success, so i'm able to send an select Applet, but when i try to send the following apdu:
allocateCardChannel();
// Set up the command APDU and send it to the card.
getBalanceAPDU.setLength(0);
getBalanceAPDU.append(MyAPPLET_CLA); // Class
getBalanceAPDU.append(VERIFY_INS); // Instr'n
getBalanceAPDU.append((byte) 0x00); // P1
getBalanceAPDU.append((byte) 0x00); // P2
getBalanceAPDU.append((byte) 0x00); // Lc
getBalanceAPDU.append((byte) 0x05); // Le
// Send command APDU and check the response.
ResponseAPDU response;
//response = new ResponseAPDU(07);
response = sendCommandAPDU(getCardChannel(), MY_CARD_AID,
getBalanceAPDU);
i got that error. I pasted, all the debug message below. I already updated the pcsc-wrapper-2.0.jar file, but i'm still having this error, as i said i'm using an gem pc twin cardreader with gemxpresso card. My opencard.properties file:
# Card service configuration #
OpenCard.services = com.ibm.opencard.factory.MFCCardServiceFactory \
opencard.opt.util.PassThruCardServiceFactory \
br.com.neac.petrobras.medidorgas.process.NastekCardProxyFactory
#OpenCard.services = br.com.neac.petrobras.medidorgas.process.NastekCardProxyFactory
# Card terminal configuration #
#OpenCard.terminals = GemplusCardTerminalFactory
OpenCard.terminals = com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminalFactory|Autodetect|*|SHARED
#OpenCard.terminals = com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminalFactory
#OpenCard.terminals=com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminalFactory|myGEMPlus|GEM430PC|SHARED
# Trace configuration #
OpenCard.trace = opencard:9
----- the debug----
[DEBUG ] opencard.core.service.SmartCard.getRegistryEntry
--- message tag OpenCard.terminals = com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminalFactory|Autodetect|*|SHARED
--- thread Thread[AWT-EventQueue-0,6,main]
--- source class opencard.core.service.SmartCard
[DEBUG ] opencard.core.terminal.CardTerminal.<init>
--- message (Gemplus USB Smart Card Reader 0, PCSC10, )
--- thread Thread[AWT-EventQueue-0,6,main]
--- source class opencard.core.terminal.CardTerminal
[DEBUG ] opencard.core.event.EventGenerator.updateTerminals
--- message new pollable Terminal = com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminal@1e1df6e
+ name Gemplus USB Smart Card Reader 0
+ type PCSC10
+ addr
--- thread Thread[AWT-EventQueue-0,6,main]
--- source class opencard.core.event.EventGenerator
[DEBUG ] com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminal.cardInserted
--- message slotID 0, )
--- thread Thread[AWT-EventQueue-0,6,main]
--- source com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminal@1e1df6e
+ name Gemplus USB Smart Card Reader 0
+ type PCSC10
+ addr
[DEBUG ] opencard.core.event.EventGenerator.updateCards
--- message card inserted slotID = 0
--- thread Thread[AWT-EventQueue-0,6,main]
--- source class opencard.core.event.EventGenerator
[DEBUG ] opencard.core.service.SmartCard.getRegistryEntry
--- message tag OpenCard.services = com.ibm.opencard.factory.MFCCardServiceFactory opencard.opt.util.PassThruCardServiceFactory br.com.neac.petrobras.medidorgas.process.NastekCardProxyFactory
--- thread Thread[AWT-EventQueue-0,6,main]
--- source class opencard.core.service.SmartCard
[DEBUG ] opencard.core.service.CardServiceFactory.<init>
--- message instantiating
--- thread Thread[AWT-EventQueue-0,6,main]
--- source class opencard.core.service.CardServiceFactory
[DEBUG ] opencard.core.service.CardServiceRegistry.add
--- message com.ibm.opencard.factory.MFCCardServiceFactory@103368e
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.CardServiceRegistry@1f2ae62++ registered factory [email protected]c68b6f
[DEBUG ] opencard.core.service.CardServiceFactory.<init>
--- message instantiating
--- thread Thread[AWT-EventQueue-0,6,main]
--- source class opencard.core.service.CardServiceFactory
[DEBUG ] opencard.opt.service.OCF11CardServiceFactory.<init>
--- message instantiating
--- thread Thread[AWT-EventQueue-0,6,main]
--- source class opencard.opt.service.OCF11CardServiceFactory
[DEBUG ] opencard.core.service.CardServiceRegistry.add
--- message opencard.opt.util.PassThruCardServiceFactory@94cc7
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.CardServiceRegistry@1f2ae62++ registered factory [email protected]c68b6f
++ registered factory com.ibm.opencard.factory.MFCCardServiceFactory@103368e
[DEBUG ] opencard.core.service.CardServiceFactory.<init>
--- message instantiating
--- thread Thread[AWT-EventQueue-0,6,main]
--- source class opencard.core.service.CardServiceFactory
[DEBUG ] opencard.core.service.CardServiceRegistry.add
--- message [email protected]fa0f0
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.CardServiceRegistry@1f2ae62++ registered factory [email protected]c68b6f
++ registered factory com.ibm.opencard.factory.MFCCardServiceFactory@103368e
++ registered factory opencard.opt.util.PassThruCardServiceFactory@94cc7
[DEBUG ] opencard.core.service.SmartCard.<start>
--- message finished
--- thread Thread[AWT-EventQueue-0,6,main]
--- source class opencard.core.service.SmartCard
[DEBUG ] opencard.core.service.CardServiceRegistry.getSmartCard
--- message CTEvent opencard.core.event.CardTerminalEvent[source=com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminal@1e1df6e
+ name Gemplus USB Smart Card Reader 0
+ type PCSC10
+ addr ]
---source com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminal@1e1df6e
+ name Gemplus USB Smart Card Reader 0
+ type PCSC10
+ addr
---id 1
card inserted in slot 0
terminal com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminal@1e1df6e
+ name Gemplus USB Smart Card Reader 0
+ type PCSC10
+ addr
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.CardServiceRegistry@1f2ae62++ registered factory [email protected]c68b6f
++ registered factory com.ibm.opencard.factory.MFCCardServiceFactory@103368e
++ registered factory opencard.opt.util.PassThruCardServiceFactory@94cc7
++ registered factory [email protected]fa0f0
[DEBUG ] com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminal.openSlotChannel
--- message for slot #0
--- thread Thread[AWT-EventQueue-0,6,main]
--- source com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminal@1e1df6e
+ name Gemplus USB Smart Card Reader 0
+ type PCSC10
+ addr
[DEBUG ] com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminal.openSlotChannel
--- message new SlotChannel is opencard.core.terminal.SlotChannel@182815a
+ state open
--- thread Thread[AWT-EventQueue-0,6,main]
--- source com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminal@1e1df6e
+ name Gemplus USB Smart Card Reader 0
+ type PCSC10
+ addr
[DEBUG ] opencard.core.service.CardServiceRegistry.allocateCardServiceScheduler
--- message instantiating CardServiceScheduler
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.CardServiceRegistry@1f2ae62++ registered factory [email protected]c68b6f
++ registered factory com.ibm.opencard.factory.MFCCardServiceFactory@103368e
++ registered factory opencard.opt.util.PassThruCardServiceFactory@94cc7
++ registered factory [email protected]fa0f0
[DEBUG ] opencard.core.service.CardServiceScheduler.<init>
--- message slotChannel opencard.core.terminal.SlotChannel@182815a
+ state open
--- thread Thread[AWT-EventQueue-0,6,main]
--- source class opencard.core.service.CardServiceScheduler
[DEBUG ] opencard.core.service.CardChannel.<init>
--- message (opencard.core.terminal.SlotChannel@182815a
+ state open)
--- thread Thread[AWT-EventQueue-0,6,main]
--- source class opencard.core.service.CardChannel
[DEBUG ] opencard.core.service.CardServiceRegistry.getSmartCard
--- message using CardServiceScheduler opencard.core.service.CardServiceScheduler@4ab8b9, is alive
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.CardServiceRegistry@1f2ae62++ registered factory [email protected]c68b6f
++ registered factory com.ibm.opencard.factory.MFCCardServiceFactory@103368e
++ registered factory opencard.opt.util.PassThruCardServiceFactory@94cc7
++ registered factory [email protected]fa0f0
[DEBUG ] opencard.core.service.CardServiceScheduler.createSmartCard
--- message creating SmartCard
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.CardServiceScheduler@4ab8b9, is alive
[DEBUG ] opencard.core.service.SmartCard.<init>
--- message scheduler opencard.core.service.CardServiceScheduler@4ab8b9, is alive, cid opencard.core.terminal.CardID@1a5ba75 ATR: 3B 7D 94 00 00 80 31 80 65 B0 83 01 02 90 83 00
90 00
--- thread Thread[AWT-EventQueue-0,6,main]
--- source class opencard.core.service.SmartCard
[DEBUG ] opencard.core.service.SmartCard.getCardService
--- message (class br.com.neac.petrobras.medidorgas.process.NastekCardProxy)
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.SmartCard@fb7efa
[DEBUG ] opencard.core.service.CardServiceRegistry.getCardServiceInstance
--- message for class br.com.neac.petrobras.medidorgas.process.NastekCardProxy from opencard.core.service.SmartCard@fb7efa
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.CardServiceRegistry@1f2ae62++ registered factory [email protected]c68b6f
++ registered factory com.ibm.opencard.factory.MFCCardServiceFactory@103368e
++ registered factory opencard.opt.util.PassThruCardServiceFactory@94cc7
++ registered factory [email protected]fa0f0
[DEBUG ] opencard.core.service.CardServiceRegistry.getCardServiceInstance
--- message checking [email protected]c68b6f
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.CardServiceRegistry@1f2ae62++ registered factory [email protected]c68b6f
++ registered factory com.ibm.opencard.factory.MFCCardServiceFactory@103368e
++ registered factory opencard.opt.util.PassThruCardServiceFactory@94cc7
++ registered factory [email protected]fa0f0
[DEBUG ] opencard.core.service.CardService.<init>
--- message default constructor of br.com.neac.petrobras.medidorgas.process.NastekCardProxy@8f57a
--- thread Thread[AWT-EventQueue-0,6,main]
--- source class opencard.core.service.CardService
[DEBUG ] opencard.opt.applet.AppletProxy.<init>
--- message (A0 00 00 00 62 03 01 0C 02,opencard.core.service.CardServiceScheduler@4ab8b9, is alive,opencard.core.service.SmartCard@fb7efa,true)
--- thread Thread[AWT-EventQueue-0,6,main]
--- source class opencard.opt.applet.AppletProxy
[DEBUG ] br.com.neac.petrobras.medidorgas.process.NastekCardProxy.initialize
--- message (opencard.core.service.CardServiceScheduler@4ab8b9, is alive,opencard.core.service.SmartCard@fb7efa)
--- thread Thread[AWT-EventQueue-0,6,main]
--- source br.com.neac.petrobras.medidorgas.process.NastekCardProxy@8f57a
[DEBUG ] opencard.opt.applet.BasicAppletCardService.<init>
--- message (opencard.core.service.CardServiceScheduler@4ab8b9, is alive,opencard.core.service.SmartCard@fb7efa,true)
--- thread Thread[AWT-EventQueue-0,6,main]
--- source class opencard.opt.applet.BasicAppletCardService
[DEBUG ] br.com.neac.petrobras.medidorgas.process.NastekCardProxy.allocateCardChannel
--- message allocating
--- thread Thread[AWT-EventQueue-0,6,main]
--- source br.com.neac.petrobras.medidorgas.process.NastekCardProxy@8f57a
[DEBUG ] opencard.core.service.CardServiceScheduler.allocateCardChannel
--- message applicant br.com.neac.petrobras.medidorgas.process.NastekCardProxy@8f57a
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.CardServiceScheduler@4ab8b9, is alive
[DEBUG ] opencard.core.service.CardChannel.open
--- message opening CardChannel
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.CardChannel@9bb457, not open, not jammed
BasicAppletCardService - allocated CardChannel()
[DEBUG ] br.com.neac.petrobras.medidorgas.process.NastekCardProxy.releaseCardChannel
--- message releasing
--- thread Thread[AWT-EventQueue-0,6,main]
--- source br.com.neac.petrobras.medidorgas.process.NastekCardProxy@8f57a
[DEBUG ] opencard.core.service.CardServiceScheduler.releaseCardChannel
--- message releasing opencard.core.service.CardChannel@9bb457, is open, not jammed
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.CardServiceScheduler@4ab8b9, is alive
++ channel is allocated
[DEBUG ] opencard.core.service.CardChannel.close
--- message CardChannel closed
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.CardChannel@9bb457, not open, not jammed
[DEBUG ] br.com.neac.petrobras.medidorgas.process.NastekCardProxy.allocateCardChannel
--- message allocating
--- thread Thread[AWT-EventQueue-0,6,main]
--- source br.com.neac.petrobras.medidorgas.process.NastekCardProxy@8f57a
[DEBUG ] opencard.core.service.CardServiceScheduler.allocateCardChannel
--- message applicant br.com.neac.petrobras.medidorgas.process.NastekCardProxy@8f57a
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.CardServiceScheduler@4ab8b9, is alive
[DEBUG ] opencard.core.service.CardChannel.open
--- message opening CardChannel
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.CardChannel@9bb457, not open, not jammed
[DEBUG ] br.com.neac.petrobras.medidorgas.process.NastekCardProxy.releaseCardChannel
--- message releasing
--- thread Thread[AWT-EventQueue-0,6,main]
--- source br.com.neac.petrobras.medidorgas.process.NastekCardProxy@8f57a
[DEBUG ] opencard.core.service.CardServiceScheduler.releaseCardChannel
--- message releasing opencard.core.service.CardChannel@9bb457, is open, not jammed
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.CardServiceScheduler@4ab8b9, is alive
++ channel is allocated
[DEBUG ] opencard.core.service.CardChannel.close
--- message CardChannel closed
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.CardChannel@9bb457, not open, not jammed
[DEBUG ] opencard.core.service.CardServiceRegistry.getCardServiceInstance
--- message factory [email protected]c68b6f produced br.com.neac.petrobras.medidorgas.process.NastekCardProxy@8f57a
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.CardServiceRegistry@1f2ae62++ registered factory [email protected]c68b6f
++ registered factory com.ibm.opencard.factory.MFCCardServiceFactory@103368e
++ registered factory opencard.opt.util.PassThruCardServiceFactory@94cc7
++ registered factory [email protected]fa0f0
[DEBUG ] br.com.neac.petrobras.medidorgas.process.NastekCardProxy.allocateCardChannel
--- message allocating
--- thread Thread[AWT-EventQueue-0,6,main]
--- source br.com.neac.petrobras.medidorgas.process.NastekCardProxy@8f57a
[DEBUG ] opencard.core.service.CardServiceScheduler.allocateCardChannel
--- message applicant br.com.neac.petrobras.medidorgas.process.NastekCardProxy@8f57a
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.CardServiceScheduler@4ab8b9, is alive
[DEBUG ] opencard.core.service.CardChannel.open
--- message opening CardChannel
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.CardChannel@9bb457, not open, not jammed
[DEBUG ] opencard.opt.applet.BasicAppletCardService.sendCommandAPDU(channel,...)
--- message sending opencard.core.terminal.CommandAPDU@1d92803
0000: 00 20 00 00 00 05 . ....
to <A0 00 00 00 62 03 01 0C 02>
--- thread Thread[AWT-EventQueue-0,6,main]
--- source class opencard.opt.applet.BasicAppletCardService
[DEBUG ] opencard.opt.applet.BasicAppletCardService.selectApplet
--- message selecting A0 00 00 00 62 03 01 0C 02
--- thread Thread[AWT-EventQueue-0,6,main]
--- source class opencard.opt.applet.BasicAppletCardService
[DEBUG ] opencard.opt.applet.ISOAppletSelector.selectApplet
--- message selecting A0 00 00 00 62 03 01 0C 02
--- thread Thread[AWT-EventQueue-0,6,main]
--- source class opencard.opt.applet.ISOAppletSelector
[DEBUG ] opencard.core.service.CardChannel.sendCommandAPDU
--- message opencard.core.terminal.CommandAPDU@1d206f0
0000: 00 A4 04 00 09 A0 00 00 00 62 03 01 0C 02 00 .........b.....
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.CardChannel@9bb457, is open, not jammed
[DEBUG ] opencard.core.service.CardChannel.response:
--- message opencard.core.terminal.ResponseAPDU@1f23f8b
0000: 90 00 ..
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.CardChannel@9bb457, is open, not jammed
[DEBUG ] opencard.opt.applet.ISOAppletSelector.selectApplet
--- message Selection response sw = 0x9000
--- thread Thread[AWT-EventQueue-0,6,main]
--- source class opencard.opt.applet.ISOAppletSelector
[DEBUG ] opencard.core.service.CardChannel.sendCommandAPDU
--- message opencard.core.terminal.CommandAPDU@1d92803
0000: 00 20 00 00 00 05 . ....
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.CardChannel@9bb457, is open, not jammed
[DEBUG ] br.com.neac.petrobras.medidorgas.process.NastekCardProxy.releaseCardChannel
--- message releasing
--- thread Thread[AWT-EventQueue-0,6,main]
--- source br.com.neac.petrobras.medidorgas.process.NastekCardProxy@8f57a
[DEBUG ] opencard.core.service.CardServiceScheduler.releaseCardChannel
--- message releasing opencard.core.service.CardChannel@9bb457, is open, not jammed
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.CardServiceScheduler@4ab8b9, is alive
++ channel is allocated
[DEBUG ] opencard.core.service.CardChannel.close
--- message CardChannel closed
--- thread Thread[AWT-EventQueue-0,6,main]
--- source opencard.core.service.CardChannel@9bb457, not open, not jammed
opencard.core.terminal.CardTerminalException: Pcsc10CardTerminal: PCSC Exception in method SCardTransmit: error occurred with SCardTransmit
return code = 00000057
at com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminal.translatePcscException(Pcsc10CardTerminal.java:502) -
Exception Deployer fails with return code 1603 during Acrobat XI installation
We are deploying Acrobat XI to Windows 7 clients and a percentage of them fail to execute Exception Deployer successfully and are returning the 1603 return code. I have pasted below relevant portions of the ExceptionDeployer.log file from two different computers with the same return code. Sometimes running the installation again works but sometimes it fails again with the same error code. I haven't been able to find exactly what it is that is failing or how to resolve this.
4/4/2015 00:04:57 [INFO] ExceptionDeployer - ##################################################
4/4/2015 00:04:57 [INFO] ExceptionDeployer - Launching the ExceptionDeployer...
4/4/2015 00:04:57 [WARN] ExceptionDeployer - Failed to initialize the TokenResolver properly.
4/4/2015 00:04:57 [INFO] ExceptionDeployer - **************************************************
4/4/2015 00:04:57 [INFO] ExceptionDeployer - AcrobatProfessional11.0-mul
4/4/2015 00:05:59 [INFO] ExceptionDeployer - The process return code is (1603).
4/4/2015 00:05:59 [ERROR] ExceptionDeployer - Exception deployment failed for payload (AcrobatProfessional11.0-mul)
4/4/2015 00:05:59 [INFO] ExceptionDeployer - **************************************************
4/6/2015 16:05:56 [INFO] ExceptionDeployer - ##################################################
4/6/2015 16:05:56 [INFO] ExceptionDeployer - Launching the ExceptionDeployer...
4/6/2015 16:05:56 [INFO] ExceptionDeployer - **************************************************
4/6/2015 16:05:56 [INFO] ExceptionDeployer - AcrobatProfessional11.0-mul
4/6/2015 16:07:14 [INFO] ExceptionDeployer - The process return code is (1603).
4/6/2015 16:07:14 [ERROR] ExceptionDeployer - Exception deployment failed for payload (AcrobatProfessional11.0-mul)
4/6/2015 16:07:14 [INFO] ExceptionDeployer - **************************************************Hi ohtesw,
Please check out this document: Error 1603: A fatal error occurred during installation.
If the solutions in that document don't do the trick, please let us know.
Best,
Sara -
SCardConnect error . return code: 80100004
I am developing am application for GxpPro R3 using PC/SC on VB .NET.
Though SCardEstablishContext, SCardListReaderGroups and SCardListReaders works fine, i get a return code of 80100004 for SCardConnect.
Dim dwShareMode As Long = 1
Dim dwPrefProtocol As Long = 3
ReturnValue = SCardConnect(Me.nContext, cReaders(0), dwShareMode, dwPrefProtocol, phCard, ActiveProtocol)
I have tried with all the combinations of dwShareMode and dwPrefProtocol with the same return code.
snippet of my code below
Me.nContext = 0
ReturnValue = SCardEstablishContext(0, 0, 0, Me.nContext)
Dim delimiter(1) As Char
delimiter(0) = Convert.ToChar(0)
Dim cGroupList As String = "" + Convert.ToChar(0)
Dim nStringSize As Integer = -1
ReturnValue = SCardListReaderGroups(Me.nContext, cGroupList, nStringSize)
Dim cGroups() As String = cGroupList.Split(delimiter)
Dim cReaderList = "" + Convert.ToChar(0)
Dim nReaderCount As Integer = -1
ReturnValue = SCardListReaders(Me.nContext, cGroups(0), cReaderList, nReaderCount)
Dim cReaders() As String = cReaderList.Split(delimiter)
Dim dwShareMode As Long = 1
Dim dwPrefProtocol As Long = 3
Dim phCard As Long = 0
Dim ActiveProtocol As Long = 0
ReturnValue = SCardConnect(Me.nContext, cReaders(0), dwShareMode, dwPrefProtocol, _
phCard, ActiveProtocol)
~SUDHAHi,
This error specify that the data you add, already exist in the table.
In this type of table, the field code and name must be unique for every lines.
Try to change the value of this line : oUsrTbl.Name = "Name"
Hope it's help you.
Regards
Michael -
SCCM 2012 application run Powershell script and return codes
Hi,
I created an new application (imported as MSI) in SCCM 2012R2. After import I changed the deployment type installation program to run a Powershell script: powershell.exe -ExecutionPolicy Unrestricted -File "Install FactSet 2013 5I.ps1
My goal is to close some processes before installing the MSI. This works. But on a failure the application program also return code 0 (AppEnforce.log). Is it possible to pass the MSI return codes to SCCM.
Maybe anyone had the same or idea's to solve this? Thanks in advance.
Regards,
Peter
Powershell script code:
$ExitCode=0
Function
Stop-RunningApplication{
Param(
[parameter(Mandatory
=$true)]
[string]$ProcessName#
Specify process names separated by commas
# Split multiple processes on a comma and join with the regex operator '|' to perform "or" match against
multiple applications
$processName=$processName-split(",")
-join("|")
$process=Get-Process|Where{
$_.ProcessName
-match$processName}
|Stop-Process-Force
#Stop running processes
Stop-RunningApplication
-ProcessName"excel,outlook,fdsw32,marquee,POWERPNT,WINWORD"
#Install FactSet 2013 5I
$ExitCode
=(Start-Process".\FactSet_Setup_2013_5I_x644.msi"'/qn
FACTSET_CLOSE_PROCESSES=1 /l*v C:\Temp\InstFac20135I.log'-Wait-Passthru).ExitCode
Environment]::Exit($ExitCode)
Peter vd BoschIt's really hard to tell from the code above because of the way it's listed, but are sure that even executes? I see at least one stray curly brace and a stray square bracket.
For the Start-Process cmdlet, have you tried without the -passthru parameter?
Also, using the actual parameters will make the code much more readable instead of relying on position.
Jason | http://blog.configmgrftw.com | @jasonsandys -
Installation Nw04 Sp3:: Error: Return Code 4
This is a message continues Wolfgang's previous message title:
"Installation Nw04 EP Sp3". I met the same problem but can't solve it according the suggestions.
Exception is:
(message ID: com.sap.sdm.serverext.servertype.inqmy.extern.EngineCompOnlineDeployerImpl.performAction(DeploymentActionTypes).REMEXC)
Error: Deployment NOT successful for DQE_JDBCDriver_library
Error: -
At least one of the Deployments failed -
Info: Summarizing the deployment results:
Error: Admitted: D:\Setup\SAP_NetWeav_04\Disk51030604_SNW_Inst_EP6_Trex61\EP1\DQE\SDA\FS\PAR\com.sapportals.dqe.admintools.sda
Error: Aborted: D:\Setup\SAP_NetWeav_04\Disk51030604_SNW_Inst_EP6_Trex61\EP1\DQE\SDA\JAVA-LIB\com.sapportals.dqe.jdbcdriver.lib.sda
Error: Admitted: C:\Program Files\sapinst_instdir\EP630\Advance_Portal\DQE_SERVICES\com.sapportals.dqe.service.sda
Error: Processing error. Return code: 4
Afterwards, I followed Abdul's suggestion to update com.sapportals.dqe.jdbcdriver.lib.sda
1. Open (e.g. WinZip) the file <SDA_LOCATION>\com.sapportals.dqe.jdbcdriver.lib.sda
2. Extract the file \server\provider.xml
3. Edit provider.xml by removing the line "<jar-name>xercesImpl.jar</jar-name>"
4. Insert provider.xml file back to com.sapportals.dqe.jdbcdriver.lib.sda
5. (In case of applying this Note during installation) Click the 'Retry' button on SAPInst
The same Return Code 4 error occurred.
Can Wolfgang or somebody else suggest what is the solution.
Thank you very much.
LeonHi Yongli,
Have you restarted all instances (J2EE and ABAP) after the changes! I also had the problem but after a restart it works. I also started a new installation (not continued the old one). -
CoCreateInstance fails with return code -2147221008
I'm calling
HRESULT retval = CoCreateInstance(SQLNCLI_CLSID, NULL,
CLSCTX_INPROC_SERVER,
IID_IDBInitialize,
(void **) &m_pIDBInitialize);
and it returns the above return code. I don't know what in the world it means or how to get an error message out of it.
The only possible return values for CoCreateInstance listed in
http://msdn.microsoft.com/en-us/library/windows/desktop/ms686615%28v=vs.85%29.aspx
are
S_OK
REGDB_E_CLASSNOTREG
CLASS_E_NOAGGREGATION
E_NOINTERFACE
E_POINTER
#define S_OK ((HRESULT)0L)
#define REGDB_E_CLASSNOTREG _HRESULT_TYPEDEF_(0x80040154L)
#define CLASS_E_NOAGGREGATION _HRESULT_TYPEDEF_(0x80040110L)
#define E_NOINTERFACE _HRESULT_TYPEDEF_(0x80004002L)
#define E_POINTER _HRESULT_TYPEDEF_(0x80004003L)
The values in decimal respectively are 0, 2147746132, 2147746064, 2147500034 and 2147500035. None of them is the value I got.
Please help before I shoot myself.Hello ,
I would suggest you to have a look at
http://social.msdn.microsoft.com/Forums/sqlserver/en-US/f8417fdc-03e3-4f73-b165-b39a90fb1b90/cocreateinstance-fails-with-return-code-2147221008
It seems that the meaning of this error code is : "CoInitialize has not been called. "
As I have given up VC++ since the arrival of VS 2003 and VC# , I cannot give you more explanations.
A moderator may move your thread towards the VC++ forum if you want more explanations or help ( for myself , I prefer to do the move only after the original poster ( you PriorityCustomer ) has posted his/het agreement.
Have a nice day
Mark Post as helpful if it provides any help.Otherwise,leave it as it is. -
Return code from Client_host command
Hi,
Is it possible to get the return code from the os when I issue the webutil Client_Host procedure?
Thanks,
MaryMary
You can use the WEBUTIL_HOST.HOST method instead of CLIENT_HOST. It is overloaded as both a Procedure and a function; the latter returns the client return code.
Cheers, APC
Maybe you are looking for
-
I made a music playlist on my iTunes, perfectly ordered. I get a car with a USB input to get the songs in the car hard drive, My question is: How can I copy the playlist (with artist, song etc) with the music file (but with the name and artist instea
-
Some albums on my iPod have their songs in incorrect order
I guess I'm just old school. I like to listen to my music in the order that it appears on the album. Almost all of the albums have the songs in the correct order, but few do not. In particular, Today was listening to American Idiot (Green Day), what
-
How to update two database tables as the same Usernamethats logged in?
I have created 2 separate database tables in PHP/MySQL that I want to store user information in. The first user table I made the fields: id, username, password. The second table I made the fields: id, firstname, lastname, address, phone. I want to ma
-
How to make JDBC and SAP connectivity with VC 6.0
can anyone help me.....how to make JDBC system and SAP system visible in the System drop-down list in Data Task Panel of Visual Composer 6......i mean how to make connectivity with JDBC and SAP system......so that i can use any table in the back-end
-
Icon have changed to preview icons
Hi.I use PEAK as an audio editor which uses its own file icon.Just recently all my normal peak icons suddenly changed in to what I guess must be Preview icons,the ones with the semi-quaver,a bit like itunes. Also every time I save something in peak t