Multiple Standalone Persistence Manager Servers in a single JVM?

Greetings [Kodo 3.4.1, Oracle9i]
I am currently working on introducing the Kodo Standalone Persistence
Manager Server into our architecture. One issue is that our application
accesses several different databases, each via a separate
PersistenceManagerFactory. This would mean (I think) that I would need to
start a separate Standalone PM Server for every database, which would mean
about 10 different JVMs running, just for the required Standalone PM
Servers...
The question... Will it be possible and sensible to run multiple
"Standalone" Persistence Manager Servers within a single JVM? The idea
would be for me to write a threaded server, where each of my threads invokes
kodo.jdbc.runtime.StartPersistenceManagerServer.run(someJDBCConf), where I
provide a JDBCConfiguration for each database I want to connect to. This
means that my server will effectively be listening for clients on several
different ports and accessing several databases all from within the same
JVM.
Is this feasible? Anyone with access to the source, can you say that the
StartPersistenceManagerServer.run() method may be safely run in several
different threads?
I suppose another option would be to use the HTTP Persistence Manager Server
and then simply deploy 10 servlets, one per database... But I'm trying to
avoid introducing a servlet container into the mix.
Thanks
Drew

Hi Marcus and thanks...
Yes, I want to use Remote Persistence Managers. Currently we have a 2-Tier
application, but we need to introduce a 3rd tier to be able to use the
DataCache. If we don't do this, then each running application will have
it's own DataCache, which will not "see" changes in other running
application DataCaches. I have tried to attach a "before" and "after"
diagram to illustrate...
Now if we extend this a bit further, and say that instead of just one
database, our application actually needs to access 10 different databases
(so 10 different PersistenceManagerFactories and 10 different DataCaches),
then hopefully it is clear that we would then need 10 separate Standalone
Persistence Manager Servers. I have attempted to attach another diagram to
illustrate.
I don't really want to start up 10 Remote PM servers, I would rather just
have one server, which brings me back to my original question... Can I run
them all in a single JVM?
Cheers and thanks
Drew

Similar Messages

  • Multiple Cisco Security Manager Servers

    Hello ...
    We have a CSM implementation in Europe to manage European firewalls and are getting ready to install a second unit in the U.S. to manage U.S. firewalls. Is there any capability to connect these two implementations to provide any level of backup or failover? What do we do when the Asia Pacific folks want CSM for their firewalls?
    -Bob

    This reference configuration guide will give you details about the CSM failover.
    http://www.cisco.com/en/US/products/ps6498/products_installation_guide_chapter09186a00806c399c.html

  • Consolidate ports for multiple managed servers

    Hello, say I've got two managed servers on a single machine - A and B. Each is running a different app in its own jvm on separate ports. Now what I'd like to do is be able to access both apps via the same port..just with different context paths like this:
    http://myserver/a/ would go to the managed server A app
    http://myserver/b/ would go to the manged server B app
    I don't want to put apache or anything else in front of them to do this. I want to know if weblogic itself provides a way to do it either through config or admin server somehow. Thanks for any ideas.

    Ports must be unique when running on the same machine
    A front controller (which do not want to use) is the way to do it.

  • What is the Ideal Production Setup For One Admin and 4 Managed Servers

    Dear Experts
    I will be starting with production setup including one Admin server and 4 managed servers in one single domain.
    I am thinking of creating a single node environment(no clusters) as the machine has following configuration
    OS : Windows Server 2008 R2 Datacenter
    RAM : 48 GB
    System Type : 64 bit
    Processor : Intel(Xenon) 4 processors [email protected]
    Can you please let me know if this configuration would suffice for the 4 managed servers if i assign Xmx and Xms as 4096 and Heap Space as 1024 to all the Managed Servers.
    It is very urgent and i need to convey to the Infrastructure team if harware procurement is required.
    We are looking at somewhere around 300 concurrent users(maximum load) and 100(minimum load) at a given point of time.
    Please reply ASAP.
    Thanks in advance
    Edited by: Abhinav Mittal on Apr 23, 2013 7:58 PM
    Edited by: Abhinav Mittal on Apr 23, 2013 8:03 PM

    Heap size must be calculated according to the applications that are been deployed on each JVM.
    With no deployments, you dont need more than 256k for managed servers heap size and 512k for adminserver. As biggest its your heap size, longer will take your garbage collection. And if you can prevent it, better do it.
    Kinds,
    Gabriel Abelha

  • How to start managed servers in parallel?

    Hello everyone,
    I am developing a wlst script that would start all managed servers on a particular machine (machine_name should be provided) from the admin server side. The script works fine. However, since there were some domains that have 25+ managed servers for a single machine, it takes some time to start all of them in sequence. Is there a way to trigger a start command for each of the managed servers that I need to start just like what the node manager does when i start them through admin console? Something like triggering parallel processes running on background. Here is my code snippet:
                    #It focuses only on all managed servers defined within the listen address provided
                    if (server_listenaddress == managed_server) and (server_name != admin_name):
                            if (execute_command == "start"):
                                    print 'About to start',server_name,'on',server_listenaddress,'...'
                                    print
                                    try:
                                            start(server_name)
                                            print
                                            state(server_name,'Server')
                                            print
                                            nmDisconnect()
                                    except WLSTException:
                                            print 'Server instance',server_name,'could not be started. Skipping this server..'
                                            print
                                            state(server_name,'Server')
                            else:
                                    print 'About to stop',server_name,'on',server_listenaddress,'...'
                                    print
                                    try:
                                            shutdown(server_name,force='true')
                                            print
                                            state(server_name,'Server')
                                            print
                                    except WLSTException:
                                            print 'Server instance',server_name,'could not be stopped. Skipping this server..'
                                            print
                                            state(server_name,'Server')
                    elif (server_name == admin_name):
                            #It skips to restart the admin server since this script it only to restart managed servers.
                            print 'Server',server_name,'is the admin server. Skipping...'
                            print
                    else:
                            print 'Managed server',server_name,'is not configured with',managed_server,'listen address. Skipping this server..'
    Thanks in advance for all your help!!
    regards,
    Rustan

    Works perfectly, thanks!!!
    In summary, I just modified this line:
    start(server_name)
    and changed it to:
    start(server_name, block='false')
    In Admin Console, it is set to false but in WLST, it is defaulted to true so we need to explicitly set it to false.
    "Oracle Fusion Middleware Oracle WebLogic Scripting Tool, block is always set to true."

  • How many managed Servers do you need?

    Hi,
    One thing that has come up time and time again, is when trying to think about a new project and a new WL domain, is trying to know how many WL Managed Servers do you need?
    Does BEA have some sort of metrics which says ok for this amount of input we recommend you having 4 managed servers on 4 single boxes?
    And is there think on have 2 managed servers on 1 box or 2 managed servers on two boxes?
    Any Help Appreciated.
    Kind Regards,
    Alistair.

    Hi :-D
    I don't believe BEA have guide lines on how many Managed servers are required based on Metrics. You could look at some performance evaluations but it's really only relevant if your application acts in the same way.
    Cheers,
    Doug.

  • Run Admin Server with multiple Managed Servers each using different userid?

    We currently run separate WebLogic domain instances for each business application in a Unix environment. Each one is created using a unix userid unique to that application and which owns all the files and is used to run the process when that particular WebLogic instance is started up. We have run this way for a while.
    I am considering altering our approach to the one that is recommended, i.e. in our Production environment we would run a single Admin instance with numerous managed servers. One issue I'm stuck on is the fact that in our current environment, each application has a different unix userid that owns the files making up the WebLogic domain instance and that WebLogic instance is run under that userid.
    I've investigated and experimented using WebLogic 10.3 preview and WebLogic 10.0, but I haven't been able to determine what I have to do to make each managed server's files and processes belong to a different unix userid, if that is even possible.
    Is there a way, using the recommended approach, where there is a single Admin instance that has multiple managed servers whose files and processes are owned by different unique, unix userids?
    If not, how would you separate access to each of the Managed Servers so that the programmers who maintain them don't have access to Managed Servers that they are not responsible for?
    Thanks for any help or suggestions.....

    Hi:
    I played with this stuff and I found that this will work, without the Location elements:
    <IfModule mod_weblogic.c>
    MatchExpression /app1 WebLogicHost=server1|WebLogicPort=7003
    MatchExpression /app2 WebLogicHost=server2|WebLogicPort=7003
    </IfModule>
    Also this will work too, with no entries inside the IfModule element:
    <Location /app1 >
    SetHandler weblogic-handler
    WebLogicHost server1
    WebLogicPort 7003
    </Location>
    <Location /app2 >
    SetHandler weblogic-handler
    WebLogicHost server2
    WebLogicPort 7003
    </Location>

  • Multiple SOA Managed Servers required

    Hi
    By default when we create a domain , we are provided with a managed server named (soa_server1) which we use for development. But in production/E2E T we may require more than one soa managed servers which should be added on to a cluster and load balance the request.
    Is there any means i can create more soa servers in a domain after the initial domain build.?
    Also do we have multiple em consoles or single em constitute all the soa managed server partitions?
    Please help.
    thanks, Sesha

    creating Multiple SOA Managed Servers in the same domain on 11.1.1.3 ver
    Regards,
    Anuj

  • Multiple servers on a single machine

    Hi,
    Can multiple server processes be run on a single machine?
    I wish to compile each server module independently and run them individually so
    that if one goes down,the other processes doesn't affect.
    Can we start all the server modules using single tmboot command?
    How can we write a bea configuration file that suits the above requirements?
    Please suggest me on this.

    Subhash,
    It is normal to have more than one Tuxedo server process running on a
    machine, exactly as you describe. In fact, if you include the system
    supplied servers that run (BBL, etc.) then all Tuxedo applications have
    more than 1 server.
    I suggest that you take a look at the Bankapp tutorial that comes with
    Tuxedo, this (and the associated documentation) should give you
    step-by-step answers to all your questions.
    Regards,
    Peter.
    subhash wrote:
    Hi,
    Can multiple server processes be run on a single machine?
    I wish to compile each server module independently and run them individually so
    that if one goes down,the other processes doesn't affect.
    Can we start all the server modules using single tmboot command?
    How can we write a bea configuration file that suits the above requirements?
    Please suggest me on this.

  • Multiple Managed servers front-ended by 1 OHS instance

    Hi ,
    I have 2 different domains having 1 Managed server in each of them , MS1 and MS2 and they are not clustered . Both have the same webcontext app /cs .
    Is it possible that both these managed servers can be front-ended by a single OHS instance ?
    Please let me know if that is possible and how to achieve the same .
    What I have tried is putting the following set of entries in mod_wl_ohs.conf file :
    <IfModule weblogic_module>
    <Location /cs>
    SetHandler weblogic-handler
    PathTrim /cs
    DynamicServerList Off
    WebLogicCluster host1:port1,host1:port2
    </Location>
    <Location /adfAuthentication>
    SetHandler weblogic-handler
    PathTrim /adfAuthentication
    DynamicServerList Off
    WebLogicCluster host1:port1,host1:port2
    </Location>
    </IfModule>
    Restarted OHS server and then launching http://ohs-host:port/cs shows the login page and after entering the credentials when submit button is clicked , it goes back to the OHS Home page .
    Not sure what other configuration has to be done to achieve this .
    Please share your inputs .
    Thanks,
    Srinath

    Hi Kartheek ,
    mod_proxy_balancer.so is not OOTB available with OHS 11g ,and when using the mod_proxy module all the requests end up going to the first server listed in the module block. Here is httpd.conf :
    <IfModule mod_proxy.c>
    ProxyPass /cs http://hostname1:port1/cs
    ProxyPassReverse /cs http://hostname1:port1/cs
    ProxyPass /adfAuthentication http://hostname1:port1/adfAuthentication
    ProxyPassReverse /adfAuthentication http://hostname1:port1/adfAuthentication
    ProxyPass /cs http://hostname1:port2/cs
    ProxyPassReverse /cs http://hostname1:port2/cs
    ProxyPass /adfAuthentication http://hostname1:port2/adfAuthentication
    ProxyPassReverse /adfAuthentication http://hostname1:port2/adfAuthentication
    </IfModule>
    Is there anything that I have missed out or has to be done to get the servers Load balanced ?
    Thanks,
    Srinath

  • Managed servers on multiple platforms?

    Hi,
    I was wondering if all of my managed servers in a Weblogic domain have to be running on the same platform. For example, can I mix Solaris/SPARC and Linux/x86 boxes within the same domain such that some remote managed servers in the domain are different? In the WL documentation, it mentions that all WLS instances in a domain must be running the same version of WLS itself, but it doesn't mention the underlying OS or hardware. I'm assuming that since everything is running in a JDK, it's OK to do, especially since I'm using a generic WLS installer for UNIX platforms.
    Install WebLogic Server on the machines on which you want to host Managed Servers for the WebLogic domain.
    Note:
    All WebLogic Server instances within a WebLogic domain must run the same version of the WebLogic Server software.
    Thanks in advance for your help.

    Hi Kent,
    It should work fine.
    This kind of mixes are generally not recommended in order to avoid conflicts due to packages specific for each OS, but should not be the case of the generic installer.
    The generic installer is truly generic to all OS platforms. Note that you must comply with the published supported platforms (OS, chip set, etc).
    Sinice Java is platform independent, there is no distinction between a Java application running on Linux and the same application running on Windows. A Java application is the same and can be run on any OS bit version of any flavor without a single change.
    At its root, WebLogic Server is a Java application, nothing more, nothing less. So, think of WebLogic Server as a Java application that is run like any other Java application by invoking the main method. In WebLogic Server the main method is in the weblogic.Server class. So, to start WebLogic Server we use the java command, the same as for any other Java application:
    java <MEM_ARGS> -cp <CLASSPATH> <JAVA_OPTIONS> weblogic.Server
    As mentioned in your post, make sure the JVM is the same (JVM mixtures in a cluster are not supported).
    -Cris

  • Multiple managed servers, Multiple machines and Multiple clusters

    Hi,
    I have couple of applications to be deployed in high availabliity. I
    have been a Tomcat/Apache guy so far. Yesterday night I read the whole admin doc
    and tried some installations on the boxes. But have some confusion here.
    Since our application is getting commercialised and I like to have 12 managed
    serves on each of the three big linux servers and one windows machine as admin
    server port 9002. 18 for each application in clustered environment. cluster of
    18 for each application.
    FIRST CONFUSION is
    I want to use only one domain name. So I install weblogic81
    on win box and call it dls and then I find out that I need to install weblogic81
    as good as the one on win box on linux servers, not surpised, but during the installation
    when it asked me for a domain name I was confused. No option to join the existing
    domain that I created on my winbox.
    Why??? So I type dls again.
    Is there a way not to do all this as it may be creatign another domain and just
    start nodemanager and not install domain at all ?
    SECOND CONFUSION is
    When I was installing weblogic on win machine as admin server. I was given
    options of adding managed servers and clusters amd machines. So do we need to
    have all the managed servers already running before I add them here or I can do
    it later.
    Thanks n Advance.
    Vivke

    http://www.rittmanmead.com/2010/07/obiee-11gr1-scaleout-clustering-and-high-availability/
    hope it helps

  • Use Admin Server to Manage multiple managed servers through Nodemanager

    hi guys,
    Iam trying to simulate the production environment for a Weblogic based application.
    I want to use one Admin Server(adminServer) to control 2 managed servers(weblogic,Bizarro).
    adminServer & weblogic sit on windows machine (prod1) and Bizarro sits on OakStage(unix
    machine).
    I have nodeManagers running on both machines. They were started using the default
    start scripts that were provided.
    I can sucessfully start&stop instance weblogic (the instance that resides on the
    same machine as adminServer). When I try to start Bizarro i get the following
    error in the console
    <Oct 18, 2002 7:59:22 AM PDT> <Error> <NodeManager> <Could not start server 'Bizarro'
    via Node Manager - reason: '[SecureCommandInvoker: Could not create a socket to
    the NodeManager running on host '192.168.0.97:5555' to execute command 'online
    Bizarro', reason: Operation timed out: connect. Ensure that the NodeManager on
    host '192.168.0.97' is configured to listen on port '5555' and that it is actively
    listening]'>
    but iam sure node manager is running on port 5555 on that box.
    Here is my config.xml file. Is there something Iam missing?
    I have also modified the hosts file to only have the ip address of the admin server.
    <?xml version="1.0" encoding="UTF-8"?>
    <!--If your domain is active, please do not edit the config.xml file. Any changes
    made to that file while the domain is active will not have any effect on the domain's
    configuration and are likely to be lost. If your domain is inactive, you may edit
    this file with an XML editor. If you do so, please refer to the BEA Weblogic Server
    Configuration Reference documentation available from http://edocs.bea.com/wls/docs61/reference.html.
    In general, we recommend that changes to your configuration file be made through
    the Administration Console.-->
    <Domain Name="adminDomain">
    <Security Name="adminDomain" PasswordPolicy="wl_default_password_policy" Realm="wl_default_realm"/>
    <PasswordPolicy Name="wl_default_password_policy"/>
    <FileRealm Name="wl_default_file_realm"/>
    <StartupClass ClassName="com.ias.hub.weblogic.WeblogicStartup" Name="hubStartup"
    Targets="weblogic"/>
    <CustomRealm ConfigurationData="user.filter=(&(uid=%u)(objectclass=person));user.dn=ou=people,
    o=beasys.com;server.principal=uid=admin, ou=Administrators, ou=TopologyManagement,
    o=NetscapeRoot;membership.filter=(&(uniquemember=%M)(objectclass=groupofuniquenames));group.filter=(&(cn=%g)(objectclass=groupofuniquenames));server.host=ldapserver.example.com;group.dn=ou=groups,
    o=beasys.com" Name="defaultLDAPRealmForNetscapeDirectoryServer" Notes="This is
    provided as an example. Before enabling this Realm, you must edit the configuration
    parameters as appropriate for your environment." Password="{3DES}CqUY0ZB2q6DOFOH3DpKGnQ=="
    RealmClassName="weblogic.security.ldaprealmv2.LDAPRealm"/>
    <Server ListenPort="9000" Machine="Prod1" Name="weblogic" StdoutDebugEnabled="true"
    StdoutSeverityLevel="64">
    <ServerStart ClassPath="my correct claspath" Name="weblogic" OutputFile="weblogic.log"/>
    <SSL ListenPort="9001" Name="weblogic"/>
    <ServerDebug Name="weblogic"/>
    <KernelDebug Name="weblogic"/>
    <Log FileName="weblogic.log" Name="weblogic"/>
    <ExecuteQueue Name="default" ThreadCount="15"/>
    <WebServer LogFileName="./config/adminDomain/logs/access.log" LoggingEnabled="true"
    Name="weblogic"/>
    </Server>
    <JDBCConnectionPool CapacityIncrement="2" DriverName="weblogic.jdbc.oci.Driver"
    InitialCapacity="15" LoginDelaySeconds="1" MaxCapacity="15" Name="IasPool" Properties="user=stage2;password=******;server=ORCL_STAGE.INTERASSET.COM"
    RefreshMinutes="25" Targets="weblogic" TestTableName="DUAL" URL="jdbc:weblogic
    racle"/>
    <SNMPAgent Name="adminDomain"/>
    <Application Deployed="true" Name="certificate" Path=".\config\adminDomain\applications">
    <WebAppComponent Name="certificate" Targets="adminServer" URI="certificate.war"/>
    </Application>
    <JDBCDataSource JNDIName="IAS_DATA_SOURCE" Name="IasDataSource" PoolName="IasPool"
    Targets="weblogic"/>
    <Application Deployed="true" Name="DefaultWebApp" Path=".\config\adminDomain\applications">
    <WebAppComponent Name="DefaultWebApp" Targets="adminServer" URI="DefaultWebApp"/>
    </Application>
    <CustomRealm ConfigurationData="user.filter=(&(uid=%u)(objectclass=person));user.dn=ou=people,
    dc=example, dc=com;server.principal=cn=Manager, dc=example, dc=com;membership.filter=(&(uniquemember=%M)(objectclass=groupofuniquenames));group.filter=(&(cn=%g)(objectclass=groupofuniquenames));server.host=ldapserver.example.com;group.dn=ou=groups,
    dc=example, c=com" Name="defaultLDAPRealmForOpenLDAPDirectoryServices" Notes="This
    is provided as an example. Before enabling this Realm, you must edit the configuration
    parameters as appropriate for your environment." Password="{3DES}CqUY0ZB2q6DOFOH3DpKGnQ=="
    RealmClassName="weblogic.security.ldaprealmv2.LDAPRealm"/>
    <Machine Name="Prod1">
    <NodeManager Name="Prod1"/>
    </Machine>
    <Application Deployed="true" Name="entity" Path=".\config\adminDomain\applications">
    <EJBComponent Name="entity" Targets="weblogic" URI="entity.jar"/>
    </Application>
    <Application Deployed="true" Name="hub" Path=".\config\adminDomain\applications">
    <WebAppComponent Name="hub" Targets="weblogic" URI="hub"/>
    </Application>
    <Server ListenAddress="192.168.0.97" ListenPort="7000" Machine="OakStage" Name="Bizarro">
    <ServerStart ClassPath="my correct classpath" Name="Bizarro" OutputFile="bizarro.log"/>
    <SSL Name="Bizarro"/>
    <ServerDebug Name="Bizarro"/>
    <KernelDebug Name="Bizarro"/>
    <Log Name="Bizarro"/>
    <WebServer Name="Bizarro"/>
    </Server>
    <Realm FileRealm="wl_default_file_realm" Name="wl_default_realm"/>
    <ApplicationManager Name="adminDomain"/>
    <CustomRealm ConfigurationData="server.host=ldapserver.example.com;membership.scope.depth=1;microsoft.membership.scope=sub;membership.filter=(|(&(memberobject=%M)(objectclass=memberof))(&(groupobject=%M)(objectclass=groupmemberof)));group.dn=ou=Groups,
    o=ExampleMembershipDir;group.filter=(&(cn=%g)(objectclass=mgroup));server.principal=cn=Administrator,
    ou=Members, o=ExampleMembershipDir;user.dn=ou=Members, o=ExampleMembershipDir;user.filter=(&(cn=%u)(objectclass=member))"
    Name="defaultLDAPRealmForMicrosoftSiteServer" Notes="This is provided as an example.
    Before enabling this Realm, you must edit the configuration parameters as appropriate
    for your environment." Password="{3DES}CqUY0ZB2q6DOFOH3DpKGnQ==" RealmClassName="weblogic.security.ldaprealmv2.LDAPRealm"/>
    <JTA Name="adminDomain"/>
    <Server ListenPort="7000" Name="adminServer" NativeIOEnabled="true" TransactionLogFilePrefix="config/adminDomain/logs/">
    <ServerStart Name="adminServer"/>
    <Log FileName="config/adminDomain/logs/weblogic.log" Name="adminServer"/>
    <ServerDebug Name="adminServer"/>
    <ExecuteQueue Name="default" ThreadCount="15"/>
    <KernelDebug Name="adminServer"/>
    <WebServer DefaultWebApp="DefaultWebApp" LogFileName="./config/adminDomain/logs/access.log"
    LoggingEnabled="true" Name="adminServer"/>
    <SSL Enabled="true" ListenPort="7005" Name="adminServer" ServerCertificateChainFileName="config/adminDomain/ca.pem"
    ServerCertificateFileName="config/adminDomain/democert.pem" ServerKeyFileName="config/adminDomain/demokey.pem"/>
    </Server>
    <UnixMachine Name="OakStage">
    <NodeManager ListenAddress="192.168.0.97" Name="OakStage"/>
    </UnixMachine>
    <Log FileName="adminDomain.log" Name="adminDomain"/>
    </Domain>
    Thanks guys
    regards
    syd

    Can this be done when you set up your domain along with admin and managed servers the very first time ? Even if you set up a domain with bunch of managed servers why does the library still get installed on admin server??? Also, for the method you described dont we have to update targets for statup and shutdown classes and work managers?
    Also, what is the other method to do it from the console?
    METHOD 2 (Other than the one you described- Please tell me if this is correct method and if we need to go to till level)
    Step1:
    I went to deployments base_domain (in admin console) > deployments chose each library and changed targets manually and activate the changes
    Step2
    Go to Startup and shutdown classes and change targets there
    Step 3
    Go to work managers and change targets there.
    Please let me know
    Edited by: user9021545 on May 12, 2011 10:18 AM

  • Clustered enviroments -Starting/Stopping Managed servers, NodeManager & Admin server from single node

    Hi,
    We have 5 node Weblogic cluster. At the time of some mass activities like patching we have to stop all our managed, Admin Servers and node manager and it takes a lot of time to do this by logging in to all 5 managed servers and stopping all components. Though we have node manager configured so we can stop managed servers from console itself, but still have to login to each server to stop NodeManager and Oracle Http Servers.
    Things become worse when wee have to shutdown almost 15-20 instances.
    Is there a way (using wlst or shell script) that we can do all these tasks from by logging in to just one server?
    Thanks,
    Suraj

    The simple code below would shutdown all the running Servers. Some of the APIs for ex MBeanHome are deprecated..still work though..if your concerned about that..I am working on the same using JMX API..if you want I could share that too. And also as described in the below link..you can Cluster stop and start using WLST commands.  Managing the Server Life Cycle - 12c Release 1 (12.1.1)
    <This code is from Oracle Weblogic documentation>
    import java.util.Set;
    import java.util.Iterator;
    import java.rmi.RemoteException;
    import javax.naming.Context;
    import javax.management.ObjectName;
    import java.io.*;
    import java.net.*;
    import weblogic.jndi.Environment;
    import weblogic.management.MBeanHome;
    import weblogic.management.WebLogicMBean;
    import weblogic.management.configuration.ServerMBean;
    import weblogic.management.runtime.ServerRuntimeMBean;
    import weblogic.management.runtime.ServerStates;
    import weblogic.management.WebLogicObjectName;
    public class ServerStopper {
      public static void stop() throws Exception {
        MBeanHome home = null;
        //url of the Admin server
        String url = "t3://localhost:7001";
        String username = "weblogic";
        String password = "welcome1";
        ServerRuntimeMBean serverRuntime = null;
        Set mbeanSet = null;
        Iterator mbeanIterator = null;
        try {
          // Set ContextClassloader to prevent assertions
          URL[] urls = { new File("/").toURL() };
          Thread.currentThread().setContextClassLoader(new
             URLClassLoader(urls));
          Environment env = new Environment();
          env.setProviderUrl(url);
          env.setSecurityPrincipal(username);
          env.setSecurityCredentials(password);
          Context ctx = env.getInitialContext();
          home = (MBeanHome)
               ctx.lookup("weblogic.management.adminhome");
          mbeanSet = home.getMBeansByType("ServerRuntime");
          mbeanIterator = mbeanSet.iterator();
          while(mbeanIterator.hasNext()) {
            serverRuntime = (ServerRuntimeMBean)mbeanIterator.next();
            if(serverRuntime.getState().equals(ServerStates.RUNNING)){
                serverRuntime.shutdown();
        } catch (Exception e) {
          e.printStackTrace();

  • Multiple RMI servers in single JVM

    Hi,
    I have a RMI server listening to requests from internal network as well as external network. RMI returns the hostname as part of the stub. So to ensure that the subsequent RMI calls work fine I need to ensure that jama.rmi.hostname is set to correct value.
    With 2 network IPs on 1 machine (internal & external), one option was to use a domain name as hostname and set it as java.rmi.hostname. Unfortunately, my client is not allowing use of DNS. So the hostname can be set only as an IP address.
    Is there some way I can start 2 RMI servers in single JVM. While starting first one I can set hostname as internal IP and then while starting the other one I set hostname as external IP.
    Problem is I don't know if such a solution can be setup. I read somewhere that from jdk1.4, System.setProperty("java.rmi.server.hostname", "172.25.17.41"); will set hostname dynamically. So all future requests will use the latest hostname.
    Important thing is some way to make sure both networks can connect to my JVM through RMI.

    I get it, you're going down the path I hate. I have undone this so many times ... (essential when deploying RMI Proxies).
    Don't know why your intranet clients can't connect, unless it's the local binding of the server socket.
    If you must explore this horrible kludge around a Sun kludge (and overload the SF mechanism even further), you may as well go the whole hog and have the SSF corresponding to each CSF bind its ServerSocket to the local address that you're going to embed in the CSF. Then you really know who can connect and who can't.
    When writing SFs you need to think about what equality of socket factories really means. It only needs to imply that both socket factories being compared observe the same superimposed protocol (e.g. SSL), or that they both don't superimpose a protocol at all, so outbound or incoming calls really really can share the same port.
    SF equality generally doesn't need to extend as far as whether the embedded host names (in your case - ugh!) are the same, or the port numbers if you want go the whole hog and bypass the stub's remote reference info altogether.

Maybe you are looking for

  • Error while starting BI Server.....

    hi, I installed BI on my machine, all the servers are running except BI Server. It is giving error - 1- Error outside of Presentation Catalog occurred. [2013-05-17T12:19:38.000+05:30] [OBIPS] [ERROR:16] [] [saw.sqlNodeCacheMgr.cleanExpired] [ecid: 00

  • Trouble installing Adobe Flash 11

    I have been at this four four days now. I have Windows XP, 32 bit. I have IE 8, 32 bit. I want to install Flash 11, (32 bit I assume). I have Norton 360. I have read every past post and still nothing. I have tried your Windows procedure many times. I

  • Installing SQL 2012 SP2 - The specified module could not be found. (Exception from HRESULT: 0x8007007E)

    Hi, I am trying to install the SQL 2012 SP2 in one of the servers. I am getting the error as : TITLE: SQL Server Setup failure. SQL Server Setup has encountered the following error: The specified module could not be found. (Exception from HRESULT: 0x

  • Difference between mac and windows

    I'm a beginner user of Adobe Presenter in Japan. I don't know why the price of this app differs between for Windows($499.00) and for Mac(Video Express:$1.99). Although I tried using both version(Win and Mac), I confermed no differences in functions,

  • To extract .BIN files

    We have downloaded the the following file from SAP Market place. Can you provide me how to extract these files. Linux x86-64 (64-bit) /Oracle/Oracle 10.2.0.4/Database RDBMS/Linux x86-64 (64-bit)/ Patchset_10204_Linux-x86-64aa.bin Patchset_10204_Linux