Activating javacorba client on Multithreaded environment
Hi,
I have a java corba client communicating C++ corba server. This java corba client gets activated in multithreaded environment (i.e. multiple threads try to communicate with C++ corba server using this java corba client simultaniously).
This java client starts the transaction using TransactionCurrent object before sending data corba server.
I am getting an error for the mentioned code below code:
tran_curr_oref =
bootstrap.resolve_initial_references("TransactionCurrent");
org.omg.CORBA.NO_PERMISSION: vmcid: 0x54555000 minor code: 1019 completed: Maybe
at com.beasys.Tobj_BootstrapRemote.resolve_initial_references(Tobj_BootstrapRemote.java:615)
at com.beasys.Tobj_Bootstrap.resolve_initial_references(Tobj_Bootstrap.java:243)
at com.dhl.emea.javacorbaclient.PEVWrapperClient.TuxSend(PEVWrapperClient.java:188)
at com.dhl.emea.javacorbaclient.CreateThread.run(CreateThread.java:78)
at java.lang.Thread.run(Unknown Source)
Now My question is
1) Can i have multithreaded java clients with each thread activating seperate transactions?
2) Is there any work around so that i instantiate TransactionCurrent object once and the remaining threads use the same object to start and stop the transaction?
Any help on this appreciated.
Thanks and Regards
Prashanth
Hi Prashanth,
Assuming you are using a remote CORBA/Java client to communicate with Tuxedo, then you are most likely using IIOP to communicate with the Tuxedo ISL/ISH. In this environment, you only have a single connection to Tuxedo and the ISL only allocates a single client context for your connection. As a result, even though your client may be multi-threaded, all threads are going to share the same connection and the same context including transaction and security context. The reason for this is that Tuxedo uses a delegation model and delegates security and transaction contexts to the ISL.
If you use another Java ORB other than the Tuxedo Java ORB, you might be able to get it to open a separate connection to Tuxedo for each thread and thus each thread could have it's own Tuxedo security and transaction context in the server. But this would be at the cost of a connection per client thread which may create way to many connections to Tuxedo.
If your code is running inside WLS and you are using WTC, then you can have a unique transactions and security context per thread.
Regards,
Todd Litle
BEA Tuxedo Engineering
Similar Messages
-
Question about security context in multithreading environment
I have a need to make concurrent calls to multiple EJBs in parallel threads. Let's
say I establish the security context once by creating an InitialContext with given
security principal and credential. With the security context active, I spawn multiple
threads from the current thread and in each of those threads I make a call to
a secure EJB method, which my security principal is allowed to access. My question
is, will the same security context be established in each of the spawned thread
so that my EJB calls succeed? For various reasons it's not feasible to login in
each of the spawned threads, only to login once from the main thread.
I tried this with WebLogic 6.1sp3 and it seems to work as expected. However, I
have not been able to find any documentation on how security contexts are propagated
to spawned threads. All I could find was a statement that when an InitialContext
is created, the corresponding security context becomes associated with the current
thread.
My concern is that even though it works in WebLogic 6.1, it may no longer work
the same way in WebLogic 7.0 or later. And will it work when the JNDI login mechanism
is replaced by JAAS? If any WebLogic/security guru out there could give me some
info on how WebLogic security contexts work in a multithreaded environment, I
would be much obliged.
Thanks in advance!
Minh-Tue Vo"Minh-Tue Vo" <[email protected]> wrote in message
news:[email protected]..
>
\> My concern is that even though it works in WebLogic 6.1, it may no longer
work
the same way in WebLogic 7.0 or later. And will it work when the JNDIlogin mechanism
is replaced by JAAS? If any WebLogic/security guru out there could give mesome
info on how WebLogic security contexts work in a multithreadedenvironment, I
would be much obliged.
With the JAAS model, you should be able to get a subject once and then do a
runas in the spawned threads. -
How to install Active Directory Client on Windows 8.1 Pro
Hello,
I like to install the Active Directory client on Widows 8.1 Pro. I have tried installing RSAT (Remote Server Admin Tools for Windows 8.1, but when I run the setup program it says the Windows Update Standalone
Installer, the update is not applicable to your computer. I am running this Windows8.1-KB2693643-x86.msu and downloaded it from here.
http://www.microsoft.com/en-us/download/details.aspx?id=39296
So, how do I
get this installed?
Thanks
PaulHi,
Remote Server Administration Tools for Windows 8.1 is available in the following languages: cs-CZ, de-DE, en-US, es-ES, fr-FR, hu-HU, it-IT, ja-JP, ko-KR, nl-NL, pl-PL, pt-BR, pt-PT, ru-RU, sv-SE, tr-TR, zh-CN, zh-HK, and zh-TW. If the system UI language
of your Windows 8.1 operating system does not match any of the available RSAT languages, you must first install a Windows 8.1 Language Pack for a language that is supported by RSAT, and then try installing Remote Server Administration Tools for Windows 8.1
again.
Please check your system version (64 bit or 32 bit), and download the property one:
How to determine whether a computer is running a 32-bit version or 64-bit version of the Windows operating system
http://support.microsoft.com/kb/827218
Kate Li
TechNet Community Support -
Hi experts m new to apps please help.. I have installed successfully Oracle Apps R12 on OEL - 5 All the services runining fine. but when i am opening forms its giving error "install missing plugins" i installed jre-6u7-linux-i586-rpm.bin and Mozilla Firefox 3.0.18 [root@ust ~]# cd firefox/plugins/ [root@ust plugins]# ln -s /usr/java/jre1.6.0_07/plugin/i386/ns7/libjavaplugin_oji.so ./libjavaplugin_oji.so [root@ust plugins]# ls libjavaplugin_oji.so libnullplugin.so [root@ust plugins]# ll total 20 lrwxrwxrwx 1 root root 58 Sep 11 16:22 libjavaplugin_oji.so -> /usr/java/jre1.6.0_07/plugin/i386/ns7/libjavaplugin_oji.so -rwxr-xr-x 1 root root 19160 Sep 15 2007 libnullplugin.so [root@ust plugins]# but when m trying to open forms at that time giving error "install j2se plugin version 1.6.0_07 on your client and NPX_PLUGIN_PATH environment variable set before starting Netscape."
Linux is not a certified client tier for accessing EBS
Unable to access r12 forms in linux client
https://forums.oracle.com/search.jspa?view=content&resultTypes=&dateRange=all&q=linux+client&rankBy=relevance&contentTyp…
HTH
Srini -
Dear all,
I get the following error while trying to login into Oracle EBS Applications, from an Ubuntu client OS.
Please advice me with the solution for the same...
Error Message :
In order to access this application, you must install the J2SE Plugin version 1.4.2_04 on your client and NPX_PLUGIN_PATH environment variable is set before starting Netscape. To install this plugin, click here to download the oajinit.exe executable. Once the download is complete, double-click the oajinit.exe file to install the plugin. You will be prompted to restart your browser when the installation is complete.
SOMEBODY, PLEASE REPLY IMMEDIATELY
Edited by: Anand.C on Mar 6, 2008 1:51 PMLinux is not a certified client tier for accessing EBS
Unable to access r12 forms in linux client
https://forums.oracle.com/search.jspa?view=content&resultTypes=&dateRange=all&q=linux+client&rankBy=relevance&contentTyp…
HTH
Srini -
Find Number of Active Calendar Client Sessions?
What is the "ps" command to find the number of active Calendar clients at any given time?
We are using 10.1.2 in an OCS installation on Linux SuSe servers.
Also, is there a way to see the individual usernames associated with each active session?On e.g. UNIX you can perform
netstat -a | grep 7778 (mid web calendar port on my system)
(http://<your host>:7778/ocas-bin/ocas.fcgi?sub=web&web=calendar&view=day)
Best regards,
Fred -
Hi All,
Batch status is active at client level.
However, in the inbound delivery I am able to receive an existing batch for some other material.
Ideally, I should get an error that the batch already exists etc because the batch is active at the client level.
Please help.
Regards,
AnkurHi,
Thanks for your inputs. Batch is active at client level.
The check happens when we do the GR. At the time of GR, the system checks for existing batches and gives the error.
Is there a way to put this check at the inbound delivery level itself ? Requirement is to give an error if there is an existing batch for other material during inbound delivery creation itself.
Thanks !
Ankur -
SAP SD benchmark-check if New GL is active in client 900
hi, guys
Log on as SAP_PERF000 with password obelix and language EN to client 900.
use transaction /nSE38 To check if New GL is active in client 900
"You are not authorized to use transaction SE38"
any ideas?
regardsnow in client 900 which sap account should login with pw obelix and execute su01 and enter user " SAP_PERF"
hit "change" , add the profile "SAP_ALL" to the users profile tab, save and exit.
i used SAP* and SAP_ADMIN to login, and execute su01. "You are not authorized to use transaction SU01"
regards -
Sleep blocked by "active remote client"
Using powercfg -requests I get:
[DRIVER] Filesystem\srvnet
An active remote client has recently sent requests to this machine
This blocks sleep mode (a "feature" of sleep mode).
I have tried disabling wake for sleep on adaptors. Disabling home group. disabling media center, unistalling windows media, disable auto update, no media sharing....
Because there is a long timeout of maybe 15 minutes or longer on this it so it is hard to diagnose if it is coming from the local machine or the other Win 7 on the network. The problem seemed to start when I upgrade the second machine from Vista though not 100% sure.
Seems like each machine keeps the other awake? I have also suspected the Dlink router and turned all of its "added value" features off. Where is this "remote client" and how to diagnose?
Is there a setting to at least turn the time out to a minute or less?
One machine runnning Win 7 7600 64 before and after this problem started. The other was Vista and now Win 7 7600 32 since the problem began in BOTH machines.Try creating and then leaving a Homegroup between the machine having the sleep problem and the other(s) keeping it awake.
I developed the same insomnia problem described here on one of my networked group of Windows 7 machines after enabling media streaming but declining to create a Homegroup (when the option to create one was presented during the media streaming setup process).
I struggled with various solutions, all to no avail, except disconnecting the problematic machine from the others on the network (not a solution). Ultimately I determined that certain other machines on the network would keep the problematic machine awake.
I was able to identify the affected machines by disconnecting various combinations of machines from the network until the problematic machine slept normally.
Ultimately, the problem disappeared after I created a Homegroup, joined all the affected machines, and then left the Homegroup from all machines. After a forced sleep using the shutdown menu on all the affected machines, and subsequent manual wake,
they now all sleep and wake normally, as expected, according to the power plan settings.
I suspect that by declining to create the Homegroup when prompted, it leaves some inchoate remnant of Homegroup creation lingering around on one or more machines, which in turn results in repeated requests being sent from one machine to the other, keeping
the other awake. -
Best practice to run Microsoft Endpoint Protection client in VDI environment
We are using Citrix XenDesktop VDI environment. Symantec Endpoint Protection client (VDI performance optimised) has been installed on the “streamed to the clients” virtual machine image. Basically, all the files (in golden image) have been “tattooed” with
Symantec signature. Now, when the new VM starts, Symantec scan engine simply ignores “tattooed” files and also randomise scan times. This is a rough explanations but I hope you’ve got the idea.
We are switching from Symantec to Microsoft Endpoint Protection and I’m looking for any information and documentation in regards best practice for running Microsoft Endpoint Protection clients in VDI environment.
Thanks in advance.I see this post is a bt old but the organization I'm with has a very large VDI deployment using VMware. We also are using SCEP 2012 for the AV.
Did you find out what you were looking for or did you elect to take a different direction?
We install SCEP 2012 into the base image and manage the settings using GPO and the updates for defs are through the normal route.
Our biggest challenge is getting alert message from the client.
Thanks -
Best way to generate an incrementing ID in multithreaded environment
Hi
I have a "best practice" kind of question.
I need to insert a record in an Oracle table where primary key is an incrementing numeric ID. In order to insert a new record, first i need to figure out what the maximum ID is and then increment it.
In a multithreaded environment, this can cause an error when, let's say, there are 2 threads, and each one is simultaneously querying the table for the max ID. Each query will return the same result and hence only 1 query will succeed at inserting the new record. The second insert will cause a primary key conflict when trying to execute.
Is making the code synchronized the best solution in this situation or is there a better way?
Thanks in advance.Hi,
using Oracle sequence could be easy and effective, just insert sequence.NEXTVAL into the particular column. Oracle should take care of possible conflicts, it should always provide different (means incremented) value.
I dont recommend using agregate function MAX(column).
Good luck,
Rgds
Miroslav -
Active-Standby -Client-Site VPN
Dear Experts.
We have Cisco two ASA 5550 which is configured in Active-Standby mode but client-site VPN is not working when secondary unit becomes active. Failover status is showing as " Secondary Active" when primary unit is active all client-site VPN connections are working fine. Both ASA's has 7.2(3) IOS image and DES, 3DES/AES license enables.
We are getting following error messages
IPSEC: Deleted outbound permit rule, SPI 0xBFA351A9
Rule ID: 0x059C3060
IPSEC: Deleted outbound VPN context, SPI 0xBFA351A9
VPN handle: 0x00227DFC
Jan 09 13:23:52 [IKEv1]: Group = DefaultRAGroup, IP = x.x.x.x, Removing peer from peer table failed, no match!
Jan 09 13:23:52 [IKEv1]: Group = DefaultRAGroup, IP = x.x.x.x, Error: Unable to remove PeerTblEntry
Please adviseOne of the things that I have seen that can cause symptoms like this is to not have some files in flash of the backup ASA. In particular I suggest that you check for files related to the client VPN. So get the output of show flash from the primary ASA and from the backup ASA and compare them.
HTH
Rick -
Create separate TDMS client in development environment ... really ?
Hello,
My company acquired the license to use SAP TDMS.
Our main purpose, using TDMS is to create additional developemts clients , with production-like data.
SAP documents say explicitely that you may "Create separate TDMS client in development environment"
But after reading SAP TDMS master guide, I realize that it is no so simple
"With SAP TDMS, you transfer the required parts of the client-dependent data from the sender
system to the receiver system. For this to work properly, it is very important that the receiver
system has the same data dictionary (DDIC) and cross-client customizing as the sender
system." page 17 Master guide
By definition, Production and Developemt systems do not have the same DDIC.
I mean that it could take several weeks/months before that newly developed objects (including DDIC) are transported to production.
Saying that, how is it possible to to create TDMS clients in DEV system, when DEV system is not synchonized with the production system ?
Thank you for your responses.
RegardsThere are two aspects to your question -
Aspect 1: Currently the repository on your dev. system is not in sync with the repository on your production system and You want to synchronize the repository on the development system, in this case you may use the TDMS Shell process to do a lean system copy from production to development which will copy the repository and cross client data from prod. to dev.
Aspect 2: Currently the repository on your dev. system is not in sync with the repository on your production system and You are not in a position to synchronize the repository on the development system, in this case you may still go ahead and execute TDMS with the limitation that for all the tables which have differences in definition in the two system the data transfer may not be complete or in worst case you may have to skip data transfer of some tables (tables for which the definition is significantly different in two systems). TDMS does provides you the option to do the same.
I hope this info helps. -
C++ stringstream in multithreaded environment
We are using a lot of stringstream objects in multiple locations in our code. The objects are not shared across threads but still program crashes in multithreaded environment. The investigation shows that the program crashes when we use both insertion & extraction operators (stringstream ::operator << and stringstream ::operator >> ). The program crashes at random locations, always pointing to stringstream in our code. We receive SIGBUS, or SIGSEGV or (sometimes) SIGABRT signals.
We need to know how to use stringstream in Multithreaded environment.
Any help will be highly appreciated.
Versions:
Compiler Version: CC: Sun C++ 5.9 SunOS_sparc Patch 124863-05 2008/06/03
Machine: SunOS bear 5.10 Generic_127111-11 sun4u sparc SUNW,Sun-Fire-V490
/usr/lib/sparcv9/libCstd.so.1: Sun SUNWlibC SunOS 5.10 Patch 119963-08 2006/09/20
Following is the test program (creates 20 threads & does insertion-extraction) & Makefile below it.:
{color:#0000ff}#include <string>
#include <sstream>
#include <pthread.h>
#include <thread.h>
#include <vector>
using namespace std;
extern "C" void* ThreadFunc( void* p )
for(int i=0 ; i < 1000000 ; i++){
string str("dummy");
stringstream buf;
buf << "Dummy Data " << i ;
buf >> str;
return NULL;
int main (int argc, char** argv)
try {
pthread_t thread;
vector<pthread_t> threads;
for(int i=0; i < 20 ; i++) {
pthread_create(&thread, NULL,ThreadFunc, NULL);
threads.push_back(thread);
int rc;
void* status;
for(int t=0; t < 10; t++) {
rc = pthread_join(threads[t], &status);
if (rc) {
// cout << "ERROR in joining thread " << threads[t] << endl;
return (-1);
//cout << "Completed joining thread " << threads[t] << " with status " << (long)status << endl;
} catch (...) {
//cout << "some exception\n";
return 0;
{color}
////////Makefile/////////////
{color:#ff00ff}CC=/appl/toolbox/studio12-July08/SUNWspro/bin/CC
CPP =${CC} -m64 -mt -xarch=sparcvis2 -g
OFILES = ${SOURCE:.cpp=.o}
PROG = stringstreamtest
SOURCE = main.cpp
{color}
{color:#ff00ff}${PROG}:${OFILES}
${CPP} ${OFILES} -o $@
%.o:%.cpp
${CPP} -c $< -o $@
{color}
{color:#ff00ff}clean:
${RM} *~
${RM} *.o
${RM} -r ${PROG}
${RM} -f .make.state
.KEEP_STATE:{color}The stringstream class is thread-safe, but you must provide your own guards around string and stream objects that are shared among threads. That is, the library provides internal guards that you could not provide yourself, but if two threads modify the same string object (or any non-atomic object, for that matter) at the same time, the results are unpredictable.
You have a rather old version of libCstd on your system. Please update to the current SUNWlibC patch
sparc: 119963-12
x86 : 119964-12
You can get the patch from [http://sunsolve.sun.com]
Some other things to check:
Be sure that libCrun and libCstd are linked only as shared (.so) libraries, and not as archive (.a) libraries.
Do not use the linker -Bsymbolic option when creating shared libraries - it can cause program crashes particularly when using the string class.
Do not use -xarch=v8 or -xtarget=v8 options, since it can cause loss of thread synchronization when running on current architectures. (The v8 architecture dates from before the UltraSPARC was introduced in the mid 1990's.)
Finally, you should check your code for the usual programming errors that can lead to crashes:
- using an invalid pointer
- uninitialized
- dangling (points to object that no longer exists)
- incremented or decremented outside object bounds
- points other than to an object start address
- deleting an object more than once
- reading or writing outside object bounds
- failing to guard shared object in multi-threaded code
- race condition in multi-threaded codeThe program failure usually occurs far away in space and time from the
actual error.
These errors do not always lead to a program crash. An invalid pointer
might sometimes by accident point to a harmless location. A race
condition can go millions of cycles without causing a problem. Access to
a deleted object can succeed by accident if the memory was not re-used.
Any change in program code or compiler options can turn one of these
programming errors into an actual failure, or the other way around.
Try running the program under dbx with Run-Time Checking enabled. RTC
will find many of these errors. In Sun Studio 12, the Thread Analyzer
tool will find race conditions. -
Dimension PWXTY64 can only be manually activated in client 001
Hi ,
I am trying to transport some of my infoubes from Dev to Quality where I can see th error
Dimension PWXTY64 can only be manually activated in client 001
Message no. R7048
Diagnosis
Dimension PWXTY64 does not have a number range interval. A new interval has to be generated so that IDs can be assigned. As IDs already exist, the interval has to be created during object activation. This is only possible in BI client 001 as the interval is client-dependent.
The error occurred in client 000 - probably in after-import handling.
System Response
Dimension PWXTY64 can only be activated manually in client 001.
Procedure
Activate Dimension PWXTY64 manually in client 001.
Please let me know what needs to be done to avoid this error
Thanks ,
SanyHave you found a solution to this issue? We experienced the same thing this weekend, and we had to manually activate the Infocubes using the activation program. But, if there is a way to avoid this in the future, that would be great.
Thanks,
John
Maybe you are looking for
-
I have setup a test system. It has a domain with 2 child domains. DomainA.xyz.com has users and workstations. DomainB.xyz.com is a resource domain and has servers. wyx.com is for IT administration. Users in domainA can logon to the domainB computer
-
Help! Why is the Pre's speaker ringing an incoming call when I have a headset on?
Hi all, I just had the most embarrassing thing happen to me today. I was listening to some music on my Pre with the headset (that came with the Pre), and I received an incoming call. I heard it ring and answered the call, no problem what I thought! W
-
Why FF usaes 25% of CPU, even after closing the application..?
After opening two or more browser, automatically FF stars using 24/25% of CPU. Even one tab having Youtube running. As well as using huge amount of memory, and this gradually increases. Closing the application doesn't solves the problem. After that t
-
Drag and drop, like magic the files just vanish!
Ever since upgrading my mid 2009 MacBook Pro to Lion, I have been having trouble copying or moving files by dragging them. I especially seem to have trouble dragging files to the desktop... I drag them there, but they just vanish without a trace. I
-
Collective PR's and single PR configuration in SPRO
PM Experts, When the check button for "Collective PR" is checked in, i believe Std SAP settings is that a single PR will be generated for every work order irrespective of the number of Non-stock materials... I also think that If this check is not mar