BEA WebLogic vs OAS/OC4J: application redeployment

Hi gang
I'm currently researching solutions to JEE application redeployment, or more specifically when you want to update an existing deployed application on a JEE app server, how can you do so with minimal interruption to the users?
From my research on the internet I've found two approaches, one with the Oracle OAS camp, and another in the BEA Weblogic camp.
Deepek Arora in this Redeploy Web App to Application Server points to an Oracle whitepaper that states the OAS approach is to use clusters. However this article is somewhat old so may not be the most recent recommended approach.
I note that in the BEA documentation for the WebLogic Server here, the documentation details a feature called Production Redeployment (documented here). This feature allows both versions of the application to be deployed, and gracefully moves new user connections to the new application version, while maintaining existing user connections on the old version, eventually shutting down the older application version once the users have disconnected.
What I'd like to know and I hope you can help me with is:
a) Is clusters still the recommended OAS approach to this problem?
b) Does OAS support the similar WebLogic facilities, or are there plans in the future (maybe 11g?) to include this feature?
Very much thanks for your assistance in advance. This question has been bugging me for awhile, so it'd be great to hear your thoughts and recommendations. Alternatively any pointers to any Oracle documentation, whitepapers etc would be appreciated as there is a lot to digest.
Thanks & regards,
Chris Muir.

Hey Chris --
OC4J doesn't implement the same side-by-side versioning approach that WLS does -- it's a nice facility from what I have seen of it. We should buy them if we ever get the chance .. :-) Their staged/admin-only deployment model is also very useful for deploy/test/publish scenarios.
In OracleAS 10.1.3.1+ we have the ability to execute a redeployment operation to a "group" of OC4J instances in a serial form.
When a sequential redeployment operation is executed, the cluster deployment handler:
1. Picks the first OC4J instance in the group.
1.1 The container STOPS the application
1.1.1 Signals to mod_oc4j to take it out of the route table so it doesn't get any new requests -- this happens dynamically with no restart required with OHS/mod_oc4j 10.1.3.
1.1.2 Allows all current inflight requests to finish, flushes any session state updates
1.2 The current version of the application is then undeployed
1.3 The new version of the application is deployed
1.4 The application is started
1.4.1 Signals to mod_oc4j that is available for service, dynamically added back into the routing mix.
1.5 Starts receiving and servicing requests
2. Group deployment mechanism waits for the specified timeout period.
3. Repeats the process for the remaining OC4J instances.
4. Finishes.
Since we have session affinity with OHS/mod_oc4j routing, any existing client requests will continue to go to their current instance unless it is stopped. So for customers on V1 of an application, they'll stay on it until it is upgraded. Any requests that get serviced by V2 of an application will continue to be serviced by that server/application, unless it is taken down for some reason.
For those applications that are maintaining client "state" within the server, if the application has configured state-replication, then any session state will be maintained on other nodes as the redeployment of a specific node occurs.
In earlier releases, this was documented in a far more manual fashion as something called a "cluster dance" -- where due to the automated synchronization when operating in a cluster, you needed to take instances out of one cluster into another to do the upgrade, then join them back together.
http://www.oracle.com/technology/products/ias/hi_av/OracleApplicationServer10gR2StatefulRollingUpgrades-WP.pdf
The sequential group deployment mechanism, IMHO offers a much simpler path to do a multiple instance redeployment while maintaining availability.
There's a general doc about this from the same author above here:
http://www.oracle.com/technology/products/ias/hi_av/OracleApplicationServer10gR3HA-WP.pdf
There's a screen cam/viewlet somewhere on OTN I believe that demos this as well.
And a fairly simple form of how-to here which walks you through an example:
http://www.oracle.com/technology/products/ias/hi_av/Dynamic%20Routing.htm
-steve-

Similar Messages

  • Oracle ifs and BEA weblogic

    Oracle ifs and BEA weblogic
    We have one application server with weblogic and and ifs 1.0.9 , and one db server with Oracle 8.1.7.
    with the following configuration:
    Web server
    appl server with weblogic 6.0 and ifs 1.1.9
    Oracle 8i Enterprise with interMedia text
    We need to use the iFS API call for our application.
    As I know, weblogic 6.0 support JDK1.3 but ifs 1.1.9 supports up to JDK1.2.
    Is this configuration possible?
    Any conflict if two version JDK co-exist inside same machine?
    Any suggestion?
    If I separate the appl. server into two machines, that is,
    one server installed with weblogic, the other one installed with ifs.
    How could I make use the ifs API call from appl. server?
    Is there any configuration guides for this setting?
    Thanks a lot.
    null

    <BLOCKQUOTE><font size="1" face="Verdana, Arial, Helvetica">quote:</font><HR>Originally posted by Luis:
    The iFS API is 100% pure Java. You can use it from any other Java application, be it JSP, EJB, or a standalone application.
    So it really comes down to the CLASSPATH. The iFS API is split among a set of .jar files, and some of the configuration information is stored in .properties files that are outside of these .jar files. All of this stuff needs to be in the CLASSPATH of whatever JVM is calling the iFS API.
    The iFS API uses the Oracle JDBC driver to communicate with the Oracle database. This is another requirement. You can't use another JDBC driver; you have to use ours.
    So again, it's all about configuration.<HR></BLOCKQUOTE>
    Would you mind to share more detail on configurating weblogic to integrate the iFS API?
    null

  • Problem in running application(using ADF) on BEA Weblogic Server

    Hi..,
    I am Gunardy Sutanto from Indonesia. Currently, I had a problem in deploying application which is using ADF framework in BEA Weblogic Server(WLS 8.1). I also add all the libraries which were required for running this application. But I found some error when I ran this application. About the error message that I found from log file which is generated by BEA Weblogic Server 8.1, herewith I attach the detail of the error message :
    <Error> <HTTP> <BEA-101020> <[ServletContext(id=27825828,name=bp_presentment,context-path
    =/bp_presentment)] Servlet failed with Exception
    oracle.jbo.PCollException: JBO-28030: Could not insert row into table PS_TXN, collection id 16,408, persistent id 1
    at oracle.jbo.PCollException.throwException(PCollException.java:39)
    at oracle.jbo.pcoll.OraclePersistManager.insert(OraclePersistManager.java:1845)
    at oracle.jbo.pcoll.PCollNode.passivateElem(PCollNode.java:561)
    at oracle.jbo.pcoll.PCollNode.passivate(PCollNode.java:684)
    at oracle.jbo.pcoll.PCollNode.passivateBranch(PCollNode.java:643)
    at oracle.jbo.pcoll.PCollection.passivate(PCollection.java:461)
    at oracle.jbo.server.DBSerializer.passivateRootAM(DBSerializer.java:294)
    at oracle.jbo.server.DBSerializer.passivateRootAM(DBSerializer.java:277)
    at oracle.jbo.server.ApplicationModuleImpl.passivateStateInternal(ApplicationModuleImpl.java:5119)
    at oracle.jbo.server.ApplicationModuleImpl.passivateState(ApplicationModuleImpl.java:5011)
    at oracle.jbo.server.ApplicationModuleImpl.doPoolMessage(ApplicationModuleImpl.java:7741)
    at oracle.jbo.common.ampool.ApplicationPoolImpl.sendPoolMessage(ApplicationPoolImpl.java:3923)
    at oracle.jbo.common.ampool.ApplicationPoolImpl.doManagedCheckin(ApplicationPoolImpl.java:2161)
    at oracle.jbo.common.ampool.ApplicationPoolImpl.releaseApplicationModule(ApplicationPoolImpl.java:1261)
    at oracle.jbo.common.ampool.SessionCookieImpl.releaseApplicationModule(SessionCookieImpl.java:717)
    at oracle.jbo.common.ampool.SessionCookieImpl.releaseApplicationModule(SessionCookieImpl.java:634)
    at oracle.jbo.common.ws.WSApplicationModuleImpl.endRequest(WSApplicationModuleImpl.java:2672)
    at oracle.adf.model.bc4j.DCJboDataControl.endRequest(DCJboDataControl.java:1283)
    at oracle.adf.model.servlet.ADFBindingFilter.invokeEndRequest(ADFBindingFilter.java:300)
    at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:249)
    at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
    at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:6724)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
    at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
    at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3764)
    at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2644)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:219)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:178)
    ## Detail 0 ##
    java.lang.ClassCastException
    at oracle.jbo.pcoll.OraclePersistManager.updateBlobs(OraclePersistManager.java:1613)
    at oracle.jbo.pcoll.OraclePersistManager.insert(OraclePersistManager.java:1832)
    at oracle.jbo.pcoll.PCollNode.passivateElem(PCollNode.java:561)
    at oracle.jbo.pcoll.PCollNode.passivate(PCollNode.java:684)
    at oracle.jbo.pcoll.PCollNode.passivateBranch(PCollNode.java:643)
    at oracle.jbo.pcoll.PCollection.passivate(PCollection.java:461)
    at oracle.jbo.server.DBSerializer.passivateRootAM(DBSerializer.java:294)
    at oracle.jbo.server.DBSerializer.passivateRootAM(DBSerializer.java:277)
    at oracle.jbo.server.ApplicationModuleImpl.passivateStateInternal(ApplicationModuleImpl.java:5119)
    at oracle.jbo.server.ApplicationModuleImpl.passivateState(ApplicationModuleImpl.java:5011)
    at oracle.jbo.server.ApplicationModuleImpl.doPoolMessage(ApplicationModuleImpl.java:7741)
    at oracle.jbo.common.ampool.ApplicationPoolImpl.sendPoolMessage(ApplicationPoolImpl.java:3923)
    at oracle.jbo.common.ampool.ApplicationPoolImpl.doManagedCheckin(ApplicationPoolImpl.java:2161)
    at oracle.jbo.common.ampool.ApplicationPoolImpl.releaseApplicationModule(ApplicationPoolImpl.java:1261)
    at oracle.jbo.common.ampool.SessionCookieImpl.releaseApplicationModule(SessionCookieImpl.java:717)
    at oracle.jbo.common.ampool.SessionCookieImpl.releaseApplicationModule(SessionCookieImpl.java:634)
    at oracle.jbo.common.ws.WSApplicationModuleImpl.endRequest(WSApplicationModuleImpl.java:2672)
    at oracle.adf.model.bc4j.DCJboDataControl.endRequest(DCJboDataControl.java:1283)
    at oracle.adf.model.servlet.ADFBindingFilter.invokeEndRequest(ADFBindingFilter.java:300)
    at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:249)
    at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
    at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:6724)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
    at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
    at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3764)
    at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2644)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:219)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:178)
    I hope this is enough for somebody for solving this problem. If someone have the solution for this problem, please contact me by e-mail to [email protected].
    Thanks,
    Gunardy

    I already set the value for jbo.server.internal_connection and then deployed to Weblogic Server. When I was tested the application, all the records from table had shown on the screen but I found the application can't insert row to table PS_TXN. I I want to know it always happened?
    Herewith I attach the detail log from log file which was generated by Weblogic Server:
    oracle.jbo.PCollException: JBO-28030: Could not insert row into table PS_TXN, collection id 162, persistent id 1     at oracle.jbo.PCollException.throwException(PCollException.java:39)
         at oracle.jbo.pcoll.OraclePersistManager.insert(OraclePersistManager.java:1845)
         at oracle.jbo.pcoll.PCollNode.passivateElem(PCollNode.java:561)
         at oracle.jbo.pcoll.PCollNode.passivate(PCollNode.java:684)
         at oracle.jbo.pcoll.PCollNode.passivateBranch(PCollNode.java:643)
         at oracle.jbo.pcoll.PCollection.passivate(PCollection.java:461)
         at oracle.jbo.server.DBSerializer.passivateRootAM(DBSerializer.java:294)
         at oracle.jbo.server.DBSerializer.passivateRootAM(DBSerializer.java:277)
         at oracle.jbo.server.ApplicationModuleImpl.passivateStateInternal(ApplicationModuleImpl.java:5119)
         at oracle.jbo.server.ApplicationModuleImpl.passivateState(ApplicationModuleImpl.java:5011)
         at oracle.jbo.server.ApplicationModuleImpl.doPoolMessage(ApplicationModuleImpl.java:7741)
         at oracle.jbo.common.ampool.ApplicationPoolImpl.sendPoolMessage(ApplicationPoolImpl.java:3923)
         at oracle.jbo.common.ampool.ApplicationPoolImpl.doManagedCheckin(ApplicationPoolImpl.java:2161)
         at oracle.jbo.common.ampool.ApplicationPoolImpl.releaseApplicationModule(ApplicationPoolImpl.java:1261)
         at oracle.jbo.common.ampool.SessionCookieImpl.releaseApplicationModule(SessionCookieImpl.java:717)
         at oracle.jbo.common.ampool.SessionCookieImpl.releaseApplicationModule(SessionCookieImpl.java:634)
         at oracle.jbo.common.ws.WSApplicationModuleImpl.endRequest(WSApplicationModuleImpl.java:2672)
         at oracle.adf.model.bc4j.DCJboDataControl.endRequest(DCJboDataControl.java:1283)
         at oracle.adf.model.servlet.ADFBindingFilter.invokeEndRequest(ADFBindingFilter.java:300)
         at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:249)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
         at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:6316)
         at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:317)
         at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:118)
         at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3622)
         at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2569)
         at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:197)
         at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:170)
    ## Detail 0 ##
    java.lang.ClassCastException
         at oracle.jbo.pcoll.OraclePersistManager.updateBlobs(OraclePersistManager.java:1613)
         at oracle.jbo.pcoll.OraclePersistManager.insert(OraclePersistManager.java:1832)
         at oracle.jbo.pcoll.PCollNode.passivateElem(PCollNode.java:561)
         at oracle.jbo.pcoll.PCollNode.passivate(PCollNode.java:684)
         at oracle.jbo.pcoll.PCollNode.passivateBranch(PCollNode.java:643)
         at oracle.jbo.pcoll.PCollection.passivate(PCollection.java:461)
         at oracle.jbo.server.DBSerializer.passivateRootAM(DBSerializer.java:294)
         at oracle.jbo.server.DBSerializer.passivateRootAM(DBSerializer.java:277)
         at oracle.jbo.server.ApplicationModuleImpl.passivateStateInternal(ApplicationModuleImpl.java:5119)
         at oracle.jbo.server.ApplicationModuleImpl.passivateState(ApplicationModuleImpl.java:5011)
         at oracle.jbo.server.ApplicationModuleImpl.doPoolMessage(ApplicationModuleImpl.java:7741)
         at oracle.jbo.common.ampool.ApplicationPoolImpl.sendPoolMessage(ApplicationPoolImpl.java:3923)
         at oracle.jbo.common.ampool.ApplicationPoolImpl.doManagedCheckin(ApplicationPoolImpl.java:2161)
         at oracle.jbo.common.ampool.ApplicationPoolImpl.releaseApplicationModule(ApplicationPoolImpl.java:1261)
         at oracle.jbo.common.ampool.SessionCookieImpl.releaseApplicationModule(SessionCookieImpl.java:717)
         at oracle.jbo.common.ampool.SessionCookieImpl.releaseApplicationModule(SessionCookieImpl.java:634)
         at oracle.jbo.common.ws.WSApplicationModuleImpl.endRequest(WSApplicationModuleImpl.java:2672)
         at oracle.adf.model.bc4j.DCJboDataControl.endRequest(DCJboDataControl.java:1283)
         at oracle.adf.model.servlet.ADFBindingFilter.invokeEndRequest(ADFBindingFilter.java:300)
         at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:249)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
         at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:6316)
         at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:317)
         at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:118)
         at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3622)
         at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2569)
         at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:197)
         at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:170)
    >
    Besides that, I found new error when I was starting Weblogic Server. Herewith, I attach the detail of the error message:
    java.lang.NoClassDefFoundError: org/apache/commons/collections/FastHashMap$KeySet
         at org.apache.commons.collections.FastHashMap.keySet(Unknown Source)
         at org.apache.struts.action.ActionServlet.destroyDataSources(ActionServlet.java:769)
         at org.apache.struts.action.ActionServlet.destroy(ActionServlet.java:431)
         at weblogic.servlet.internal.ServletStubImpl$ServletDestroyAction.run(ServletStubImpl.java:1086)
         at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:317)
         at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:118)
         at weblogic.servlet.internal.ServletStubImpl.destroyServlet(ServletStubImpl.java:569)
         at weblogic.servlet.internal.ServletStubImpl.destroyServlet(ServletStubImpl.java:596)
         at weblogic.servlet.internal.ServletStubImpl.destroyServlet(ServletStubImpl.java:581)
         at weblogic.servlet.internal.WebAppServletContext.destroyServlets(WebAppServletContext.java:5797)
         at weblogic.servlet.internal.WebAppServletContext.destroy(WebAppServletContext.java:5675)
         at weblogic.servlet.internal.ServletContextManager.removeContext(ServletContextManager.java:187)
         at weblogic.servlet.internal.HttpServer.unloadWebApp(HttpServer.java:706)
         at weblogic.servlet.internal.WebAppModule.destroyContexts(WebAppModule.java:764)
         at weblogic.servlet.internal.WebAppModule.rollback(WebAppModule.java:742)
         at weblogic.j2ee.J2EEApplicationContainer.rollbackModule(J2EEApplicationContainer.java:2942)
         at weblogic.j2ee.J2EEApplicationContainer.rectifyClassLoaders(J2EEApplicationContainer.java:1429)
         at weblogic.j2ee.J2EEApplicationContainer.prepare(J2EEApplicationContainer.java:1176)
         at weblogic.j2ee.J2EEApplicationContainer.prepare(J2EEApplicationContainer.java:1031)
         at weblogic.management.deploy.slave.SlaveDeployer$ComponentActivateTask.prepareContainer(SlaveDeployer.java:2634)
         at weblogic.management.deploy.slave.SlaveDeployer$ActivateTask.createContainer(SlaveDeployer.java:2584)
         at weblogic.management.deploy.slave.SlaveDeployer$ActivateTask.prepare(SlaveDeployer.java:2506)
         at weblogic.management.deploy.slave.SlaveDeployer.processPrepareTask(SlaveDeployer.java:833)
         at weblogic.management.deploy.slave.SlaveDeployer.prepareDelta(SlaveDeployer.java:542)
         at weblogic.management.deploy.slave.SlaveDeployer.prepareUpdate(SlaveDeployer.java:500)
         at weblogic.drs.internal.SlaveCallbackHandler$1.execute(SlaveCallbackHandler.java:25)
         at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:197)
         at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:170)
    >
    So, I need someone to sove this problem. I am looking forward for hearing from you.
    Thanks,
    Gunardy

  • Support for the creation of a new BEA WebLogic Application Server v10.3

    To All,
    After downloading and installing the Enterprise Pack for Eclipse (Ganymede: http://download.oracle.com/otn_software/oepe/ganymede) I attempted to create a new BEA WebLogic 10.3 server - since that is the version of the application server that I have installed on my machine.
    I went to create the new server and selected "BEA WebLogic Server v10.0", since there was no option to select a WebLogic 10.3 server. I selected as the WebLogic Home directory "D:\BEA_HOME\wlserver_10.3" and received the error message: "The path "D:\BEA_HOME\wlserver_10.3" contains the wrong version of WebLogic Server. Expected version 10.0. Found version 10.3."
    Is there some way that I can create a new WLS v10.3 in Eclipse Ganymede? Do I need to download an additional plugin?
    Thanks in advance for your help on this,
    John Livingstone

    Look for WLS 10.3 under Oracle rather than BEA group.
    Konstantin

  • BEA Weblogic Application Server

    Hi All,
    Is or was there an BEA Weblogic Application Server 8.0 version? I believe that
    there was no such version, but can someone confirm this for me?
    Thanks
    Simon

    Current versions are:
    5.1, 6.0, 6.1 7.0 and 8.1
    and coming soon 9.X
    Jin
    "simon" <[email protected]> wrote:
    >
    Hi All,
    Is or was there an BEA Weblogic Application Server 8.0 version? I believe
    that
    there was no such version, but can someone confirm this for me?
    Thanks
    Simon

  • 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!!!!!!

  • ANN: J2EE Applications & BEA WebLogic Hardcopies Available!

    ** J2EE Applications & BEA WebLogic Hardcopies Available! **
    The first hardcopies of the only programming book to cover J2EE & WebLogic 6
    are now available. For those of you that have already ordered, we thank you.
    In just a few short weeks we have moved up to the No. 42 spot on Amazon.
    If you have not ordered already, you can order now and copies will be
    shipped in just a few short days. The book can be located Amazon.com at the
    following URL:
    http://www.amazon.com/exec/obidos/ASIN/0130911119/ref=ase_learnweblogic/103-
    5396741-5920623
    More information on this book can be located at:
    http://www.learnweblogic.com/.
    ** Overview **
    Building J2EE Applications & BEA WebLogic is targeted at Java programmers
    developing applications for the BEA WebLogic platform, the leading Web
    Application Server in the marketplace today. This book focuses on best
    practices for developing enterprise applications using the WebLogic APIs.
    After reading this book, intermediate or professional-level Java developers
    will possess the skills and knowledge required to develop scalable and
    robust applications on the WebLogic platform.
    The book combines reference and tutorial, taking a step-by-step approach
    that introduces each API and uses it to build a component of the WebAuction
    application, which supports on-line Auctioning on the Web. All software
    needed to build the sample application is included on a CD-ROM that
    accompanies the book. The WebAuction project gives users the opportunity to
    explore significant areas of building a distributed Enterprise Java
    application, including:
    · Planning in advance for scalability and deployment
    · Building presentation logic
    · Establishing database connectivity
    · Creating Enterprise Java Beans for the BEA WebLogic application server
    · Packaging the whole application so that it can be easily managed and
    maintained.
    ** About the Authors **
    Rob Woollen is a Senior Software Engineer at BEA Systems. He is currently
    the lead developer for the WebLogic Server EJB Container. Before joining
    BEA, Rob worked on UNIX Kernel networking for Hewlett-Packard. Rob holds a
    Bachelors degree in Computer Science from Princeton University.
    Michael Girdley is the Director of Product Management for WebLogic Server at
    BEA, a role in which he acts as chief marketing liaison to over 200
    engineers. An experienced application developer in Java, HTML, C, and C++,
    Michael is a co-author of Web Programming with Java (Sams-net Publishing,
    1996) and Java Unleashed, Second Edition (Sams-net Publishing, 1997).
    Michael holds a Bachelors degree in Computer Science with Honors from
    Lafayette College.
    Sandra L. Emerson is a technical writer and consultant with 20 years'
    experience in the software industry. She is a co-author of four computer
    trade books: The Business Guide to the UNIX System (Addison-Wesley, 1984);
    Database for the IBM PC (Addison-Wesley, 1984); Troff Typesetting for UNIX
    Systems (Prentice-Hall, 1987); and The Practical SQL Handbook
    (Addison-Wesley, 1989-99). The fourth edition of The Practical SQL Handbook
    is scheduled for Fall, 2000.

    ** J2EE Applications & BEA WebLogic Hardcopies Available! **
    The first hardcopies of the only programming book to cover J2EE & WebLogic 6
    are now available. For those of you that have already ordered, we thank you.
    In just a few short weeks we have moved up to the No. 42 spot on Amazon.
    If you have not ordered already, you can order now and copies will be
    shipped in just a few short days. The book can be located Amazon.com at the
    following URL:
    http://www.amazon.com/exec/obidos/ASIN/0130911119/ref=ase_learnweblogic/103-
    5396741-5920623
    More information on this book can be located at:
    http://www.learnweblogic.com/.
    ** Overview **
    Building J2EE Applications & BEA WebLogic is targeted at Java programmers
    developing applications for the BEA WebLogic platform, the leading Web
    Application Server in the marketplace today. This book focuses on best
    practices for developing enterprise applications using the WebLogic APIs.
    After reading this book, intermediate or professional-level Java developers
    will possess the skills and knowledge required to develop scalable and
    robust applications on the WebLogic platform.
    The book combines reference and tutorial, taking a step-by-step approach
    that introduces each API and uses it to build a component of the WebAuction
    application, which supports on-line Auctioning on the Web. All software
    needed to build the sample application is included on a CD-ROM that
    accompanies the book. The WebAuction project gives users the opportunity to
    explore significant areas of building a distributed Enterprise Java
    application, including:
    · Planning in advance for scalability and deployment
    · Building presentation logic
    · Establishing database connectivity
    · Creating Enterprise Java Beans for the BEA WebLogic application server
    · Packaging the whole application so that it can be easily managed and
    maintained.
    ** About the Authors **
    Rob Woollen is a Senior Software Engineer at BEA Systems. He is currently
    the lead developer for the WebLogic Server EJB Container. Before joining
    BEA, Rob worked on UNIX Kernel networking for Hewlett-Packard. Rob holds a
    Bachelors degree in Computer Science from Princeton University.
    Michael Girdley is the Director of Product Management for WebLogic Server at
    BEA, a role in which he acts as chief marketing liaison to over 200
    engineers. An experienced application developer in Java, HTML, C, and C++,
    Michael is a co-author of Web Programming with Java (Sams-net Publishing,
    1996) and Java Unleashed, Second Edition (Sams-net Publishing, 1997).
    Michael holds a Bachelors degree in Computer Science with Honors from
    Lafayette College.
    Sandra L. Emerson is a technical writer and consultant with 20 years'
    experience in the software industry. She is a co-author of four computer
    trade books: The Business Guide to the UNIX System (Addison-Wesley, 1984);
    Database for the IBM PC (Addison-Wesley, 1984); Troff Typesetting for UNIX
    Systems (Prentice-Hall, 1987); and The Practical SQL Handbook
    (Addison-Wesley, 1989-99). The fourth edition of The Practical SQL Handbook
    is scheduled for Fall, 2000.

  • J2EE Applications & BEA WebLogic Hardcopies Available!

    ** J2EE Applications & BEA WebLogic Hardcopies Available! **
    The first hardcopies of the only programming book to cover J2EE & WebLogic 6
    are now available. For those of you that have already ordered, we thank you.
    In just a few short weeks we have moved up to the No. 42 spot on Amazon.
    If you have not ordered already, you can order now and copies will be
    shipped in just a few short days. The book can be located Amazon.com at the
    following URL:
    http://www.amazon.com/exec/obidos/ASIN/0130911119/ref=ase_learnweblogic/103-
    5396741-5920623
    More information on this book can be located at:
    http://www.learnweblogic.com/.
    ** Overview **
    Building J2EE Applications & BEA WebLogic is targeted at Java programmers
    developing applications for the BEA WebLogic platform, the leading Web
    Application Server in the marketplace today. This book focuses on best
    practices for developing enterprise applications using the WebLogic APIs.
    After reading this book, intermediate or professional-level Java developers
    will possess the skills and knowledge required to develop scalable and
    robust applications on the WebLogic platform.
    The book combines reference and tutorial, taking a step-by-step approach
    that introduces each API and uses it to build a component of the WebAuction
    application, which supports on-line Auctioning on the Web. All software
    needed to build the sample application is included on a CD-ROM that
    accompanies the book. The WebAuction project gives users the opportunity to
    explore significant areas of building a distributed Enterprise Java
    application, including:
    · Planning in advance for scalability and deployment
    · Building presentation logic
    · Establishing database connectivity
    · Creating Enterprise Java Beans for the BEA WebLogic application server
    · Packaging the whole application so that it can be easily managed and
    maintained.
    ** About the Authors **
    Rob Woollen is a Senior Software Engineer at BEA Systems. He is currently
    the lead developer for the WebLogic Server EJB Container. Before joining
    BEA, Rob worked on UNIX Kernel networking for Hewlett-Packard. Rob holds a
    Bachelors degree in Computer Science from Princeton University.
    Michael Girdley is the Director of Product Management for WebLogic Server at
    BEA, a role in which he acts as chief marketing liaison to over 200
    engineers. An experienced application developer in Java, HTML, C, and C++,
    Michael is a co-author of Web Programming with Java (Sams-net Publishing,
    1996) and Java Unleashed, Second Edition (Sams-net Publishing, 1997).
    Michael holds a Bachelors degree in Computer Science with Honors from
    Lafayette College.
    Sandra L. Emerson is a technical writer and consultant with 20 years'
    experience in the software industry. She is a co-author of four computer
    trade books: The Business Guide to the UNIX System (Addison-Wesley, 1984);
    Database for the IBM PC (Addison-Wesley, 1984); Troff Typesetting for UNIX
    Systems (Prentice-Hall, 1987); and The Practical SQL Handbook
    (Addison-Wesley, 1989-99). The fourth edition of The Practical SQL Handbook
    is scheduled for Fall, 2000.

    ** J2EE Applications & BEA WebLogic Hardcopies Available! **
    The first hardcopies of the only programming book to cover J2EE & WebLogic 6
    are now available. For those of you that have already ordered, we thank you.
    In just a few short weeks we have moved up to the No. 42 spot on Amazon.
    If you have not ordered already, you can order now and copies will be
    shipped in just a few short days. The book can be located Amazon.com at the
    following URL:
    http://www.amazon.com/exec/obidos/ASIN/0130911119/ref=ase_learnweblogic/103-
    5396741-5920623
    More information on this book can be located at:
    http://www.learnweblogic.com/.
    ** Overview **
    Building J2EE Applications & BEA WebLogic is targeted at Java programmers
    developing applications for the BEA WebLogic platform, the leading Web
    Application Server in the marketplace today. This book focuses on best
    practices for developing enterprise applications using the WebLogic APIs.
    After reading this book, intermediate or professional-level Java developers
    will possess the skills and knowledge required to develop scalable and
    robust applications on the WebLogic platform.
    The book combines reference and tutorial, taking a step-by-step approach
    that introduces each API and uses it to build a component of the WebAuction
    application, which supports on-line Auctioning on the Web. All software
    needed to build the sample application is included on a CD-ROM that
    accompanies the book. The WebAuction project gives users the opportunity to
    explore significant areas of building a distributed Enterprise Java
    application, including:
    · Planning in advance for scalability and deployment
    · Building presentation logic
    · Establishing database connectivity
    · Creating Enterprise Java Beans for the BEA WebLogic application server
    · Packaging the whole application so that it can be easily managed and
    maintained.
    ** About the Authors **
    Rob Woollen is a Senior Software Engineer at BEA Systems. He is currently
    the lead developer for the WebLogic Server EJB Container. Before joining
    BEA, Rob worked on UNIX Kernel networking for Hewlett-Packard. Rob holds a
    Bachelors degree in Computer Science from Princeton University.
    Michael Girdley is the Director of Product Management for WebLogic Server at
    BEA, a role in which he acts as chief marketing liaison to over 200
    engineers. An experienced application developer in Java, HTML, C, and C++,
    Michael is a co-author of Web Programming with Java (Sams-net Publishing,
    1996) and Java Unleashed, Second Edition (Sams-net Publishing, 1997).
    Michael holds a Bachelors degree in Computer Science with Honors from
    Lafayette College.
    Sandra L. Emerson is a technical writer and consultant with 20 years'
    experience in the software industry. She is a co-author of four computer
    trade books: The Business Guide to the UNIX System (Addison-Wesley, 1984);
    Database for the IBM PC (Addison-Wesley, 1984); Troff Typesetting for UNIX
    Systems (Prentice-Hall, 1987); and The Practical SQL Handbook
    (Addison-Wesley, 1989-99). The fourth edition of The Practical SQL Handbook
    is scheduled for Fall, 2000.

  • Configuring Workspace to Application Server (BEA Weblogic)

    Hiello,
    I am in the processing of installing and configuring System 11.1.1.1 and I have run into an issue with configuring Worksapce. I have successfully installed and configured Shared Services on (server1) using BEA Weblogic 9.2 MP3 but when I go to configure Worksapce (on the same server) the Deploy to Application Server FAILS. I have uninstalled and re-installed the software 6+ times with the same results. I would think since Shared Services works using Weblogic 9.2 MP3, Workspace would also work.
    When the configruation FAILS while deploying to the Applicaton Server this is the error that is generated in the config log file:
    "(Jan 16, 2009, 08:11:11 AM), com.hyperion.hit.registry.utils.RegistryLogger, ERROR, Component type name null is not valid INVOKER IS com.hyperion.hit.registry.LogicalWebAppComponentImpl.getWebAppType
    (Jan 16, 2009, 08:11:11 AM), com.hyperion.hit.registry.LogicalWebAppComponentImpl, ERROR,"
    Any help would be appreciated.
    Thanks

    Hi Jimit,
    Please download : Oracle WebLogic Server 11gR1 (10.3.2) - Package Installer from the below link: http://www.oracle.com/technology/software/products/ias/htdocs/wls_main.html
    Once you click on *"Accept"* radio button then after *"Sign in"* you will be able to download it for Linux.
    Installation is very easy ...just run the installer ...it will ask for the Installation Directory...and once you provide it...it should do every thing for you.
    Thanks
    Jay SenSharma
    http://jaysensharma.wordpress.com (WebLogic Wonders Are Here)

  • Build and run Sun's PetStore1.3.1_02 application with BEA WebLogic Server 8.1.

    build and run Sun's PetStore
    1.3.1_02 application with BEA WebLogic Server 8.1.
    5) In the same Command Prompt, compile PetStore using the commands:
    cd c:\bea\user_projects\domains\petstore
    setPetStoreEnv.cmd
    cd c:\petstore1.3.1_02\src
    ant
    buildfile:build.xml does not exist!
    build failed
    could you tell me how ?
    thank you

    What we, BEA, provides is a patch to allow you to compile Pet Store for
    WebLogic Server. It does not contain the source code.
    Sun's Pet Store source code can be found at
    http://developer.java.sun.com/developer/releases/petstore/petstore1_3_1_02.h
    tml. See the requirements section of README.TXT
    You need both in order to make it work.
    "Ankur" <[email protected]> wrote in message
    news:3fa9f2d9$[email protected]..
    Hi Nick,
    I tried building the petstore1.3.1_02 application following theinstructions in the readme. But I got an error as the buil.xml file is
    missing in the directory.....\petstore1.3.1_02\src.
    >
    I tried unzipping the downloaded again and for a petstore.domain.jar alongwith the readme. This jar does not contain the build.xml file.
    >
    Then I tried compiling one by one the component folder and found that the../xmldocuments/src folder has only a build.xml file but no source file...
    >
    Kinldy suggest what to do? Can you send me the zip via email?
    P.S: I have checked the zip and the files are missing.

  • ** ANNOUNCE: J2EE Applications & BEA WebLogic Hardcopies Available! **

    ** ANNOUNCE: J2EE Applications & BEA WebLogic Hardcopies Available! **
    The first hardcopies of the only programming book to cover J2EE & WebLogic 6
    are now available. For those of you that have already ordered, we thank
    you.
    In just a few short weeks we have moved up to the No. 636 spot on Amazon.
    This is great interest in considering the official ship date is not until
    August 16!
    If you have not ordered already, you can order now and copies will be
    shipped in just a few short days. The book can be located Amazon.com at the
    following URL:
    http://www.amazon.com/exec/obidos/ASIN/0130911119/learnweblogic/102-1778325-
    4765749
    More information on this book can be located at:
    http://www.learnweblogic.com/.
    ** Overview **
    Building J2EE Applications & BEA WebLogic is targeted at Java programmers
    developing applications for the BEA WebLogic platform, the leading Web
    Application Server in the marketplace today. This book focuses on best
    practices for developing enterprise applications using the WebLogic APIs.
    After reading this book, intermediate or professional-level Java developers
    will possess the skills and knowledge required to develop scalable and
    robust applications on the WebLogic platform.
    The book combines reference and tutorial, taking a step-by-step approach
    that introduces each API and uses it to build a component of the WebAuction
    application, which supports on-line Auctioning on the Web. All software
    needed to build the sample application is included on a CD-ROM that
    accompanies the book. The WebAuction project gives users the opportunity to
    explore significant areas of building a distributed Enterprise Java
    application, including:
    · Planning in advance for scalability and deployment
    · Building presentation logic
    · Establishing database connectivity
    · Creating Enterprise Java Beans for the BEA WebLogic application server
    · Packaging the whole application so that it can be easily managed and
    maintained.
    ** About the Authors **
    Rob Woollen is a Senior Software Engineer at BEA Systems. He is currently
    the lead developer for the WebLogic Server EJB Container. Before joining
    BEA, Rob worked on UNIX Kernel networking for Hewlett-Packard. Rob holds a
    Bachelors degree in Computer Science from Princeton University.
    Michael Girdley is the Director of Product Management for WebLogic Server at
    BEA, a role in which he acts as chief marketing liaison to over 200
    engineers. An experienced application developer in Java, HTML, C, and C++,
    Michael is a co-author of Web Programming with Java (Sams-net Publishing,
    1996) and Java Unleashed, Second Edition (Sams-net Publishing, 1997).
    Michael holds a Bachelors degree in Computer Science with Honors from
    Lafayette College.
    Sandra L. Emerson is a technical writer and consultant with 20 years'
    experience in the software industry. She is a co-author of four computer
    trade books: The Business Guide to the UNIX System (Addison-Wesley, 1984);
    Database for the IBM PC (Addison-Wesley, 1984); Troff Typesetting for UNIX
    Systems (Prentice-Hall, 1987); and The Practical SQL Handbook
    (Addison-Wesley, 1989-99). The fourth edition of The Practical SQL Handbook
    is scheduled for Fall, 2000.

    ** ANNOUNCE: J2EE Applications & BEA WebLogic Hardcopies Available! **
    The first hardcopies of the only programming book to cover J2EE & WebLogic 6
    are now available. For those of you that have already ordered, we thank
    you.
    In just a few short weeks we have moved up to the No. 636 spot on Amazon.
    This is great interest in considering the official ship date is not until
    August 16!
    If you have not ordered already, you can order now and copies will be
    shipped in just a few short days. The book can be located Amazon.com at the
    following URL:
    http://www.amazon.com/exec/obidos/ASIN/0130911119/learnweblogic/102-1778325-
    4765749
    More information on this book can be located at:
    http://www.learnweblogic.com/.
    ** Overview **
    Building J2EE Applications & BEA WebLogic is targeted at Java programmers
    developing applications for the BEA WebLogic platform, the leading Web
    Application Server in the marketplace today. This book focuses on best
    practices for developing enterprise applications using the WebLogic APIs.
    After reading this book, intermediate or professional-level Java developers
    will possess the skills and knowledge required to develop scalable and
    robust applications on the WebLogic platform.
    The book combines reference and tutorial, taking a step-by-step approach
    that introduces each API and uses it to build a component of the WebAuction
    application, which supports on-line Auctioning on the Web. All software
    needed to build the sample application is included on a CD-ROM that
    accompanies the book. The WebAuction project gives users the opportunity to
    explore significant areas of building a distributed Enterprise Java
    application, including:
    · Planning in advance for scalability and deployment
    · Building presentation logic
    · Establishing database connectivity
    · Creating Enterprise Java Beans for the BEA WebLogic application server
    · Packaging the whole application so that it can be easily managed and
    maintained.
    ** About the Authors **
    Rob Woollen is a Senior Software Engineer at BEA Systems. He is currently
    the lead developer for the WebLogic Server EJB Container. Before joining
    BEA, Rob worked on UNIX Kernel networking for Hewlett-Packard. Rob holds a
    Bachelors degree in Computer Science from Princeton University.
    Michael Girdley is the Director of Product Management for WebLogic Server at
    BEA, a role in which he acts as chief marketing liaison to over 200
    engineers. An experienced application developer in Java, HTML, C, and C++,
    Michael is a co-author of Web Programming with Java (Sams-net Publishing,
    1996) and Java Unleashed, Second Edition (Sams-net Publishing, 1997).
    Michael holds a Bachelors degree in Computer Science with Honors from
    Lafayette College.
    Sandra L. Emerson is a technical writer and consultant with 20 years'
    experience in the software industry. She is a co-author of four computer
    trade books: The Business Guide to the UNIX System (Addison-Wesley, 1984);
    Database for the IBM PC (Addison-Wesley, 1984); Troff Typesetting for UNIX
    Systems (Prentice-Hall, 1987); and The Practical SQL Handbook
    (Addison-Wesley, 1989-99). The fourth edition of The Practical SQL Handbook
    is scheduled for Fall, 2000.

  • Does restarting oc4j container redeploys the applications

    does restarting oc4j container redeploys the applications that are in that container?
    Thanks.

    No it should not. What version of OC4J (Oracle Application Server) are you using? And are you noticing this behavior or just curious?
    Thanks
    Shail

  • Weblogic Application redeployment  not working

    Hi guys
    I am running on WL10.0 (WLP10.2). I was trying to implement application-redeployment. I gave version name to app, and update it. But application just keeps on waiting (deploy Running status). Where as it should come to Active state and the older version should be retired state.
    Is it working for anyone?
    Thanks

    I have seen this many times wls 9 and 10. I usually follow these steps to get it in active state.
    1. Shutdown all the JVMs.
    2. Start Admin server and undo any unactivated changes
    3. delete the cache directory on all the jvms. (check also permission for all the files)
    4. bring up the managed servers
    5. update the application again.
    It works for me most of the time. Hope this helps.
    regards,
    Harsha

  • XSQL and BEA Weblogic 6.1

    I spent a lot of time trying to figure out how to configure
    the XSQL servlet to run on BEA Weblogic 6.1
    It is really simple once you understand that you should work
    off expanded directory instead of trying to get a .war or .ear
    file uploaded.
    I decided to give my explanation to help others...
    This works with the current XDK (9.0.2.0.0D) on OTN and I got it
    running on Windows 2000 and/or Solaris.
    I based these instructions on Steve Muench for
    "ANN Deploy Oracle XSQL Pages to OC4J" off the OTN web site.
    1) get the latest xdk_java off the OTN web site.
    2) create a directory (or subdirectory) named xsql (to hold the entire application
    3) create /xsql/META-INF
    /xsql/WEB-INF
    /xsql/WEB-INF/lib
    /xsql/WEB-INF/classes
    structure to hold the XSQL servlet
    4) create a /xsql/META-INF/application.xml with the following code:
    <!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>Oracle XSQL Servlet</display-name>
    <description>Oracle XSQL Servlet</description>
    <module>
    <web>
    <web-uri>xsql.war</web-uri>
    <context-root>xsql</context-root>
    </web>
    </module>
    </application>
    5) create the file /xsql/WEB-INF/web.xml with the following content
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <!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>
    <servlet>
    <servlet-name>oracle-xsql-servlet</servlet-name>
    <servlet-class>oracle.xml.xsql.XSQLServlet</servlet-class>
    </servlet>
    <servlet-mapping>
    <servlet-name>oracle-xsql-servlet</servlet-name>
    <url-pattern>*.xsql</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
    <servlet-name>oracle-xsql-servlet</servlet-name>
    <url-pattern>/xsql/*</url-pattern>
    </servlet-mapping>
    </web-app>
    6)extract the xdk_java (that you copied from the OTN) on a temporary directory. (/otn)
    7) copy the following files (they are in the /otn/lib subdirectory) into /xsql/WEB-INF/lib
    oraclexsql.jar
    xsqlserializers.jar
    xmlparserv2.jar
    xsu12.jar
    8) copy /otn/xdk/admin/XSQLConfig.xml to xsql/WEB-INF/classes
    9) copy the entire directory and subdir /otn/xdk/demo/java/xsql to /xsql/demo
    10) no need to create a war or ear file as Weblogic will work better from the expanded directory
    anyway and it is simpler to implement.
    11) Now you need to copy that entire directory structure /xsql over to the Weblogic Application Server
    config/domain-name/applications area so in my case it is
    /bea/wlserver6.1/config/your_domain/applications/xsql
    12) If Weblogic is running in development mode, it should deploy and load the servlet automatically.
    If it is running in production mode, then we would need to restart it.
    13) You should be able to test this with http://your_host:7001/xsql/demo/index.html
    Any URL that specifies the /xsql will then be treated by the
    XSQL Servlet.
    It works for me...

    Hi Denis,
    I followed your procedure to deploy XSQL Servlet on WebLogic 6.1. First I deployed as expanded directory structure although I turned 'Auto Deployed Enabled' flag to on for my domain, WebLogic couldn't pick up the application. Then I tried to create ear application and deployed it (In your message you are saying that don't need to create ear or war, you mean this is not just a necessity or it never could be deployed as ear/war files). I saw on the as deployed on console but when I tried the http://myhost:7001/xsql/demo/index.html, I got the following error message.
    Oracle XDK Java 9.2.0.2.0 Production
    XSQL-013: XSQL Page URI is null or has an invalid format.
    Oracle XDK Java 9.2.0.2.0 Production
    XSQL-013: XSQL Page URI is null or has an invalid format.
    Can you help me to trouble shoot this problem? Thank you very much
    Deha Peker

  • Process instances terminate upon application redeployment

    Hello all,
    I have been trying to find an answer for this question in the forums, but to no result.
    I have created a proof-of-concept process and deployed it on the server. The process works just fine, containing Client Request controls, creating Tasks etc.
    The problem is when, during development, I make some change in some helper class or the procees itself and redeploy the application. Even when I just rebuild/redeploy w/o any changes.
    Then, any running process instances (e.g. blocked, waiting for a Client Response or a Task onComplete) are terminated w/o any message, at least not a message that I can see.
    Is this a "feature" or have I forgotten to setup something correctly?
    If this is a feature, why aren't the open Task Controls also terminated, like the process instances that created them are?
    How can I prevent the process instances from being auto-terminated upon application redeployment?
    My process' properties:
    - freeze on failure: true
    - persistent: always
    - on sync failure: rethrow
    - retry count: 1
    - retry delay: <empty>
    - stateless: false
    - binding: webservice
    - version strategy: loosely coupled
    My configuration:
    - Weblogic Integration 8.5 SP6
    - Weblogic Server 8.1 SP6
    - Back-end DB: the default DB server, that comes with the BEA installation
    I would greatly appreciate any help/suggestions/links, as I find this feature/error very frustrating.
    My apologies if this has already been answered before.
    Thank you for your time,
    S.

    OK, to answer my own question.
    It was not a "problem", but a "feature".
    I had the server starting in development mode, so by default process instances are terminated upon redeployment.
    Editing the setDomainEnv.cmd and setting
    set PRODUCTION_MODE=true
    solved my "problem".
    Hope this helps s/o in the future.

Maybe you are looking for