Migrate the EJBs from JVM to OC4J...?

We are plan to migrate the EJBs modules from Oracle8i JServer to OC4J.
From now we have developed the EJBs by using JDeveloper as the following
conditions;
- JVM: Oracle8i JServer (8.1.6.3.0)
- EJBs: Session Beans only
- IDE tool: JDeveloper 3.2
And now we wanna migrate or re-deploy to the OC4J. Is there any good
suggestions or idea to do it? Also I wanna know sth to considerate...
Thanks in advance for any advice
Phyllis
null

It would be good for you to migrate to OC4J as performance in OC4J is a lot better. Here is a little migration writeup I had done sometime back. It is work in progress. Hope this helps.
Migrating EJB components from Database EJB container to OC4J
Author: Ashok Banerjee [[email protected]]
Oracle recommends the new J2EE containers in Oracle9iAS (OC4J) for deploying J2EE components. The goal of this paper is to recommend ways to migrate existing EJB applications, from database EJB container, to OC4J.
The database EJB container runs on the aurora session based Java Virtual Machine, whereas the new container runs on standard JDK (version 1.2.2 onward) .
The database EJB container runs in a database session. The database is itself the middle tier, in such a configuration. Users therefore have a logically three tiered architecture, that runs physically on two tiers. The database serves as both the middle tier and the backend. In such situations users would use the "kprb" driver (used for requests made from within the database). No further authentication is needed if the backend database is the same as the middle tier. Users can also use one database as the middle tier and another database as the backend.
In OC4J the middle tier does not require a database installation on the middle tier. This helps make the middle tier lightweight. OC4J is also seen to significantly faster than the EJB container inside the database. Since OC4J runs on regular JDK the user can run OC4J on the Java Virtual Machine which is best for his/her specific needs. OC4J however has a limitation in that does not support pure CORBA clients. Currently OC4J does not support RMI over IIOP either.
To migrate existing EJB applications from inside the database to OC4J the set of changes is minimal.
Code changes
1. Change all references in the code and any configuration files using JDBC URLs from kprb driver to either thin or oci. "kprb" driver is only for applications running inside the database. The new OC4J runs outside the database and therefore it must use thin or oci driver.
2. The database EJB container clientside JNDI lookups were like:
env.put (Context.URL_PKG_PREFIXES, "oracle.aurora.jndi");
env.put (Context.SECURITY_PRINCIPAL, user);
env.put (Context.SECURITY_CREDENTIALS, password);
env.put (Context.SECURITY_AUTHENTICATION, ServiceCtx.NON_SSL_LOGIN);
Context ic = new InitialContext (env);
while in OC4J container the lookup code should read:
env.setProperty("java.naming.factory.initial","com.evermind.server.ApplicationClientInitialContextFactory");
env.setProperty("java.naming.provider.url","ormi://localhost");
env.setProperty("java.naming.security.principal","username");
env.setProperty("java.naming.security.credentials","password");
Context ic = new InitialContext (env);
3) Remove all references to oracle.aurora.* classes - they will not work with OC4J. These classes are specific to the container in the database.
4) Check for client demarcation of Bean Managed Transactions and remember that transaction in OC4J cannot be propagated across tiers. In other words client demarcated transaction will work provided the client is another EJB or a servlet in the same OC4J instance. This is also listed in the "Current Limitations" section.
Build changes
1. For EJB in the database we use loadjava to load classes into the database - this step is not necessary any longer for middle tier EJBs. The user merely needs to ensure that the classes are in the classpath.
2. Similarly the concept of resolver specification in the database EJB container ceases to be useful in OC4J. To make classes "findable" the user sets the classpath. In OC4J any jars in the $OC4J_HOME/lib directory are on the server side classpath of the application classloader. The user can also include classes in their own ear files before they deploy the ear. [If you do not know about the resolver specification, then you have not used it and do not need to know about it].
3. The database J2EE container did not have support for .ear files. The OC4J container supports J2EE standard .ear files. Both makefiles and ANT files are available in the code samples on OTN which show how to build ear files and also provides samples for the structure of the EAR files.
EAR File contains META-INF/application.xml
META-INF/orion-application.xml [optional]
applicationEjb.jar
applicationweb.war
applicationEjb.jar contains
META-INF/ejb-jar.xml
META-INF/orion-ejb-jar.xml
EJB classes
applicationWeb.war contains
WEB-INF/web.xml
WEB-INF/orion-web.xml
WEB-INF/lib/jar files needed
WEB-INF/classes class files needed for JSP servlets
For further information on how to write the xml files etc. please refer to their respective DTDs.
Both web.xml and ejb-jar.xml should be unaffected by the migration.
4. The deployejb tool used to deploy EJB to the database has been deprecated. In OC4J EJBs are deployed as shown below:
% java -jar admin.jar ormi://localhost:<rmi-port> userName password -deploy -file ejbdemo.ear -deploymentName jndiName
5. The ApplicationClientContainer does not need aurora_client.jar in the classpath instead it needs oc4j.jar in the classpath.
Configuration Changes:
1. In the database EJB container the configurations exist in database tables but in OC4J the configuration exists in industry standard XML files. By default these files are located at $OC4J_HOME/config directory. Users can start their OC4J instance with a different configuration using the -config switch to specify a different server.xml file.
%java -jar oc4j.jar -config config1/server1.xml
2. In the database EJB container scalability was achieved using the MTS architecture and session based Java Virtual Machine. In OC4J scalability is achieved by clustering and using the loadbalancer. For more details on loadbalancer please read <link to loadbalancer.doc>
3. The bindds tool used to bind data-sources to the JNDI namespace of the database EJB container is deprecated. In OC4J datasources are bound to the the namespace using the data-sources.xml in $OC4J_HOME/config. Non oracle data-sources can also be bound to the namespace. A typical entry in data-sources.xml could look like:
<data-source
class="com.evermind.sql.DriverManagerDataSource"
name="OracleDS"
location="jdbc/OracleCoreDS"
xa-location="jdbc/xa/OracleXADS"
ejb-location="jdbc/OracleDS"
connection-driver="oracle.jdbc.driver.OracleDriver"
username="scott"
password="tiger"
url="jdbc:oracle:thin:@dlsun1688:5521:jis2"
inactivity-timeout="30"
/>
4. Database EJB container used database authentication (database roles and database users) to authenticate users to the middle tier. OC4J uses principals.xml file to list groups and users and perform authentication. One can also implement UserManagers for OC4J to perform more complex authentication.
5. The ports used by OC4J for RMI, JMS and HTTP are all specified in rmi.xml, jms.xml, web-site.xml.
6. Both OC4J and the database container SSL (client authentication as well as server authentication).
7. The database EJB container could only be remotely debugged using a jdb like interface by starting a debugagent on the server, and a debugproxy on the client. OC4J containers on the other hand run on JDK and can be debugged with any debugger. This is very useful for debugging EJB/Servlet application running in the server.
8. The database EJB container comes with a database and hence has AQ (Advanced Queue) available for JMS. With OC4J there is a default in memory JMS implementation. OC4J server program can also connect to other JMS implementations(including AQ) using jms.xml. However a JNDI context may need to be implemented for AQ.
Current Limitations
1. The OC4J container at present does not support 2 phase commit.
2. The OC4J container at present does not support transaction context propagation across tiers. Hence client demarcated transactions are not supported in OC4J except where the client demarcating the transaction is in the same container, for example an EJB having its transaction demarcated by another EJB or servlet, in the same container.
3. In the classic container Oracle did not support RMI-IIOP tunneling through HTTP however in OC4J RMI over HTTP is supported.
null

Similar Messages

  • Urgent!!!!How to deploy only an EJB from Weblogic to oc4j.

    Hi
    How can i deploy only EJB from Weblogic into oc4j without any web application or client coming into pitcture as my client access bean remotely....
    regards,
    Sapthapathi

    If you are migrating from ejb1.1->ejb1.1 you shouldn't have many changes - your ejb-jar.xml file should be the same (I assume you are still talking about ejbs). Once you pull over the base ejb - then if you want to, mess around with the automatically generated orion-ejb-jar.xml file. Obviously - those are all app server specific. I go back and forth between wls6.1 and oc4j all the time. When going from wls5.1 to oc4j - what particular issues do you run into. What do you mean, in particular, by configuration changes?
    Curious -
    Ray
    hi,
    EJBs and other applications can be migrated from weblogic to oc4j but many changes are required.These changes are mainly configuration changes rather than code changes.Infact there are many problems in effect while migrating and delloyment.Hope oracle is a bit more attentive to this issue.
    regards,
    chennai

  • How can i access the EJB from a Webdynpro

    Dear all,
    How can i access the ejb , from a webdynpro?.
    Is there any way to do that?.
    I want to write the entire code (business functions) within the EJB and i wan to access the entire methods from a WebDynpro Application.This is the situation.
    Please help me to , resolve this problem.(Here im using JDBC Connection .. etc.).
    I want to do the basic connection setting's and data retrieval part within the EJB and use that within the WebDynpro..
    how can i seperate this two(i mean, i want to seperate the JDBC connections and WebDynpro,i dont want to hard code any connection parameters within the webdynpro code)
    So that i want use that saet of particular function's in many webdynpro applications..
    (i dont need any help regarding webservice way.)
    If anyone can , please help me..
    I tried that javabean class , manifest file , that way (importing javabean model).
    but im getting errors.
    I cant properly utilize that..
    So please help me with steps regarding that,,
    for javabean
    and if any , for EJB also..
    with regards
    Kishor.G

    HI,
    Since webdynpros follows Model View Controller Architecture You can access EJBs in webdynpro(views/frontend) infact to connec to database uding JDBC you have to utilise EJB ( opening connection to database closing, and other Business functionality).See this link
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/unkown/web dynpro tutorial and sample applications.faq#q-7
    <b>How to access the Car Rental Web Service?</b>
    Regards,
    RK

  • Is it possible to migrate the app from latest version to older version

    Hi all,
    I have a adf application in jdeveloper 11.1.1.4.0.Due to some issues i have to do it in jdeveloper 11g release 2 (11.1.1.2.0).Is it possible to migrate the application from latest version to older version of jdev.
    Thanks.

    It's not officially supported, but you can try a couple of things - first open the application in the old version and see if it works.
    If it doesn't you can try creating a new application in the old version and then use the create project from existing source option to map to your existing code.
    This all of course assumes that you didn't use features in the new version that are not available in the old version.

  • How to migrate the data from DB to another DB

    Hi folks,
                 In my project I have one requirement. Let me explain in detail we are maintain two databases one for
                 master database called *GIIS* and one is history database HIST. Both DB version is 10g R1.
                 (Both DB’s have same no table as well structures)
                 1.  The GIIS database contains nearly 400 tables (master table as well as temporary table)   
                       each Master table having it’s own temporary table.
                 2. Whenever we made the entry first it will go to temporary table after authorized that entry it will move to the master table
                 3. But the temporary table contains the data after move to master table .
                 4.     The temporary table data’s will be move to the HIST database each and every day at the night.
                    This migration we done through the procedure.  After migration complete the temporary table data’s will de deleted.
    My Question:
               1.     Whether it’s good practice to migrate the data from GIIS DB to another HIST DB using oracle stored procedure.
                     (we created the DB link from GIIS to HIST) 
               2.     If not can any one suggest me the way to migrate the data from GIIS to HIST.?
               3.     Is there any other possibility to migrate the data from GIIS to HIST with out using procedure?Thanks
    Arun

    Arun wrote:
    Hi Mr.Aman Brother
    First of all sorry . I am not saying that don't command my requirement. Just i want know the way of migrate the data from one DB to another DB.
    you saying that IMPORT/EXPORT is one of the way to do migration.
    But in client side they don't know how to do the IMPORT & EXPORT the database..
    Can you suggest me the another way to do that
    Arun,
    If the client doesn't know how to do exp/imp, I would really doubt and would be immensely concerned before suggesting the client any other way. If they don't know, tell them that there is a concept called test database which is used for learning so they should invest time to learn this technique since the other options suggested by fellow members are far more tougher than this one.
    Aman....

  • Hi, i try to migrate the HSC0 from version 6.1 to version 7.1 HELP !!!

    Hi, i try to migrate the HSC0 from version 6.1 to version 7.1 and take this opportunity to consult on the installation of HSC0 where the PARMLIB member LKEYINFO (LKEYDEF) Product for this new version V 7.1 is telling me no longer supported, please I would like to confirm if this is so, and where i set the license application for this new version.
    SLS1511I LKEYDEF DSN('SYS3.ORA.ELS.V700.TGT.VEN1.PARMLIB(-
    SLS1511I LKEYINFO)')
    SLS4639I LKEYDEF COMMAND IS NO LONGER SUPPORTED

    Hi;
    Is it related with Configuring and Managing SMC? If yes review:
    http://docs.oracle.com/cd/E21395_02/en/E28330_02/E28330_02.pdf
    Regard
    Helios

  • I recently bought a MacBook Air.  I migrated the info from my old MacBook to the new Air.  None of my contacts migrated.  I still have them on my old Macbook, Ipad and iPhone.  How do I get them to the new Air?

    I recently bought a MacBook Air.  I migrated the info from my old MacBook to the new Air.  None of my contacts migrated.  I still have them on my old Macbook, Ipad and iPhone.  How do I get them to the new Air?

    You can copy the iWeb application from the desktop machine to your new MBA.  But if it's iWeb 2 it won't work with Mavericks or Mt. Lion. Also  copy the Domain.sites file from the desktop to your MBA as that's the file with your webstite files in it.
    Happy New Year

  • HT4796 have migrated the info from old pc to mac, but cant access it, and ideas?

    i have migrated the info from my old PC, but cannot access it, any advice please?

    Do this from the system preferences window.
    Click on Users&Groups.
    Click on the padlock (bottom left) to unlock it if it's not unlocked.
    Then highlight the account in the left pane that you want to remove...
    and then click on the MINUS symbol on the bottom left of that window.
    Just make sure when you delete an account, that you're currently NOT LOGGED INTO that account, or it's not going to work.
    Feel free to chose the delete home-folder option when it prompts you.

  • Problem while migrating the extensions from one instance to the other.

    Hi,
    We are using kintana workbench to migrate the objects from one instance to the other. But after migrating From Instance1 to Intance2 it ws fine. Working properly in Instance2. But when the same package is migrated to Instance3, all are migrated successfully and log files are showing proerly. But when i access the pages in Instance3, I am getting the errors on the page above like this:
    ViewObject attribute is null; ViewUsageName: (ScorecardSummaryVO1); RegionItem: (LastUpdateLogin)
    Can some let me know what could be the problem.
    Thanks.

    user555006,
    Error shows that LastUpdateLogin item on the page has no proper VO attribute attached. Hence it seems that the MDS data is not updated properly. Upload the page again and test.
    --Shiv                                                                                                                                                                                                                                                                                                                                                                                                                       

  • Migrate the email from Blackberry to outlook

    Hi
    I use the pop3 email service to receiving the email on my BB, I would like to migrate the email from my BB to my outlook (pst file). I have installed the desktop software, but the intellisync can't choose the email for sync. Is there any way can achieve it ? Thanks

    BIS doesnt actually download email from your POP3 account, it will still exist on the server so just setup the POP3 account in outlook and download the email directly. If you still wish to keep the email on your blackberry ensure you tick the option "leave mail on server" in the account options in Outlook. 

  • How to migrate the data from DEC RDB 5.1 to Oracle 11g

    Hi,
    As part of my project, we need to migrate the data from DEC RDB 5.1 present on Alpha server with VMS 6.1 OS into Oracle 11g. The size of the data in DEC RDB is around 40 GB.
    Could you please suggest various ways of getting this done in easy and simpler way?
    Thanks in advance.

    Hello,
    when Oracle bought Rdb from Digital Equipment Corporation (DEC) in 1994, the name of the product changed from DEC Rdb to Oracle Rdb. Meanwhile the actual version of Rdb is 7.2, so you are on a VERY old version. And that excludes the suggestions from the mentioned note to use a database link from Oracle RDBMS to Rdb, that is simply not possible with that old version of Rdb.
    But Rdb 5.1 knew already the Rdb Management Utility (RMU) - I just checked that with Rdb 4.1 which is even older.
    There are two commands that are helpful for your task.
    RMU/EXTRACT - that writes the metadata into a file. That output helps you to build a script to create all the objects in your target database.
    RMU/UNLOAD - that writes the data of each table into a formatted file (one file per table). That output can be used by the SQL*Loader to load your data into the target database.
    You can read all details about these commands in the online help on your Alpha. At first, issue the HELP command and look in the output list whether it lists a command RMU or RMU51. Then run that command:
    $ help rmu /extract
    and
    $ help rmu /unload
    Replace rmu by rmu51 if the help command shows you that rmu51 exists but not rmu.
    There is one caveat. Do you use blobs in your Rdb database? If you don't know that, create an the output with RMU/EXTRACT and search the output file for the string LIST OF BYTE VARYING. If there are none then you have no blobs. If you have some you need to take more care of them, they can't be unloaded into a formatted file, that must happen programmatical. If you have such fields then let me know, then I'll tell you how to get them out of your Rdb database.
    Best regards
    Wolfgang
    P.S.: For Rdb related questions it is better to ask in our Communities at https://communities.oracle.com/portal/server.pt/community/rdb_product_family_on_openvms . That forum is watched by Rdb Support and Development.

  • How to migrate the Workbooks from BW3.1 to BI7

    Dear Team,
    How to Migrate the workbooks from Bw3.1 to BI7. We have recently upgraded to BI7. What are necessary steps and necessary cares needs to take for this.
    Best Regards,
    SG

    Migration is manual. When you open up a 3.x component in a 2004s tool in migrates it. There is no automatic migration available
    Rolling out the New SAP NetWeaver 2004s BI Frontend Tools
    Migrating Advanced BEx Analyzer Workbooks - What VBA is Supported?
    Hope it Helps
    Chetan
    @CP..

  • How do I migrate the passwords from secured pdfs/their profiles to a new computer and new version of

    how do I migrate the passwords from secured pdfs/their profiles to a new computer and new version of acrobat?  I lost one computer that had standard 9, went to new computer, then upgraded to XI.  All my password profiles are not coming through.  How do I get them back?

    There is also a program called Senuti that I used when I had a PC crash with all my iTunes stuff on it:
    www.fadingred.com/Senuti

  • Changing the EJB connection not under OC4J

    Dear all,
    I am facing a problem that after I deploy an ejb from Jdev and using teh connection from the Jdev. It is working fine, however I found that the EJB is totally depends on the connection which I have setup from Jdev but not from the OC4J connection pool, because when I try to change the connection setting from oc4j, it doesn't make any change.
    Any one help!!!!

    repost

  • How to migrate the datasource from Bea 8.1 to Bea 10

    Hi,
    I have to migrate an application from bea 8.1 to 10.
    the configuration in 8.1 is as follow : (config.xml)
    <JDBCConnectionPool DriverName="oracle.jdbc.driver.OracleDriver"
    InitialCapacity="10" KeepXAConnTillTxComplete="true"
    MaxCapacity="150" Name="adiosPool" Password="adios47"
    Properties="user=adios47"
    RemoveInfectedConnectionsEnabled="false"
    ShrinkFrequencySeconds="600" StatementCacheSize="100"
    SupportsLocalTransaction="false" Targets="server"
    TestConnectionsOnCreate="false" TestConnectionsOnReserve="true"
    TestFrequencySeconds="60" TestTableName="SQL SELECT 1 FROM DUAL" URL="jdbc:oracle:thin:@AXHE0.application.hvb.de:1521:AXHE0"/>
    <JDBCTxDataSource JNDIName="weblogic.jdbc.jts.adiosPool"
    Name="adiosPool" PoolName="adiosPool" Targets="server"/>
    and that is my new configuration : (config.xml)
    <jdbc-system-resource>
    <name>adiosPool</name>
    <descriptor-file-name>jdbc/adiosPool-0758-jdbc.xml</descriptor-file-name>
    </jdbc-system-resource>
    jdbc/adiosPool-0758-jdbc.xml :
    <?xml version='1.0' encoding='UTF-8'?>
    <jdbc-data-source xmlns="http://www.bea.com/ns/weblogic/90" xmlns:sec="http://www.bea.com/ns/weblogic/90/security" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:wls="http://www.bea.com/ns/weblogic/90/security/wls" xsi:schemaLocation="http://www.bea.com/ns/weblogic/920 http://www.bea.com/ns/weblogic/920.xsd">
    <name>adiosPool</name>
    <jdbc-driver-params>
    <url>jdbc:oracle:thin:@AXHE0.application.hvb.de:1521:AXHE0</url>
    <driver-name>oracle.jdbc.OracleDriver</driver-name>
    <properties>
    <property>
    <name>user</name>
    <value>adios47</value>
    </property>
    <property>
    <name>portNumber</name>
    <value>1521</value>
    </property>
    <property>
    <name>SID</name>
    <value>HVAEE0</value>
    </property>
    <property>
    <name>serverName</name>
    <value>AXHE0.application.hvb.de</value>
    </property>
    </properties>
    <password-encrypted>{3DES}PMWtUXqoHT8=</password-encrypted>
    </jdbc-driver-params>
    <jdbc-connection-pool-params>
    <test-table-name>SQL SELECT 1 FROM DUAL</test-table-name>
    </jdbc-connection-pool-params>
    <jdbc-data-source-params>
    <jndi-name>weblogic.jdbc.jts.adiosPool</jndi-name>
    <global-transactions-protocol>TwoPhaseCommit</global-transactions-protocol>
    </jdbc-data-source-params>
    </jdbc-data-source>
    but when I start the server I get the following exception :
    START SERVER
    javax.naming.NameNotFoundException: While trying to lookup 'weblogic.jdbc.jts.adiosPool' didn't find subcontext 'jdbc'. Resolved 'weblogic'; remaining name
    'jdbc/jts/adiosPool'
    at weblogic.jndi.internal.BasicNamingNode.newNameNotFoundException(BasicNamingNode.java:1138)
    at weblogic.jndi.internal.BasicNamingNode.lookupHere(BasicNamingNode.java:246)
    at weblogic.jndi.internal.ServerNamingNode.lookupHere(ServerNamingNode.java:171)
    at weblogic.jndi.internal.BasicNamingNode.lookup(BasicNamingNode.java:205)
    at weblogic.jndi.internal.BasicNamingNode.lookup(BasicNamingNode.java:213)
    at weblogic.jndi.internal.WLEventContextImpl.lookup(WLEventContextImpl.java:254)
    at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:367)
    at javax.naming.InitialContext.lookup(InitialContext.java:351)
    what's wrong ?
    Thanks for your ideas

    Hi,
    This is realated to Upgrading your domain.You can upgrade your domain from bea weblogic8.1SP4 to Bea weblogic 10.You need to use the upgrade tool from bea weblogic platform10.You can start the Upgrade wizard tool from Windows Start->All Programs->BEA Products->Tools->DomianUpgradeWizard.The tool will take you to upgrade the domain automatically.Once you have upgraded the domian everything(database connection pools,users,groups,any other resources) in 8.1 domian will be changed to 10.
    Bea Support Complete upgradation of Application as well as application data from 8.1 to 9.2 or 10.0
    Thanks
    Bishnu
    Regards
    Bishnu

Maybe you are looking for

  • Some doubts in upgradation

    hi i studied some upgradation documents i have some doubts. please dont give any help files or again links for upgradation bec i need some scenerio why they need to follow this steps Check compounding consistency in MultiProviders Info Cubes Fact vie

  • How to connect external speakers to Satellite A100-451

    Hello, I have a Satellite A100-451 (UK) running Vista. I want to connect external speakers. There is a 'headphones' jack on the front (3.5mm jack I think), can I connect external speakers here? The speakers are 'PC Line' with their own power supply a

  • Permissions Issue causes Dreamweaver CS6 Menus to Crash the Application. Please Help!

    I recently upgraded Adobe Web Premium CS5 to CS6. All of the include applications seem to run as expected, except for Dreamweaver which crashes when many of the pallet menu options are clicked. The application when tested on a new user account will o

  • Cycle images in a thumbnail gallery

    Hi, I'm very new to HTML, so please bear with me. I'm currently using a "Thumbnail Gallery" style page for my online portfolio (when the cursor hovers over a thumbnail the image pops up to the left of it) Here's a link: Portfolio What I'm wondering i

  • It's a joy to see the forum software preserve links in copied text

    It's a joy to see the forum software preserve live links in text inserted by copy-and-paste. http://forums.adobe.com/message/1934083#1934083