Application Server Memory Requirements from 4.6C to ECC 6.0

The projected physical memory increase for the Application servers from 46C to ECC6 appears to between 45% - 66%.  This is based on the delta notes 517085, 752532, 778774 and 901070.  It also appears from a presentation from Christian Oehler called "Transition and Upgrade to SAP ERP" to be the case.
I cannot find anything in the above referenced SAP notes that indicates where this additional memory is consumed, so I'm concerned SAP is factoring in new functionality and/or JAVA stack in this.  Furthermore we have upgraded our HR system from 46C to ECC6 sometime ago and included JAVA and saw around a 20% memory increase.
We are doing a strictly technical upgrade and are not turning on new functionality at this point (no JAVA stack), we are also not increasing user population.  Our Test Systems, which have production data volumes do not reflect any growth in this area,  but we are not stressing it with user load.
Does anyone have an idea of what we could/should see given the nature of our upgrade?  We are preparing for a 25% increase in App server memory, but not for 50% plus.  We are not doing a sizing exercise since this is just a technical upgrade and the GLFU service has yet to start.
If anyone has any insight into what should be expected or what they have seen for memory requirements from 4.6C to ECC 6.0 Application Server sit would be greatly appreciated.
Thanks

Hi Mark,
More memory is required because ECC 6.0 is much more huge system than 4.6C. If you are planning to increase server memory by 25% only, than you can see performance problems if system will be heavyly used. But it depends mainly on number of WP and active users. 25-50% more memory is required if you are not installing J2EE addin afterwards. If you are planning to convert the database to Unicode, than you will need an additional memory....
It's not easy to say 25% will be enought or 50% is required, but I would suggest to go to 50% at least.
Jiri

Similar Messages

  • How to make upgrade from application server and not from central instance?

    Hello SAP Gurus!
    I have SAP ECC release 6.0, and I´m gonna make upgrade to enhancement package 6.06, do you know if Can I make upgrade from application server, but not from central instance?
    Thanks.

    Hi Victor,
    Upgrade process has to execute from the server where message server is running.
    So I guess it is not possible to initiate the SAP upgrade  from application server.
    Regards,
    Deepak Kori

  • Create XML file on application server (unix directory) from internal table

    Hallo everybody,
    I have got the following problem:
    I am working with <u><b>release 4.6C</b></u> and have got to create XML files from HR master data and organizational data respectively.
    This takes place in 3 steps:
    1.     Collect the data in an internal table
    2.     Convert the data to XML format using the function module 'SAP_CONVERT_TO_XML_FORMAT'
    3.     Download the data
    If I download the converted data, which are in an internal table, to the presentation server via the function module ‘WS_DOWNLOAD’ and open it with the Internet Explorer, everything is ok.
    If I download the converted data to the application server, i.e. into a unix directory via
    ‘open dataset’, ‘loop at internal table, ‘transfer working area to file’, ‘close dataset’
    and then try to open it, this is not possible, because after the last tag some unreadable characters, e.g. a square, appear that aren’t supposed to be there. That’s what my colleagues told me, for I haven’t got access to the server.
    I have no idea where these characters come from and how I can get rid of them. I guess that either I have to modify (how?) the table with the converted data before the download or I have to use another way to convert the data. For the second way I would probably have to work with an XML class or an XML interface. Unfortunately I’I am not an expert in working with classes so sample coding would have to be rather detailed.
    Here’s some more information about how I work with the conversion function module:
      call function 'SAP_CONVERT_TO_XML_FORMAT'
           exporting
                i_field_seperator    = lv_field_seperator
               i_line_header        = lv_line_header
               i_filename           = lv_xml_file
               i_appl_keep          = ' '
                i_xml_doc_name       = lv_xml_doc_name
           importing
                pe_bin_filesize      = lv_result
           tables
                i_tab_sap_data       = gt_data
           changing
                i_tab_converted_data = lt_tab_converted_data
           exceptions
                conversion_failed    = 1
                others               = 2.
    lv_field_seperator = ‘X’.
    lv_xml_doc_name = ‘Personalstammdaten Publikation’
    lv_result: type i
    gt_data: fields: PERNR, PERSG, PERSK etc.
      types:
      begin of truxs_xml_line,
        data(256) type x,
      end of truxs_xml_line.
      types:
      truxs_xml_table type table of truxs_xml_line.
    data:
    lv_tab_converted_data type truxs_xml_line,
    lt_tab_converted_data type truxs_xml_table
    open dataset lv_xml_file for output in binary mode.
    loop at lt_tab_converted_data into lv_tab_converted_data.
      transfer lv_tab_converted_data to lv_xml_file.
    endloop.
    close dataset lv_xml_file
    lv_xml_file: /usr/users/.../.../Personendaten_2004-11-02.xml
    Hope the information is detailed enough! Otherwise let me know. Thank you in advance.
    Message was edited by: Johannes Schwehm

    Hi Raja,
    tried the "TEXT" mode, but that didn't help.
    There are still characters after the last tag, that are not supposed to be there including a date that is not
    the creation date of the file.
    Thank you for your help.
    Regards
    Johannes

  • Create application server moves files from i drive to c drive?

    Hello,
    my set up:
    windows 2003
    sql server 2008
    peopletools 8.51
    application FMSC 9.1
    PS Home on I:\TFS91
    While setting up a demo system for FMSC 9.1, I noticed that the application server and process schedulers are being created on the C: drive.
    This is strange because the PS Home are on the I: drive.
    I start PSADMIN from the I drive, but every time I create an application server on the I drive it copies the application server to the C: drive.
    Why is this happening?
    PeopleSoft Application Server Administration
    1) Administer a domain
    2) Create a domain
    3) Delete a domain
    4) Import domain configuration
    q) Quit
    Command to execute (1-4, q) : 2
    Please enter name of domain to create :FSDMO911
    Configuration templates:
    1) developer
    2) large
    3) medium
    4) small
    Select config template number: 3
    Creating domain...
    Copying application server configuration files...
    Copying to [C:\Documents and Settings\tuxadmin\ps
    t\pt\8.50\appserv\FSDMO911\psappsrv.cfg]
    Stripping Annotations...
    Copying [I:] to [C:\Documents and Settings\tuxadmin\ps
    t\pt\8.50\appserv\FSDMO911\psappsrv.cfx]
    Copying Jolt repository file...
    Domain created.
    Would you like to configure this domain now? (y/n) [y] :
    Quick-configure menu -- domain: FSDMO911
    Features Settings
    ========== ==========
    1) Pub/Sub Servers : No 15) DBNAME :[FSDMO911]
    2) Quick Server : No 16) DBTYPE :[MICROSFT]
    3) Query Servers : No 17) UserId :[QEDMO]
    4) Jolt : Yes 18) UserPswd :[QEDMO]
    5) Jolt Relay : No 19) DomainID :[TESTSERV]
    6) WSL : No 20) AddToPATH :[C:\mssql\Binn]
    7) PC Debugger : No 21) ConnectID :[people]
    8) Event Notification: Yes 22) ConnectPswd:[peop1e]
    9) MCF Servers : No 23) ServerName :[]
    10) Perf Collator : No 24) WSL Port :[7000]
    11) Analytic Servers : Yes 25) JSL Port :[9000]
    12) Domains Gateway : No 26) JRAD Port :[9100]
    Actions
    =========
    13) Load config as shown
    14) Custom configuration
    h) Help for this menu
    q) Return to previous menu
    Edited by: CLUTCH DBA on Feb 9, 2010 10:44 AM

    Note, if PS_CFG_HOME variable is not set, domains configuration files are going into the user path directory +%USERPROFILE%\psft\pt\<peopletools_version>+
    Nicolas.

  • JNDI on a Sun Application Server 9.0 from a Java SE Client

    Where do I go to find a listing of property pairs I have to set to allow my Java SE application to make use of JNDI (to find Session and Entity beans)?
    This is my approach from what I have read so far:
          Context context;
          Properties properties = new Properties();
            // Assign configuration properties here.
            try {
                context = new InitialContext(properties);
            } catch (NamingException ex) {
                ex.printStackTrace();
            // Put code here to start getting references to JNDI stuff....
            // ...and other neat Java EE things. :)If anyone in-the-know can help steer me a little on this, I'd be very grateful!
    My current setup is just a netbeans development environment. I'm using the included application server.

    I receive an exception in the J2SE client when trying to do lookups.
    I have created a simple test of a bean and a JMS Queue
    package ent1;
    @Remote
    public interface HelloWorld {
      public String sayHello();
      public void sendQueueMessage(String message);
    package ent1;
    @Stateless
    public class HelloWorldBean implements HelloWorld {
      @Resource(mappedName="jms/QueueFactory")
      private QueueConnectionFactory m_QueueFactory;
      @Resource(mappedName="jms/myQueue")
      private Queue m_Queue;
      private static final Logger logger = Logger.getLogger("ent1.HelloWorldBean");
      public HelloWorldBean() {
      public String sayHello() {
        return "Hello From "+this.getClass().toString()+"!";
      public void sendQueueMessage(String message) {
        Connection conn;
        Session session;
        MessageProducer producer;
        TextMessage msg;
        try{
          conn=m_QueueFactory.createQueueConnection();
          session=conn.createSession(false,Session.AUTO_ACKNOWLEDGE);
          producer=session.createProducer(m_Queue);
          msg=session.createTextMessage(message);
          producer.send(msg);
        }catch(JMSException e){
          logger.log(Level.SEVERE,e.getMessage(),e);
          return;
        logger.log(Level.INFO,"Message '"+message+"' sent");
    }And I can connect to the bean and Queue from an enterprise application with resource injection.
    But when I try to lookup the bean or JMS QueueConnectionFactory from an J2SE client..
        InitialContext ic;
        HelloWorld hello;
        Hashtable<String, String> env = new Hashtable<String, String>();
        env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.cosnaming.CNCtxFactory");
        env.put("java.naming.provider.url", "iiop://localhost:3700");
        try{
          ic=new InitialContext(env);
          hello=(HelloWorld)ic.lookup("ent1.HelloWorld");
        }catch(NamingException ne){
        }or
        javax.jms.ConnectionFactory connectionFactory;
        try{
          ic=new InitialContext(env);
          connectionFactory=(javax.jms.ConnectionFactory)ic.lookup("jms/ConnectionFactory");
        }catch(NamingException ne){
        }I get an exception
    javax.naming.NameNotFoundException [Root exception is org.omg.CosNaming.NamingContextPackage.NotFound: IDL:omg.org/CosNaming/NamingContext/NotFound:1.0]
            at com.sun.jndi.cosnaming.ExceptionMapper.mapException(ExceptionMapper.java:44)
            at com.sun.jndi.cosnaming.CNCtx.callResolve(CNCtx.java:484)
            at com.sun.jndi.cosnaming.CNCtx.lookup(CNCtx.java:523)
            at com.sun.jndi.cosnaming.CNCtx.lookup(CNCtx.java:501)
            at javax.naming.InitialContext.lookup(InitialContext.java:392)
            at jms_j2seconsumer.Main.main(Main.java:49)
    Caused by: org.omg.CosNaming.NamingContextPackage.NotFound: IDL:omg.org/CosNaming/NamingContext/NotFound:1.0
            at org.omg.CosNaming.NamingContextPackage.NotFoundHelper.read(NotFoundHelper.java:72)
            at org.omg.CosNaming._NamingContextExtStub.resolve(_NamingContextExtStub.java:406)
            at com.sun.jndi.cosnaming.CNCtx.callResolve(CNCtx.java:470)
            ... 4 more

  • Exchange 2010 Mailbox Server Memory Requirement.

    Hi Team,
    We have 4 Mailbox server role with below configuration. CAS/HT is installed seperatly on different server. How do I calculate the RAM required for the system. System Configuration --
    HP Proliant BL460c /Dual Processor (Hexa Core) /95GB RAM.             
    No of users hosted on the server 6200, No of Active/Passive Database copies on server -- 8.  No of Mails Sent/Recived/Size on daily basis (Avg)  - 22422/6344/13075. Do we have any formula to calculate the RAM to be installed on the server.

    Hi
    http://www.msexchange.org/articles-tutorials/exchange-server-2010/management-administration/exchange-2010-sizing-cheat-sheet.html
    http://technet.microsoft.com/en-us/library/dd346700(v=exchg.141).aspx
    http://blogs.technet.com/b/exchange/archive/2009/11/09/3408737.aspx

  • Problems in starting up Application Server Control from SOA Suite

    I have an issue starting up the Application Server Control page from the SOA Suite (10.1.3.1.0) welcome page. I can open all other control pages by entering the oc4jadmin/<password> where <password> is the password specified at the time of installing (Standard Install) the SOA suite.
    Application Server Control accepts the oc4jadmin/<password>, but shows another page to "Supply Administration Credentials". The following error message is shown on the page.
    +++++++++
    This OC4J is configured to make JMX connections via RMIS and fall back to RMI if the RMIS port is not configured. The RMIS connection on the OC4J instance home on Application Server shara.SHARA_HP is configured but a connection could not be established. The JMX protocol is specified by the oracle.oc4j.jmx.internal.connection.protocol property in opmn.xml
    You are logged in as oc4jadmin.
    Enter the credentials for a cluster-wide user in the oc4j-administrators group. These credentials are needed by Application Server Control to make remote connections.
    * User Name
    * Password
    [Store Credentials} button
    ++++++++
    Has any one encountered this? Any clues where to look for things? Initially I had the problem with all the controls due to my computer name as it has an underscore ie., SHARA_HP. I had to use localhost to overcome this ie., http://localhost:8888/em
    Any help/clue would be appreciated.
    Thanks
    Maha

    At install time there is a question that asked if you would like to configure adminstration now. (Something like that). By default this is not checked. If you did not check it you cannot access enterprise manager.
    The is probably a way to configure it, but it might be faster reinstalling.
    There is a simple way to de install by going to the ORACLE_HOME/bin and run the deinstall script.
    cheers
    James

  • Why it take so long to start the SAP Web Application Server?

    As I read from the doc that starting the SAP Web Application Server will take from 25 to 40 minutes, I don't believe. But as I try it on my machine, it does take really so long. Isn't it a wonder?
    I am used to work with Tomcat, JBoss, BEA etc. None of them will take so long.

    Hi Chen,
    In a WAS I assume that it has dual stack (ABAP + JAVA)
    For the startup of a ABAP Stack it generally takes about 2 minutes or so.
    And for the WAS JAVA STACK should take around 8 to 15 minutes depending on the application, services and hardware sizing.
    The reason for the long time required for a WAS Java Stackis:
    JAVA Stack depends on three diffrent components: a) dispatcher(java) b)SDM c) Server0 process.
    Now before the execution of all these the first thing what happens is the initializastion of jcontrol which inturn initiates the java bootstrap process.
    At this moment of time the JVM environment takes some time for the loading and memory management. Once the JVM is loaded successfully then only the three compnents (SDM, dispatcher and server0) are initiated to run.
    The SDM and dispatcher do started up with a couple of services and hence require not toomuch of time.
    But the main component i.e Server0 process consumes a lot of time to startup at it requires many of the Java stack services to start before it reaches running state.
    Again the port configuration for HTTP for SDM , dispatcher , server0 and java process also takes place.
    So this was an overview for the Time required for a WAS Stack to come up in operational condition.
    Apart from this , seeing specifically to your scenario, wherein it takes 25 - 40 minutes could be an issue with the Hardaware sizing of the Server and the Sofware compnents / tools loaded. We might need to analyze it in more detail to get a clear picture.
    I hope this helps you!
    Regards,
    Prem

  • IN SM51- Need to change Application server hostname as small lock

    Dear All,
    In my SAP R3 4.6D system setup is like
    1. R3 Database server (CI+DB) with one application server(DI). In Application server SM51 transaction screen application server host name is  shows as Caps lock. But DB server hostname is in small lock. 
    In SM51 in application server
    Server names                   Host name                      Ty.
    opsssg02w_SNP_01                OPSSSG02W                       Dialog Update Backg Spool Upd2
    opsssg01w_SNP_00                opsssg01w                       Dialog Update Enqueue Backg Spool Upd2
       I want to change the Application server host name from (OPSSSG02W)  to (opsssg02w) as small lock. This is settings  required to connect SAP with Externel servers.
    Please let me know where /How to change the Application server hostname as small lock ?.
    Thanks
    Malai

    Dear Sergo Beradze,
    I am sorry I missed to Open the Dummy At last time.
    In Rz04 -> Dummy-> here application server host name is lowercase. Please find the below screen.
    Instances of OP mode      DUMMY
    Host Name    Server Name          Dia  BP BPA Spo Upd Up2 Enq Sum  Instance Profile
    opsssg02w     opsssg02w_SNP_01       6  10   -   2   2   2   -  22   \\opsssvg01w\sapmnt\SNP\SYS\profile\SNP_D01_opsssg02
    opsssg01w     opsssg01w_SNP_00       5   9   -   2   4   2   1  23   E:\usr\sap\SNP\SYS\profile\SNP_DVEBMGS00_opsssg01w
    opsssg02w_SNP_01 - Contents  below
    Installtation data :
    Host name            opsssg02w
    SAP system number    01
    Instance Details :
    Appl. server         opsssg02w_SNP_01
    Instance name        D01
    Operating sys. type  Windows NT
    Admin user
    Profile Data:
    Start profile   \\opsssg01w\SAPMNT\SNP\sys\profile\START_D01_opsssg02w
    Instance prof.  \\opsssg01w\sapmnt\SNP\SYS\profile\SNP_D01_opsssg02w
    Home directory  E:\usr\sap\SNP\D01\work
    Also add little more information on this ..
    In Application server:
    SAP MMC - Its shows the Application server hostname as Lowercase
    SAP Easy access screen -> system -> Status-> Host data-> Server name -> opsssg02w_SNP_01
    Thanks
    Malai

  • SAP ERP 2005 ECC 6.0 with Windows 2000 Application Server

    Hi,
    We are currently running SAP 4.6C in iSeries model 570 OS V5R3.
    I would like to know after upgrade from 4.6C to ERP 2005 ECC 6.0 if we will gain any performance improvement by adding Windows 2000 Application Servers in our environment.  Second Question - how much load will be taking away from the iSeries if adding one application server (Memory and CPU).
    Ramon

    Hi Ramon,
    what hardware do you use at the moment ?
    820, 870, 5xx ?
    How any CPUs ?
    How much memory ?
    You are on 4.6C ASCII right now ?
    In your case, I don't see, that Win 2003 servers help in performance, I would guess, that the CPU after the upgrade is about 60% which is still ok - then using 3-tier - especially in R3 environments is mostly not good for the performance because of the DB time increasement.
    The memory you will need is pretty the same for the iSeries.
    Regards
    Volker Gueldenpfennig, consolut.gmbh
    http://www.consolut.de - http://www.4soi.de - http://www.easymarketplace.de

  • How to Install oracle workflow and why we need Oracle Application Server

    I want to install and configure Oracle Workflow using Oracle 10g
    Please help me and guide me with the process in deatial from scratch what should i need to install
    Oracle Database
    Oracle Application server middle tier
    Oracle Content Management SDK
    Also help me how can i configuer oracle internet directory because when installing Oracle application server it requires HostName and Port No.
    I am a student
    I know just how to install oracle database 10g
    and New to oracle Application Server
    Waqar Habib

    The files at
    http://otn.oracle.com/software/products/ias/workflow/htdocs/winsoft.html
    are for Oracle Workflow version 2.6.0. Here is some information from the announcement for downloading the latest version, 2.6.3:
    Oracle Workflow 2.6.3 for Oracle Database 10g is now available for download from OTN.
    Please point your browsers to http://otn.oracle.com/software/index.html
    Currently, the availability is limited to Windows and we are working towards availability on other platforms. I will post another message as soon as it becomes available.
    The Workflow Server requires an Oracle 10g database home and the Workflow mid-tier requires an Oracle HTTP Server home - Apache Install from the Oracle 10g Companion CD. For more information please read the installation notes.

  • Error while downlaoding smartform into Application server in PDF format

    Hi friends,
    I am downlaoding Smartform to Application server in PDF format.  getting below dump while executing  
    OPEN DATASET p_filename FOR OUTPUT IN TEXT MODE ENCODING DEFAULT.
    TRANSFER i_tline TO p_filename
    CLOSE DATASET p_filename.
    if i add  " IGNORING CONVERSION ERRORS " after ENCODING DEAFULT then i am not getting dump and pdf file is creating but i am not able to see LOGO in SAP Application server ( downlaoded back from application server to my pc and checked it).
    DUMP:
    here i am getting dump saying that : You cannot convert the character set
    Runtime Error          CONVT_CODEPAGE
    Exception              CX_SY_CONVERSION_CODEPAGE
    What happened?
    While a text was being converted from code page '4102' to '4110', one of
    the following occurred:
    - an character was discovered that could not be represented in one of
    the two code pages;
    - the system established that this conversion is not supported.
    2 characters could not be represented (and thus could not converted).
    If 2 = 0, a second or a different error has occurred.
    Please Help.
    Thanks

    Hi
    I think some basis related configuartions to be done
    Try like this and inform me
    A cyclic job runs, which processes the messages seen in the SOST queue.
    Are you sure it's not the frequency of the cyclic job, rather than the
    number of messages in the queue, that you are observing? In messages
    that are queued and before the cyclic job runs, "wait for comm. service"
    is the normal status.
    If you mean that there are always 4 items queued in SOST regardless of
    the cyclic send job, then I have no ideas. I would have thought there
    was no way to do that.
    when the send job runs it just never
    picks them up & sends them, while it picks up many others. The send job
    is somehow blind to these; no error message occurs. In this case, I
    'delete' them from the queue (in SOST) and then 'undelete' (drop down
    menu -> /Go to /Deleted Items) them and then re-queue them. THEN they
    actually get picked up & sent when the next cyclic send job executes.
    Regards
    Pavan

  • Client/server vs. Application Server

    Our company has around 30 sites with each one having its own Oracle database server and file server (repository for executables of Forms6i/Reports6i). All the sites have the same applications running, i.e., the same set of programs are replicated to each site. At present we are running the applications in client/server mode (Forms6i/Reports6i runtime is installed on each client machine).
    We are also using some third party modules developed in VB/VC++.
    Now we are looking for the Centralized Solution, i.e., We want to have a Single Database Server available to all the sites all the sites are already linked with Network Leased lines).
    Now we want to know the impact of running centralized file server (located at Corporate Office site) accessible from all the sites (through same client/server mode).
    Will this solution work for us or we should move to 3-tier mode? Please suggest us the best feasible solution which can be implemented as early as possible.
    What I mean to ask in the question above is: if a good intranet connectivity is available among sites, what would be the better approach, client/server or n-tier?
    What actually would we gain by using application server in this context? Does the Data travelling is reduced from Database Server through to the Client Node in 3-tier AS approach? Does this 3-tier approach will reduce the Burden on Leased Lines? Does we gain more network resources available in 3-tier?
    What I think is that in client/server mode, the data is travelled from Database Server to Client Machine, but using Application Server, the Data from Database Server will travel upto Application Server and NOT to the Cleint machine (on browser etc.), hence reducing Network Load.
    Please clarify as your input makes a valuable role in our decision-making.

    Hello,
    I'll take a stab at this one...
    If you have enough network bandwidth, you should be fine funning in client/server mode. I have worked with clients with this same configuration. In addition to having a centralized DB, we have also centralized the forms on a network drive allowing users to access the same files and removing the need for users having to update their files locally. The biggest problem I see with this configuration, as long as you have enough band width, is that your configuration is not supported as 6i has been desupported.
    From my perspective you really don't have any choice but to upgrade your application so that you can be supported. The good news is that for the clients we have worked with upgrades have gone very smoothly. In fact recently we have started to partner with another vendor that has a tool specifically designed to upgrade Oracle Forms and it includes additional features above and beyond what you get from Oracle. This tool has drastically reduced the amount of time to complete upgrades (like going from a 2 year project to just a few weeks).
    I hate to answer this question because it is hard to answer without really getting into the details with you. The good news is once you do have a centralized DB and centralized application maintenance will be significantly easier.
    One last option you might consider that our company has done is to use Citrix. I've never used it for Oracle Forms, but for other client/server applications it has allowed out clients to web enabled their existing applications without changing them at all and also get a boost in performance. I wouldn't recommend this approach to you because what you have should be short term until you get your forms/reports upgraded.
    If you have any specific questions I can try and answer them for you. Good luck and let me know if I can be of any assistance.

  • JMS & Application Server

    hi,
    I've a problem to connect to the application server of Sun from an application.
    I don't know the initial context and the url provider :
    Properties prop = new Properties();
    prop.put (Context.INITIAL_CONTEXT_FACTORY, ??? );
    prop.put(Context.PROVIDER_URL, ??? );
    Context jndi = new InitialContext(prop);I looked for it but all I found didn't work.
    Can anyone help me please ?

    Hi,
    This might be useful to you.
    // Set initial context and URL properties
    Properties env = new Properties();
    env.put(Context.INITIAL_CONTEXT_FACTORY,
    "com.sun.jndi.cosnaming.CNCtxFactory");
    env.put(Context.PROVIDER_URL,
    "iiop://host_name:9010");
    // Create initial context and lookup
    Context initial = new InitialContext(env);
    Object obj =
    initial.lookup("java:comp/env/ejb/simple");
    SimpleHome home = (SimpleHome)
    PortableRemoteObject.narrow(obj,SimpleHome.class);
    Look into this thread as well.
    http://forum.java.sun.com/thread.jspa?messageID=413085
    4
    VJThanks for your answer. It doesn't help me very much.
    I find always over ejb but never jms. I need to connect to application server to get the connection factory.
    thanks for your help.
    Lolo

  • Migrating applciation from weblogic to oracle 9i application server(OC4J)??????

    Hi,
    I am migrating my ejb application from weblogic to oracle 9i application server.What changes are needed to be made in code and what configuration changes are required.
    In my application i use a couple of session beans wherin a session bean calls the method of the other session bean which acceses the database.I am using a jdbc thin driver for the database connection. is it possible for a session bean to call a method of another session bean which access the database??This concept works well in weblogic where the current application is running.
    The problem is that while migrating the application to the orion server, it gives an OrionCMTException ...
    memory leak..etc.
    Could any one clarify.
    Thanks in advance!!!

    Hi Avi and Harrison,
    Cease Fire avi!!!!.First of all let me clear the issue of posting the same problem twice.Well, when i mentioned the problem the first time , i found the title session bean deployment was not right and few people would look into it as it was a common problem so i thought it would be appropriate if i mentioned the title correctly , so i posted the query again with the change in title.
    Now coming to the answer for ur questions.
    The platform used is MS Windows NT.
    The (OC4J) version is 1.0.2.2.1.
    I am not using JDeveloper.
    The database is oracle 8i and i am using the thin driver.
    The beans to be deployed are stateless session beans.
    The client involved is a web client i.e a jsp application.
    The first session bean is as follows.
    import java.sql.Connection;
    import java.sql.Statement;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.util.Vector;
    import java.sql.Timestamp;
    import java.rmi.RemoteException;
    import java.util.Date;
    import javax.ejb.*;
    import javax.naming.*;
    import initcontext;
    import PrintMessage;
    import JB_B2B_ERROR_PARSER;
    * @stereotype SessionBean
    * @homeInterface DB_UTILITYHome
    * @remoteInterface DB_UTILITYRemote
    public class DB_UTILITY implements SessionBean
         private SessionContext context;
    private ResultSet rs = null;
    private Statement stmt = null;
    private Connection con = null;
    private PrintMessage print = null;
    public DB_UTILITY()
    rs = null;
    stmt = null;
    con = null;
    print = new PrintMessage();
         public Connection getConnection()throws RemoteException
              InitialContext initctx = null;
              Connection con = null;
              try
                   initctx = initcontext.getContext();
                   javax.sql.DataSource ds =
    (javax.sql.DataSource)initctx.lookup("java:comp/env/jdbc/ePool");
                   con = ds.getConnection();
    //(javax.sql.DataSource)initctx.lookup("java:comp/env/jdbc/ePool");
    catch(NamingException namingexception)
    print.printUserMessage("DB_UTILITY", (new
    Date()).toString(), "", namingexception);
    throw new
    EpoolException(JB_B2B_ERROR_PARSER.getErrorMessage("AppError",
    "Epool-10001", "DB_UTILITY.getConnection"));
    catch(SQLException sqlexception)
    print.printUserMessage("DB_UTILITY", (new
    Date()).toString(), "", sqlexception);
    throw new
    epoolException(JB_B2B_ERROR_PARSER.getErrorMessage("DBError",
    JB_B2B_ERROR_PARSER.getSQLCode(sqlexception),
    "DB_UTILITY.getConnection"));
    catch(Exception exception)
    print.printUserMessage("DB_UTILITY", (new
    Date()).toString(), "", exception);
    throw new
    epoolException(JB_B2B_ERROR_PARSER.getErrorMessage("EpoolError",
    "Epool10005", "DB_UTILITY.getConnection"));
              return con;
         public String getDate()throws RemoteException
              String Date=null;
              try
                   con=getConnection();
                   stmt=con.createStatement();
                   rs=stmt.executeQuery("SELECT
    TO_CHAR(SYSDATE,'YYYY-MM-DD HH:MI:SS') FROM DUAL");
                   while(rs.next())
                        Date=rs.getString(1);
                   stmt.close();
                   con.close();
    catch(SQLException sqlexception)
         print.printUserMessage("DB_UTILITY", (new
    Date()).toString(), "", sqlexception);
    throw new
    EpoolException(JB_B2B_ERROR_PARSER.getErrorMessage("DBError",
    JB_B2B_ERROR_PARSER.getSQLCode(sqlexception), "DB_UTILITY.getDate"));
    catch(Exception exception)
         print.printUserMessage("DB_UTILITY", (new
    Date()).toString(), "", exception);
    throw new
    EpoolException(JB_B2B_ERROR_PARSER.getErrorMessage("epoolError",
    "Epool10005", "DB_UTILITY.getDate"));
    finally
    try
    if(con != null && !con.isClosed())
    con.close();
    catch(Exception exception2)
    stmt = null;
    con = null;
              return Date;
         public void setSessionContext(SessionContext context)
              this.context = context;
         public void ejbActivate()
         public void ejbPassivate()
         public void ejbCreate()
         public void ejbRemove()
    Also the xml files are as follows.
    web.xml
    <?xml version="1.0"?>
    <!DOCTYPE web-app PUBLIC "-//Sun Microsystems,
    Inc.//DTD Web Application 2.2//EN"
    "http://java.sun.com/j2ee/dtds/web-app_2_2.dtd">
    <web-app>
    <!-- A friendly name for this web application, this name can be used in visual development environments, for instance -->
    <display-name>AddressBook Web Application</display-name>
    <!-- A human-readable description of this web application -->
    <description>Web module that contains an HTML welcome page, and 4 JSP's.</description>
    <!-- The file(s) to show when no file is specified, i.e. only the directory is specified. -->
    <welcome-file-list>
    <welcome-file>B2B_COUNTRY_CODE.jsp</welcome-file>
    </welcome-file-list>
    <ejb-ref>
    <ejb-ref-name>SB_B2B_COUNTRY_CODEHome</ejb-ref-name>
    <ejb-ref-type>Session</ejb-ref-type>
    <home>SB_B2B_COUNTRY_CODEHome</home
    <remote>SB_B2B_COUNTRY_CODERemote</remote>
    </ejb-ref></web-app>
    Application.xml
    <?xml version="1.0"?>
    <!DOCTYPE application PUBLIC "-//Sun Microsystems, Inc.//DTD J2EE Application 1.2//EN" "http://java.sun.com/j2ee/dtds/application_1_2.dtd">
    <application>
    <display-name>Country Code</display-name>
    <module>
    <ejb>epool_CountryCode-ejb.jar</ejb>
    </module>
    <module>
    <web>
    <web-uri>epool_CountryCode-web.war</web-uri>
    <context-root>/epool_CountryCode-web</context-root>
    </web>
    </module>
    </application>
    ejb-jar.xml:
    <?xml version="1.0"?>
    <!DOCTYPE ejb-jar PUBLIC "-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 1.1//EN" "http://java.sun.com/j2ee/dtds/ejb-jar_1_1.dtd">
    <ejb-jar>
    <description>epool_CountryCode</description>
    <enterprise-beans>
    <session>
    <display-name>CountryCode Session
    Bean</display-name>
    <ejb-name>SB_B2B_COUNTRY_CODERemote</ejb-name>
    <home>SB_B2B_COUNTRY_CODEHome</home>
    <remote>SB_B2B_COUNTRY_CODERemote</remote>
    <ejb-class>SB_B2B_COUNTRY_CODE</ejb-class>
    <session-type>Stateless</session-type>
    <ejb-ref>
    <description>EJB Epool DButility</description>
         <ejb-ref-name>DB_UTILITYRemote</ejb-ref-name>
                   <ejb-ref-type>Session</ejb-ref-type>
                   <home>DB_UTILITYHome</home>
                   <remote>DB_UTILITYRemote</remote>
              </ejb-ref>
              <ejb-ref>
              <description>EJB Entity Bean</description>
    <ejb-ref-name>EB_B2B_COUNTRY_CODERemote</ejb-ref-name>
                   <ejb-ref-type>Entity</ejb-ref-type>
                   <home>EB_B2B_COUNTRY_CODEHome</home>
              <remote>EB_B2B_COUNTRY_CODERemote</remote>
              </ejb-ref>
    </session>
    <session>
    <display-name>DbUtility Session Bean</display-name>
    <ejb-name>DB_UTILITYRemote</ejb-name>
    <home>DB_UTILITYHome</home>
    <remote>DB_UTILITYRemote</remote>
    <ejb-class>DB_UTILITY</ejb-class>
    <session-type>Stateless</session-type>
    </session>
    <entity>
    <ejb-name>EB_B2B_COUNTRY_CODERemote</ejb-name>
         <home>EB_B2B_COUNTRY_CODEHome</home>
         <remote>EB_B2B_COUNTRY_CODERemote</remote>
         <ejb-class>EB_B2B_COUNTRY_CODE</ejb-class>
         <persistence-type>Container</persistence-type>
         <prim-key-class>EB_B2B_COUNTRY_CODEPK</prim-key-class>
         <reentrant>False</reentrant>
         <cmp-field>
         <field-name>country_code_desc</field-name>
         </cmp-field>
         <cmp-field>
         <field-name>phone_format_flag</field-name>
         </cmp-field>
         <cmp-field>
         <field-name>country_code</field-name>
         </cmp-field>
         <cmp-field>
         <field-name>active_date</field-name>
         </cmp-field>
         <cmp-field>
         <field-name>date_created</field-name>
         </cmp-field>
         <cmp-field>
         <field-name>active_flag</field-name>
         </cmp-field>
         <cmp-field>
         <field-name>country_phone_code</field-name>
         </cmp-field>
         <cmp-field>
         <field-name>country_tax_percent</field-name>
         </cmp-field>
         <cmp-field>
         <field-name>sort_order</field-name>
         </cmp-field>
         <cmp-field>
         <field-name>date_modified</field-name>
         </cmp-field>
         <cmp-field>
         <field-name>user_created</field-name>
         </cmp-field>
         <cmp-field>
         <field-name>user_modified</field-name>
         </cmp-field>
         <resource-ref>
         <description></description>
         <res-ref-name>jdbc/ePool</res-ref-name>
         <res-type>javax.sql.DataSource</res-type>
         <res-auth>Container</res-auth>
         </resource-ref>
    </entity>
    </enterprise-beans>
    <assembly-descriptor>
         <container-transaction>
              <method>
                   <ejb-name>EB_B2B_COUNTRY_CODERemote</ejb-name>
                   <method-name>*</method-name>
              </method>
              <trans-attribute>Required</trans-attribute>
    </container-transaction>
    <security-role>
    <description>Users</description>
    <role-name>users</role-name>
    </security-role>
    </assembly-descriptor>
    </ejb-jar>
    The session bean which uses the above session bean is as follows.
    import javax.ejb.SessionContext;
    import javax.ejb.SessionBean;
    import java.sql.*;
    import javax.naming.Context;
    import java.sql.Timestamp;
    import java.util.Vector;
    import initcontext;
    import DB_UTILITYHome;
    import DB_UTILITYRemote;
    import EB_B2B_COUNTRY_CODEHome;
    import EB_B2B_COUNTRY_CODERemote;
    import EB_B2B_COUNTRY_CODEPK;
    * @stereotype SessionBean
    * @homeInterface SB_B2B_COUNTRY_CODEHome
    * @remoteInterface SB_B2B_COUNTRY_CODERemote
    public class SB_B2B_COUNTRY_CODE implements SessionBean
         private SessionContext context;
         * Sets the context of the bean
         * @param context The Bean's Context
         public Vector selectCountryCode(String query,String
    countquery, String pagenos) throws Exception
              Context ctx = initcontext.getContext();
              Connection con=null;
              Vector records=new Vector();
              int pageno=Integer.parseInt(pagenos);
              int min=(pageno-1)*10;
              int max=pageno*10;
              int counter=0;
              boolean recordsfound=false;     
              try
                   DB_UTILITYHome home =
    (DB_UTILITYHome)ctx.lookup("java:comp/env/DB_UTILITYRemote");
                   DB_UTILITYRemote remote =
    (DB_UTILITYRemote)home.create();
                   con=remote.getConnection();
                   Statement stmt = con.createStatement();
                   ResultSet rscount =
    stmt.executeQuery(countquery);
                   while(rscount.next())
                        int temp=rscount.getInt(1);
                        int pagecount=temp;
                        pagecount=pagecount/10;
                        if((temp%10)>0)
                        pagecount=pagecount+1;               
                        records.addElement(""+pagecount);
                   ResultSet rs = stmt.executeQuery(query);
                   while(rs.next())
                        counter++;
                        if(counter>min && counter<=max)
                             String row[]=new String[8];     
                             recordsfound=true;
                             row[0]=rs.getString(1);
                             row[1]=rs.getString(2);
                             row[2]=rs.getString(3);
                             row[3]=rs.getString(4);
                             row[4]=rs.getString(5);
                             row[5]=rs.getString(6);
                             row[6]=rs.getString(7);
                             row[7]=rs.getString(8);          
                             records.addElement(row);
              con.close();               
              catch(Exception e)
                   System.out.println("Error in selecting Country
    Code "+e);
                   throw new Exception("Error in selecting Country
    Code "+e);
              return(records);     
         public void insertCountryCode(String country_code, String
    country_code_desc, String country_phone_code, String
    phone_format_flag,String active_flag, String sort_order,String
    country_tax_percent)throws Exception
              Context ctx = initcontext.getContext();
              Double Sort_Order=null;
              Double cntry_tax_prct=null;
              if(sort_order!=null && sort_order.length()>0)          
              Sort_Order=new Double(sort_order);          
              if(country_tax_percent!=null &&
    country_tax_percent.length()>0)          
              cntry_tax_prct=new Double(country_tax_percent);
              String user_created=null;
              Timestamp date_created=null;
              Timestamp active_date=null;
              String user_modified=null;
              Timestamp date_modified=null;          
              try
                   DB_UTILITYHome dbhome =
    (DB_UTILITYHome)ctx.lookup("java:comp/env/DB_UTILITYRemote");
                   DB_UTILITYRemote dbremote =
    (DB_UTILITYRemote)dbhome.create();
                   user_created=dbremote.getUser();
    date_created=Timestamp.valueOf(dbremote.getDate());
                   active_date=date_created;
                   EB_B2B_COUNTRY_CODEHome home =
    (EB_B2B_COUNTRY_CODEHome)ctx.lookup("java:comp/env/EB_B2B_COUNTRY_CODER
    emote");
                   EB_B2B_COUNTRY_CODERemote remote =
    (EB_B2B_COUNTRY_CODERemote)home.create(country_code, country_code_desc,
    country_phone_code,active_flag, phone_format_flag,user_created,
    date_created, active_date, Sort_Order, user_modified,
    date_modified,cntry_tax_prct);                              
              catch(Exception e)
                   System.out.println("Error in Creating COUNTRY
    Code "+e);
                   throw new Exception("Error in Creating COUNTRY
    Code "+e);
         public void setSessionContext(SessionContext context)
              this.context = context;
         public void ejbActivate()
         public void ejbPassivate()
         public void ejbCreate()
         public void ejbRemove()
    The jsp client which acces the beans is as follows.
    <BODY >
    <%@ page language="java" %>
    <%@ page import="java.sql.*" %>
    <%@ page import="initcontext" %>
    <%@ page import = "java.util.*" %>
    <%@ page import="DB_UTILITYHome"%>
    <%@ page import="DB_UTILITYRemote"%>
    <%@ page import="javax.naming.*"%>
    <%Connection con=null; %>
    <script src="search_getvalues.js">
    </script>
    <form name=frm1>
    <%! int intCount,intI,intRowCount,intJ;
    String strtname=new String();
    String strhidden=new String("txthdn");
         Statement st;
         ResultSet rs;
         ResultSetMetaData rmeta;
    ....%>
    <%
    try
         Context ctx = initcontext.getContext();
         DB_UTILITYHome dbhome =
    (DB_UTILITYHome)ctx.lookup("java:comp/env/DB_UTILITYRemote");
         DB_UTILITYRemote dbremote = (DB_UTILITYRemote)dbhome.create();
         con=dbremote.getConnection();
         st=con.createStatement();
         rs=st.executeQuery(strsqlquery);
         rmeta=rs.getMetaData();
    intCount=rmeta.getColumnCount();
    ....... %>
    </form>
    </BODY>
    </HTML>
    The resulting exception generated is as follows:
    D:\oc4j\j2ee\home>java -jar orion.jar
    Auto-unpacking
    D:\oc4j\j2ee\home\applications\epool_CountryCode\build\epool_CountryCod
    e.ear... done.
    Auto-unpacking
    D:\oc4j\j2ee\home\applications\epool_CountryCode\build\epool_CountryCod
    e\epool_CountryCode-web.war... done.
    Auto-deploying epool_CountryCode (New server version detected)...
    Auto-deploying epool_CountryCode-ejb.jar (No previous deployment
    found)... done.
    Error deploying
    file:/D:/oc4j/j2ee/home/demo/messagelogger/messagelogger-ejb.jar homes:
    No javax.jms.Destination found a
    t the specified destination-location (jms/theTopic) for
    MessageDrivenBean com.evermind.logger.MessageLogger
    Oracle9iAS (1.0.2.2.1) Containers for J2EE initialized
    Auto-deploying epool countryCode example (New server version
    detected)...
    ************************1
    ************************2
    COUNT QUERY :SELECT COUNT(COUNTRY_CODE) FROM BAP_COUNTRY_CODE
    QUERY :SELECT
    COUNTRY_CODE,COUNTRY_CODE_DESC,COUNTRY_PHONE_CODE,PHONE_FORMAT_FLAG,COU
    NTRY_TAX_PERCENT ,SORT_ORDER,ACTIVE
    FLAG,ACTIVEDATE FROM BAP_COUNTRY_CODE order by COUNTRY_CODE
    Error in selecting Country Code java.rmi.RemoteException: Error
    (de-)serializing object: com.evermind.sql.OrionCMTConnec
    tion; nested exception is:
    java.io.NotSerializableException:
    com.evermind.sql.OrionCMTConnection
    JB:Error in selecting country cd java.lang.Exception: Error in
    selecting Country Code java.rmi.RemoteException: Error (d
    e-)serializing object: com.evermind.sql.OrionCMTConnection; nested
    exception is:
    java.io.NotSerializableException:
    com.evermind.sql.OrionCMTConnection
    Error in Selecting Records
    OrionCMTConnection not closed, check your code!
    LogicalDriverManagerXAConnection not closed, check your code!
    (Use -Djdbc.connection.debug=true to find out where the leaked
    connection was created)
    Auto-unpacking
    D:\oc4j\j2ee\home\applications\epool_CountryCode\build\epool_CountryCod
    e.ear... Error unpacking: IO Error:
    The system cannot find the path specified
    Error updating application epool_CountryCode: Unable to find/read
    assembly info for D:\oc4j\j2ee\home\applications\epool_C
    ountryCode\build\epool_CountryCode (META-INF/application.xml)
    But if the DBUTILITY session bean is changed to a simple bean and accessed the code works fine and i am able to retrieve the data.Is the problem there because u one session bean cannot access a database connection method from another one or could it be because of the driver???
    I hope i am clear.Please revert back in case any more references are needed.
    Thanks in advance!!!!!!

Maybe you are looking for

  • How To Add Additional Fields When Creating New Contact From w/in Mac Mail?

    Hi there. When in Mac Mail and clicking on contact information provided within an email, we are able to either (1) CREATE NEW CONTACT or (2) ADD TO EXISTING CONTACT (by clicking on the arrow next to a phone number, address, etc.). If I choose "Create

  • I want to perform a clean install of Mavericks on my MacBook.......

    and I would like to restore my entire Home Directory on the fresh install. I have up to date Time Machine backups, what would be the simplest steps to achieve this? I am reasonably savvy, but don't want to have to reinstall all my apps from scratch..

  • How do i determine the envelope size in Pages?

    I'm printing envelopes for Christmas and I can't find how to adjust to the size envelope that fits my Christmas cards. I'm working with 5x7 envelopes.

  • PATCH FOR CIN

    Dear Experts, I am not able to view the menu paths for J1ID,J2IUN etc....The menupath for "INDIRECT TAXES" is not reflecting in SAP EASY ACCESS menu...Kindly tell me the procedure..If any new pathches are to be added please explain me the concept to

  • OA Development  for E-Business Suite 11.5.10.2

    Hi Guys I am a ADF Developer on a project with a need to deploy a custom application which will change how the forms work from oracle for to jsp based pages. Been running around all the oracle sites trying to find info and what i have come accross is