RMI Client timeout set

I want to set a client timeout for RMI withing WLS. Is there a way to do
this? Any examples?
thanks,
Mike

Sorry.. I thought you were talking about rmi/iiop.
There is some time-out mechanism in Denali (5.1.x), but nothing in 4.5.x, as the neccessary infrastructure was not in place unitl Denali.
Let me know if you want me to look into how this is done in 5.1.x.
Michael Lee wrote:
I have 4.5.1 at the customer site now. Can this work with 4.5.1.
BTW, thanks.
----- Original Message -----
From: "Eduardo Ceballos" <[email protected]>
Newsgroups: weblogic.developer.interest.rmi-iiop
To: "Michael Lee" <[email protected]>
Sent: Wednesday, June 07, 2000 6:13 AM
Subject: Re: RMI Client timeout set
The idle disconnect timeout property will be aviable in service pack 4 and5.1.1.
Michael Lee wrote:
I want to set a client timeout for RMI withing WLS. Is there a way to do
this? Any examples?
thanks,
Mike

Similar Messages

  • RMI - How to set a client timeout?

    Hey folks,
    please don't crucify me, but i googled for "rmi client timeout" and i only found confusing and / or really dated information.
    Could somebody enlighten me on how to set a timeout for an RMI-client?
    Even an RTFM would be fine, but which?

    Hi,
    thanks for your insistence.....:-)
    ejp wrote:
    1. Are you using rmic? UnicastRemoteObject? or some JBoss API?Ehm, for the client?
    The client's sourcecode for connecting to the Jboss-Server / my EJB-application is:
    Hashtable<String, String> props = new Hashtable<String, String>();
    props.put(Context.INITIAL_CONTEXT_FACTORY,"org.jnp.interfaces.NamingContextFactory");
    props.put(Context.PROVIDER_URL,"jnp://" + "myhost");
    props.put(Context.SECURITY_PRINCIPAL, "myuser");
    props.put(Context.SECURITY_CREDENTIALS, "mypassword");
    Context ctx = new InitialContext(props);
    // get RMI stub
    ISendCommand sendCommand = (ISendCommand) ctx.lookup(myjndiname);
    String result = sendCommand.sendCommand(myArgs);So i think this corrensponds to "UnicastRemoteObject" from your enumeration?
    ejp wrote:
    2. How do you know JBoss terminates the connection?Because i have a timeout configured in my EJB-application, but in the example i try to get working, the client shall use its own timeout which is before the EJB-timeout.
    The EJB-timeout works, but not the client timeout.....(as described above)
    ejp wrote:
    3. What happens at the client? An exception? Nothing?"Nothing", i.e. the client terminates when the connection times out (from the JBoss / EJB-side!)
    ejp wrote:
    4. Are you ignoring any exceptions at the client?No.
    Shouldn't this client timeout be totally independent from any server / Jboss / whatever stuff?
    Any more ideas?

  • WebLogic Builder remote-client-timeout

    Just wondering if anyone has encountered this before.
    After using WebLogic Builder to make and save changes to an EAR file the weblogic-ejb-jar.xml file is updated to include the remote-client-timeout tag. This tag causes warning messages in the weblogic console.
    <weblogic-ejb-jar>
    <weblogic-enterprise-bean>
    <ejb-name>HelloWorldEJB</ejb-name>
    <transaction-descriptor>
    </transaction-descriptor>
    <enable-call-by-reference>True</enable-call-by-reference>
    <jndi-name>test.HelloWorldHome</jndi-name>
    <remote-client-timeout>0</remote-client-timeout>
    </weblogic-enterprise-bean>
    </weblogic-ejb-jar>
    Warning Messages
    <Nov 2, 2005 4:46:22 PM PST> <Warning> <EJB> <BEA-014009> <Warning: EJB HelloWorldEJB, has the remote-client-timeout set to 0 secs. This timeout specifies a rmi level timeout in seconds for remote clients that call the home and remote methods of the ejb. The method call(s) timeout on the client side after the specified number of seconds. The server will continue to process the request(s) and may change the state. The rmi level timeout shall be set by the container only for non-transactional methods (i.e, method with tx-attributes of Never or Not-Supported). Please ensure that the parameter is used only for methods that are idempotent in nature.>

    I think the tool sets the default value for this flag. The default value
    should not have any effect. However, I would expect the tool (weblogic
    builder) not to insert this element in the descriptor.
    More details on this setting can be found here -
    http://e-docs.bea.com/wls/docs81/rmi/rmi_api.html#rmi_timeout
    --Sathish
    <Colin Yeung> wrote in message news:[email protected]..
    Just wondering if anyone has encountered this before.
    After using WebLogic Builder to make and save changes to an EAR file the
    weblogic-ejb-jar.xml file is updated to include the remote-client-timeout
    tag. This tag causes warning messages in the weblogic console.
    <weblogic-ejb-jar>
    <weblogic-enterprise-bean>
    <ejb-name>HelloWorldEJB</ejb-name>
    <transaction-descriptor>
    </transaction-descriptor>
    <enable-call-by-reference>True</enable-call-by-reference>
    <jndi-name>test.HelloWorldHome</jndi-name>
    <remote-client-timeout>0</remote-client-timeout>
    </weblogic-enterprise-bean>
    </weblogic-ejb-jar>
    Warning Messages
    <Nov 2, 2005 4:46:22 PM PST> <Warning> <EJB> <BEA-014009> <Warning: EJB
    HelloWorldEJB, has the remote-client-timeout set to 0 secs. This timeout
    specifies a rmi level timeout in seconds for remote clients that call the
    home and remote methods of the ejb. The method call(s) timeout on the
    client side after the specified number of seconds. The server will
    continue to process the request(s) and may change the state. The rmi level
    timeout shall be set by the container only for non-transactional methods
    (i.e,
    method with tx-attributes of Never or Not-Supported). Please ensure that
    the parameter is used only for methods that are idempotent in nature.>

  • Reply to client by setting properties of java.rmi

    Hi All,
    I am very new to JAVA RMI.
    Is it possible for me to send a reply to client by setting the properties of java.rmi ?. I mean the reply string , if i am returning a string to client program ?.
    Shammi

    I will be more specific.
    What I meant by properties is system properties applied to the classes in java.rmi.* which we can set. For example,
    System.setProperty("java.rmi.server.codebase", "file://home/shammi/test");
    For the second portion, for example, if my server returns the string "Hello World" to the client, I will have a server method some what similar to the one given below
    public String SayHello()     {
              return "Hello World\n";
    Is it possible for me to do this in another way rather than explicitly specifying the return string.
    Shammi

  • Inbuilt cisco IPSEC vpn client and KeyLife Timeout setting...

    Hi Guys
    I am having issues with the in built cisco vpn client on the mac, I am currrently using Mac OSx 10.7.4
    I have a Fortigate 200B device and have setup the IPSec VPN settings to have a keylife of 86400 seconds.
    However the expereince I am having with the mac clients is that after about 50 minutes the users are being asked to re-authencate to the VPN...
    When checkin the debug logs I can see that the peer (mac client) is setting the phase 2 tunnel key lifetime to 3600 seconds which is 1 Hour...
    Usually in IPSec a re-negeotiation process takes place about 10 minutes or so before the key expires..
    My question is where are the VPN settings kept in the Mac... I know it uses Racoon for the IPSec exchange of key and so I would like to tweak the VPN profiles so that the mac sets the lifetime of the key to 86400 instead of 3600 by default...
    Also want to be able to set logging to debug mode for the Racoon application on mac clients.
    Your help is much appreciated
    Kind Regards
    Mohamed

    Hi Tony,
    to the best of my knowledge this is currently not possible, but will be once this enhancement is implemented:
    CSCsw31922    Radius upstream VSAs (Tunnel Group,Client type) for VPN policy decisions
    You may want to try and ask in the AAA forum if there is anything you can do on ACS...
    hth
    Herbert

  • IIOP timeout setting??

    I have a client that calls an EJB using IIOP through a servlet. It connects fine
    and I can see the bean "working" on the server side. After 60 seconds, the client
    receives the following error:
    java.rmi.MarshalException: CORBA COMM_FAILURE 1 Maybe; nested exception is:
         org.omg.CORBA.COMM_FAILURE: minor code: 1 completed: Maybe
    org.omg.CORBA.COMM_FAILURE: minor code: 1 completed: Maybe
         at com.sun.corba.se.internal.iiop.IIOPConnection.purge_calls(IIOPConnection.java:785)
         at com.sun.corba.se.internal.iiop.ReaderThread.run(IIOPConnection.java:118)
    However the bean is unaffected and completes its processing later. It does get
    an exception when trying to send the result back to the client. It seems that
    there is an IIOP timeout setting that needs to set higher in this case and the
    default is approximately 60 seconds. Any suggestions?
    Thanks in advance.
    -geoff.

    andy,
    you mean as another attribute somewhere in config.xml? please specify how to
    go about configuring this.
    -geoff.
    Andy Piper <[email protected]> wrote:
    "Geoff" <[email protected]> writes:
    I have a client that calls an EJB using IIOP through a servlet. Itconnects fine
    and I can see the bean "working" on the server side. After 60 seconds,the client
    receives the following error:
    java.rmi.MarshalException: CORBA COMM_FAILURE 1 Maybe; nested exceptionis:
         org.omg.CORBA.COMM_FAILURE: minor code: 1 completed: Maybe
    org.omg.CORBA.COMM_FAILURE: minor code: 1 completed: Maybe
         at com.sun.corba.se.internal.iiop.IIOPConnection.purge_calls(IIOPConnection.java:785)
         at com.sun.corba.se.internal.iiop.ReaderThread.run(IIOPConnection.java:118)
    However the bean is unaffected and completes its processing later.It does get
    an exception when trying to send the result back to the client. Itseems that
    there is an IIOP timeout setting that needs to set higher in this caseand the
    default is approximately 60 seconds. Any suggestions?There is an undocumented property on the Server MBean:
    IdleIIOPConnectionTimeout
    which you can configure in seconds to fix this. Unfortunately the JDK
    Orb is particularly bad at connection management which is why we had
    to do this. With 1.4 we can do somewhat better since we can use
    CloseConnection to tell the client to gracefully shutdown. We have
    revamped some of this also in WLS 7.0 so that the default timeout is
    longer for pending requests (as opposed to idle connections).
    andy

  • Hi, I am using HP11 and iPlanet web server. When trying to upload files over HTTP using FORM ENCTYPE="multipart/form-data" that are bigger than a few Kilobytes i get a 408 error. (client timeout).

    Hi, I am using HP11 and iPlanet web server. When trying to upload files over HTTP using FORM ENCTYPE="multipart/form-data" that are bigger than a few Kilobytes i get a 408 error. (client timeout). It is as if the server has decided that the client has timed out during the file upload. The default setting is 30 seconds for AcceptTimeout in the magnus.conf file. This should be ample to get the file across, even increasing this to 2 minutes just produces the same error after 2 minutes. Any help appreciated. Apologies if this is not the correct forum for this, I couldn't see one for iPlanet and Web, many thanks, Kieran.

    Hi,
    You didnt mention which version of IWS. follow these steps.
    (1)Goto Web Server Administration Server, select the server you want to manage.
    (2)Select Preference >> Perfomance Tuning.
    (3)set HTTP Persistent Connection Timeout to your choice (eg 180 sec for three minutes)
    (4) Apply changes and restart the server.
    *Setting the timeout to a lower value, however, may    prevent the transfer of large files as timeout does not refer to the time that the connection has been idle. For example, if you are using a 2400 baud modem, and the request timeout is set to 180 seconds, then the maximum file size that can be transferred before   the connection is closed is 432000 bits (2400 multiplied by 180)
    Regards
    T.Raghulan
    [email protected]

  • Web service client timeout

    Hi,
    I'm trying to set a timeout on my web service client. But its not working. Your tutorials do not seem to address this.
    I am using weblogic 10.3.2, with Java 1.6.
    ============
    Properties propSys = System.getProperties();
    propSys.put( "weblogic.webservice.UseWebLogicURLStreamHandler", "true" );
    Stub stub = (Stub)portObject;
    BindingInfo bindingInfo = (weblogic.webservice.binding.BindingInfo)stub._getProperty("weblogic.webservice.bindinginfo");
    bindingInfo.setTimeout(1);
    Iterator itr = stub._getPropertyNames();
    while (itr.hasNext()){
    Object element = itr.next();
    log("\n properties that can be set: "+element);
    stub._setProperty("weblogic.webservice.rpc.timeoutsecs","1");
    ===========
    I've also tried setting the transaction-timeout and the remove-client-timeout in the weblogic-ear-jar.xml.
    ===========
    <weblogic-ejb-jar>
    <weblogic-enterprise-bean>
    <ejb-name>ExternalEntryEJB</ejb-name>
    <transaction-descriptor>
    <trans-timeout-seconds>1</trans-timeout-seconds>
    </transaction-descriptor>
    <enable-call-by-reference>True</enable-call-by-reference>
    <jndi-name>ExternalEntry</jndi-name>
    <remote-client-timeout>1</remote-client-timeout>
    </weblogic-enterprise-bean>
    <weblogic-enterprise-bean>
    <ejb-name>InternalEJB</ejb-name>
    <local-jndi-name>Internal</local-jndi-name>
    <enable-call-by-reference>True</enable-call-by-reference>
    <remote-client-timeout>1</remote-client-timeout>
    <transaction-descriptor>
    <trans-timeout-seconds>1</trans-timeout-seconds>
    </transaction-descriptor>
    </weblogic-enterprise-bean>
    </weblogic-ejb-jar>
    ===========
    in case it matters, I am using weblogic.ant.taskdefs.webservices.clientgen.ClientGenTask as the clientgen task in my build.xml
    ============
    <clientgen autotype="False" ear="${dist}/${app.earname}" warName="${servlet.warname}" packageName="MyPackage.webservices.client"
    keepgenerated="False" useServerTypes="True" clientJar="${dist}/MyAppClient.jar">
    <classpath refid="build.classpath.builddir"/>
    </clientgen>
    ============
    I am testing by putting a Thread.sleep(75000) in the method which is called in the internal EJB. But the method runs to completion and returns the reply object after 90 seconds or so (it normally takes about 12 seconds), but does not timeout.
    I've been told that because it is a web services client, the remote-client-timeout will be ineffective. I've also been told that because the EJBs run in the same JVM, the transaction-timeout will be ineffective. Is this so?
    Thanks,
    Walter

    Can you change the clientgen task to weblogic.wsee.tools.anttasks.ClientGenTask this is for jax-rpc 1.1.
    <taskdef name="clientgen"
    classname="weblogic.wsee.tools.anttasks.ClientGenTask" />
    ((Stub)port)._setProperty(weblogic.wsee.transport.connection.timeout,2);
    ((Stub)port)._setProperty(weblogic.wsee.transport.read.timeoutt,2);
    Hope that helps.

  • RMI Client on Linux issue.

    I am facing Java RMI problem on Suse Linux.
    RMI server running on solaris and RMI client running on Solaris ---> works fine
    RMI server running on solaris and RMI client running on Linux ---> gives error
    Pls note that RMI server running fine. When invoking remote method from RMI client on Suse Linux, I get following error.
    Java.rmi.UnmarshalException: error unmarshalling arguments; nested exception is:
    java.lang.ClassNotFoundException: RemoteVtskImpl_Stub
    Any help/pointers will be useful.

    Even we tried setting the CLASSPATH to point to those jar files. But still the problem persist.
    At run time is there any way to see what all the _stub files are downloaded in the JVM at the client machine (linux machine in our case) from the server machine (solaris machine in our case).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

  • Running applet as RMI client from remote computer

    Hi,
    I am doing this project that requires that i run an applet (which is an RMI client) from a computer different than the one that has the RMI server running.
    Right now, i can run my server and applet on the same computer and it all works fine. But i don't know how to make the applet communicate with an RMI server that resides on another computer. Does this has anything to do with TOMCAT.
    I was wondering if this is possible.
    Thank you in advance.

    Do This
    RemoteInterfaceName server = (RemoteInterfaceName) Namin.lookup("rmi://yourserver/server/YourServerName");
    server.methodName(args);
    suppose you have your server in the dir path
    c:\prj\server
    then set your webserver's root dir to c:\prj\server how this is done will be in the web server's documentation
    Try It otherwise we'll see it again
    Bye !!!

  • Clients timeout on DHCP lease with Aironet 1141

    Hello
    I have an interesting problem that I can't find a solution for.
    Backround info:
    I'm setting up a Cisco Aironet 1141 (standalone mode, AP) to handle wireless traffic in the office. It gives out 2 mbssids, one of which authenticates domain users through a RADIUS server and places them in an appropriate VLAN (RADIUS options 64, 65, and 81). The other is a guest ssid that uses WPA-PSK and places users in the restricted guest VLAN. Physically, the AP is connected to a 3750 PoE Catalyst, to which RADIUS and DHCP servers are also connected. AP, SSIDs, RADIUS and EAP authentication all work. The configuration given below is a working configuration. People do get authenticated and do get placed in the appropriate vlan.
    The problem is that, once authenticated, the "Obtaining IP Address" phase on the client hangs and most clients timeout without getting an IP address. Given that the DHCP server is on the same switch and a test simple ASUS Wi-Fi IP gives out the same scenario (except the multiple VLAN) at the speed of light, I don't think that it's a problem with the network connections between clients and the DHCP server.
    After reading some topics here, I realized that probably other communication will be extremely slow, as well, but haven't tested that for sure.
    Clients are all non-Cisco - smartphones, notebooks, etc. Most of them are 802.11G, not N.
    Configuration is attached below.
    Does anyone have any ideas?

    Sure, possibly relevant parts:
    errdisable recovery cause udld
    errdisable recovery cause bpduguard
    errdisable recovery cause security-violation
    errdisable recovery cause channel-misconfig (STP)
    errdisable recovery cause pagp-flap
    errdisable recovery cause dtp-flap
    errdisable recovery cause link-flap
    errdisable recovery cause gbic-invalid
    errdisable recovery cause l2ptguard
    errdisable recovery cause psecure-violation
    errdisable recovery cause dhcp-rate-limit
    errdisable recovery cause vmps
    errdisable recovery cause storm-control
    errdisable recovery cause arp-inspection
    spanning-tree mode rapid-pvst
    spanning-tree loopguard default
    spanning-tree portfast bpduguard default
    spanning-tree extend system-id
    vlan internal allocation policy ascending
    ip ssh time-out 60
    ip ssh authentication-retries 5
    ip ssh logging events
    ip ssh version 2
    interface GigabitEthernet1/0/1
    description Gi1/0/1 to CAT-CORE
    switchport trunk encapsulation dot1q
    switchport mode trunk
    interface GigabitEthernet1/0/4
    description Gi1/0/4 to RADIUS_serv
    switchport access vlan 240
    switchport mode access
    spanning-tree portfast
    spanning-tree bpdufilter enable
    spanning-tree bpduguard enable
    interface GigabitEthernet1/0/8
    description Gi1/0/8 to DHCP_serv
    switchport access vlan 240
    switchport mode access
    spanning-tree portfast
    spanning-tree bpdufilter enable
    spanning-tree bpduguard enable
    interface GigabitEthernet1/0/11
    description Aironet 1141 AIRONET-MO-1
    switchport trunk encapsulation dot1q
    switchport trunk native vlan 240
    switchport trunk allowed vlan 240-246,248,249
    switchport mode trunk
    interface Vlan240
    description Admin_Vlan
    ip address 192.168.240.244 255.255.255.0
    ip default-gateway 192.168.240.1
    ip classless
    no ip http server
    ip http secure-server

  • 10.1.3.1 and standalone RMI client

    I'm migrating our J2EE applications from 10.1.2.0.1 to 10.1.3.1.0. I also have a custom JAAS login module that is used by our applications. I have the login module working successfully and web applications that can call EJBs.
    But I am unable to get a simple RMI client to call the EJBs. I can see from the server logs that the JAAS module executes successfully, but then I get a ClassNotFoundException (seems to be from the server) when the client tries to access the JNDI tree (see stack below on the client; I can't find any log relating to this event on the server).
    I had real problems with RMI access in 10.1.2, seems that Oracle AS isn't really thought through with respect to simple RMI client access. In the system-jazn-data.xml file I have granted my custom principals the RMI login permission. I tried to raise a TAR but it's been rejected because 10.1.3.1.0 is a "preview" version. (Don't you guys want to know about bugs before a release goes into production?)
    Any ideas?
    27-Sep-2006 14:50:46 oracle.j2ee.rmi.RMIMessages EXCEPTION_ORIGINATES_FROM_THE_R
    EMOTE_SERVER
    WARNING: Exception returned by remote server: {0}
    java.lang.ClassNotFoundException: com/evermind/server/ejb/EJBHomeObjectInfo
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:242)
    at com.evermind.io.ClassLoaderObjectInputStream.resolveClass(ClassLoader
    ObjectInputStream.java:33)
    at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:153
    8)
    at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1460)
    at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1
    693)
    at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1299)
    at java.io.ObjectInputStream.readArray(ObjectInputStream.java:1628)
    at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1293)
    at java.io.ObjectInputStream.readObject(ObjectInputStream.java:339)
    at java.util.HashMap.readObject(HashMap.java:1013)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
    java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
    sorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:919
    at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1813)
    at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1
    713)
    at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1299)
    at java.io.ObjectInputStream.readObject(ObjectInputStream.java:339)
    at com.evermind.server.rmi.RMIClientConnection.handleListContextResponse
    (RMIClientConnection.java:768)
    at com.evermind.server.rmi.RMIClientConnection.handleOrmiCommandResponse
    (RMIClientConnection.java:242)
    at com.evermind.server.rmi.RMIClientConnection.dispatchResponse(RMIClien
    tConnection.java:205)
    at com.evermind.server.rmi.RMIClientConnection.processReceivedCommand(RM
    IClientConnection.java:187)
    at com.evermind.server.rmi.RMIConnection.handleCommand(RMIConnection.jav
    a:152)
    at com.evermind.server.rmi.RMIConnection.listenForOrmiCommands(RMIConnec
    tion.java:127)
    at com.evermind.server.rmi.RMIConnection.run(RMIConnection.java:107)
    at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExec
    utor.java:814)
    at java.lang.Thread.run(Thread.java:595)
    javax.naming.NamingException: com/evermind/server/ejb/EJBHomeObjectInfo [Root ex
    ception is java.lang.ClassNotFoundException: com/evermind/server/ejb/EJBHomeObje
    ctInfo]
    at com.evermind.server.rmi.RMICall.throwRecordedException(RMICall.java:1
    00)
    at com.evermind.server.rmi.RMIClientConnection.waitForJndiResponse(RMICl
    ientConnection.java:334)
    at com.evermind.server.rmi.RMIClientConnection.list(RMIClientConnection.
    java:293)
    at com.evermind.server.rmi.RMIClient.list(RMIClient.java:392)
    at com.evermind.server.rmi.RMIClientContext.getListValues(RMIClientConte
    xt.java:95)
    at com.evermind.server.rmi.RMIContext.listBindings(RMIContext.java:444)
    at com.evermind.naming.FilterContext.listBindings(FilterContext.java:91)
    at com.evermind.server.ApplicationClientContext.listBindings(Application
    ClientContext.java:127)
    at javax.naming.InitialContext.listBindings(InitialContext.java:406)
    at com.axiomsystems.common.tools.test.APITester.getEJBs(APITester.java:2
    06)
    at com.axiomsystems.common.tools.test.APITester.<init>(APITester.java:17
    3)
    at com.axiomsystems.common.tools.test.APITester.main(APITester.java:68)
    Caused by: java.lang.ClassNotFoundException: com/evermind/server/ejb/EJBHomeObje
    ctInfo
    at com.evermind.server.rmi.RMICall.EXCEPTION_ORIGINATES_FROM_THE_REMOTE_
    SERVER(RMICall.java:109)
    at com.evermind.server.rmi.RMICall.throwRecordedException(RMICall.java:9
    1)
    ... 11 more

    Hi Debu,
    I have found the problem and a workaround in my code.
    I obtained the initial context ctx with the following properties set:
    Context.INITIAL_CONTEXT_FACTORY (= oracle.j2ee.naming.ApplicationClientInitialContextFactory)
    Context.PROVIDER_URL (= opmn:ormi://myHost:myPort:myOC4J/myApp)
    Context.SECURITY_PRINCIPAL (= my username)
    Context.SECURITY_CREDENTIAL (= my password)
    then I did
    NamingEnumeration en = ctx.listBindings("ejb/myJndiName")
    which resulted in the exception.
    Changing this to
    Context ctx2 = (Context)ctx.lookup("ejb/myJndiName");
    NamingEnumeration en = ctx2.listBindings("");
    has resolved the problem. I'm not sure why this behaves differently, I suppose it may have something to do with the fact that ctx2 is not an InitialContext object. It is an adequate workaround for my application.
    Once I have an EJB reference, invoking methods over RMI works as expected.
    Thanks,
    Keith

  • Timeout setting in setup package server

    Hi All,
    We wanted to change the time out setting in our Middleware server(Windows platform wintel) from present 120 mins to 180 mins which is used for creation of setup package.Where we can change the timeout setting in server.Please give me the path or location ..
    Thanks in advance
    Devendra

    Hi,
    I am not sure about the native Jboss JTA, but in general the following is true:
    -the transaction timeout determines when 'pending' transactions are cleaned up by the JTA
    -the larger the value, the longer the time that such transactions can be around
    The performance impact depends on the particularities of your application and server environment; to name a few:
    -For hot-spot data in your database, transactions will normally have to wait longer to get locks held by other transactions. If the timeout is too short then the clients will see many requests fail because the underlying transaction will timeout before the locks are gotten, and the JTA will rollback.
    -On the other hand, if (for some reason) you have failing requests that leave active transactions floating in the server, then a larger timeout will mean that such floating transactions will not release their locks yet (happens at rollback/commit only). So here a larger timeout means that lost transactions (that will rollback anyway) will prevent other transactions from doing business.
    -The same argument holds for deadlocks. If a transaction is involved in a deadlock situation then the deadlock will not be resolved until the transaction rolls back after timeout. In this case too, the other transactions are hindered by the locks of a 'lost' transaction.
    As a rule of thumb, I would say: keep transaction timeout as high as necessary to allow most transactions to get 'useful' locks (but not much higher than that). For instance, you could measure the statistics on response times under realistic loads and base your timeout value on that (if you're not measuring the deadlocks of course).
    Best,
    Guy
    http://www.atomikos-support.com:8080/forums -- Java/J2EE/JTA Transactions Forum

  • Force RMI client to connect to one Port

    Hi,
    Is there a way to force an RMI client to connect to a specific port.
    Any hint will be greatly appreciated
    Wafic

    Not really since it needs 2 ports, one for the RMI registry and other for the remote object.
    You can set these ports to what you like though (not the same).
    First port you set when you create/start your rmiregistry, the second when you create the UnicastRemoteObject, in its constructor you can specify it with the constructor UnicastRemoteObject(int port).
    This is only available since JDK1.2 though. When you connect with the client to the rmiregistry and the remote object, you specify the port in the URL from the client side like:
    rmi://localhost:port/remoteobjectname
    just replace localhost with the address of the server.
    The remote object port is passed to the client by the rmiregistry.

  • Serlet acting as RMI client

    hi all
    i have a servlet acting as a RMI client, the container of choice is Oracle Application Server or Tomcat
    how to set the security / persmision settings ?

    * Withdrawer.java
    * This is a non-thread-safe subclass ofAccountHolder that implements the run method
    * in such a way as to iterate a fixed number of times, making
    * a fixed withdrawal on its (shared) Account object.
    * @author Chad Salinas
    * @version 12/15/03
    * sources credited: Chad Salinas
    * Chad Salinas Open issues:
    Chad Salinas package cscie160.hw6;
    public class Withdrawer extends AccountHolder
    public static final float AMOUNT = 200;
    // Chad Salinas default constructor that won't be used
    public Withdrawer()
    // Chad Salinas the one-arg constructor requiring taking an Account object
    Chad Salinas public Withdrawer(Account oneAccount)
    Chad Salinas {
    Chad Salinas theAccount = oneAccount;     
    Chad Salinas }     
    public void run()
         for(int i = 0; i < 10; i++)
         Chad Salinas boolean finished = false;
         Chad Salinas while(!finished)
              Chad Salinas if(theAccount.getBalance() >= AMOUNT)
         Chad Salinas theAccount.withdraw(AMOUNT);
         Chad Salinas finished = true;
              else
              try
              Chad Salinas Thread.sleep(100);
              Chad Salinas catch(Exception e)
    Chad Salinas sample source
    Chad Salinas factory design pattern

Maybe you are looking for