ADF and EJB. Why so little samples / information

Hi All,
I was wondering if other JDev / ADF developers have the same feeling as me in regards to ADF / EJB.
There is barely enough information and examples on using ADF with EJB. Seems that most examples and blogs are related to BC instead.
I was reading an article (sorry, don't have the link to it) not long ago that an Oracle Executive was asked if BC or EJB was Oracle's future and EJB was the answer. However, that doesn't seem to be the what most blogs and sample are about.
I know that BC has tight integration with ADF, but it's not a standards based back-end framework. We are locked in the ADF UI for all of our development, but not touching BC at all. All code is EJB compliant.
So, my request is:
- comments? do other developers out there feel the same way?
- bloggers, the great articles from "Frank Nimphius" and "Andrejus Baranovskis", not to mention others, can you guys post a little more on using ADF with EJB?
BTW: great article on that "http://www.oracle.com/technology/products/jdev/tips/fnimphius/ControlHintsWithPojos/controlHintsWithPojos.html" (How-to find and set control hints on POJO entities in bean Data Controls)
Thanks and Regards
Jonny Oenning

Hi!
I rised this issue long time ago - with TP3 I noticed regression in EJB/JPA support with ADFm (binding layer as referred by Shay). Following the development, I draw this conclusions:
1. Oracle is oriented toward J2EE standards, including the strategic orientation to EJB/JPA. The team that managed JDev 11g initial development phases was oriented toward EJB (but was replaced/fired sometime between TP2 and TP3).
2. Oracle decided that FMW 11g stack products as well as EBS migration from PL/SQL to EJB is not feasible in short time frame (I think that was poor judgment). So, the BCs got the push over the EJB and TP3/4 was biased toward BCs. Even the default Fusion technology stack is changed - in TP1/2 the Fusion Web project was ADF RC + EJB buy default and then changed to ADF RC + BC4J. Also the development guides were "rephrased".
3. As BC4J are proprietary Oracle technology, the are lacking many J2EE standard features and many strong points of the modern multi-tier architecture. Many developers are witnessing the performance / scalability issues as the BC4J are basically a mutant: they are SQL based concept wrapped into EJB for deployment! But they are not relaying on proven scalable J2EE technologies (like JPA/JTA, object caching etc.). They are trying to reinvent the wheel, decalratively offering the heaven of J2EE multi-tear architecture to old fashion SQL-focused architects/developers. But it is just a marketing - the truth is that BC4J are not and cannot be the replacement for proven J2EE architecture. They are trying to mimic the concepts of J2EE (like object-entity mapping, like JTA/JPA, like scalability and caching, transparent web-services exposition etc.) but they are lagging behind even J2EE 1.4 and we are facing the J2EE 6 in few months!
4. Oracle is aware that EJB is the future but they are trying to bridge the gap between their legacy code written mainly in PL/SQL. So they developed and they are developing the JDeveloper 11g in fashin that should support and serve for their primary goals - migration of their own old PL/SQL based products to new, J2EE, world (of BEA!).
So, anyone who is expecting the that Oracle JDeveloper is what they are marketing (full scale J2EE IDE) - is going to waste some time and money waiting the Oracle to finish it's half-way migration from PL/QL and Forms/Reports to PL/SQL + ADF RC! In few years from now.
Thus, if you need efficiency in J2EE standards development - try something else than JDeveloper. Or, as suggested by Shay, don't use overmarketed ADFm as it is not compatible with EJBs in scalable / clustered deployment! Yes, that is proven issue (but I wont elaborate here as it is already well elaborated in this forum in another tread but the Oracle guys wisely neglected that issue).
And beside few very very old and for me useless blog entries (one of which is not working in 11g as you may read in comments) there will be no much support for EJBs in this release of JDeveloper - I can bet!
But, as final message to the public, I'm still stuck with JDev and EJBs as. When you develop you own patterns, it is still the best combination for developing the scalable, high performance apps on Oracle FMW 11g platform - mandatory including several grid technologies that are making the difference in scalability of true J2EE apps and quasi-J2EE "Fusion" apps based on BC4Js "silently" wrapped in EJBs for deployment.
Regards,
PaKo

Similar Messages

  • Why use app server and EJB?

    we have a project about Component-based Library for Business Information Systems.
    We have chosen Point-Of-Sales System as the type of our system.
    why do we need to use app server and EJB?
    Hope can have replies soon. Thanks so much!
    regards
    beginning of EJB

    Well, you don't need to. You might want to because transaction management is important for point-of-sales and app server/EJB gives you that for 'almost nothing'.

  • ADF – Could I have HttpSession and EJB 3 Statefull session in same applicat

    I am using JDeveloper 10.3.2. Fist I create a single demo application to create EJB Session Bean (Statefull) and is working fine.
    When I am trying to use the same EJB to my large Application a got runtime Error,
    Without any exception. (Losing the information of EJB).
    And the Question is, Shall I use HttpSession and EJB 3 Statefull session in same application?

    Hi,
    if it is a Web application you need the https session anyway and the two are different kind of beasts, one handled by teh EJB container, the other by the web container.
    The question is why you ned stateful session beans - which seems to be a rare usecase? Usually state is persisted and tracked in the business service.
    However, without an error message its hard to tell what going wrong here
    Frank

  • HT1695 I know nothing about how to use my new ipod and when reading the little bit of information in the folder that came with it, all I can do is turn it on, but it just powers down after a few seconds.  How do I work this thing?

    I know nothing about how to use my new ipod and when reading the little information that came with it, all I can do is turn it on.  Then in a few seconds it goes black, never having brought up a screen to do anything!  Help!  What do I do to get this thing going?

    You might consider connecting it to the charger and charging up the battery overnight.
    Please Get the iPod Touch User Manual for iOS 5

  • Why is my billing information not being review correctly...like it sayes my apple id has not yet been used in the itune store and it tells me to review my account info but for some reason it doesnt work

    why is my billing information not being review correctly...like it sayes my apple id has not yet been used in the itune store and it tells me to review my account info but for some reason it doesnt work

    Hi there ethangabe,
    You may find the information in the article below helpful.
    Using an existing Apple ID with the iTunes Store, Mac App Store, and iBooks Store
    http://support.apple.com/kb/ht2589
    -Griff W. 

  • I dont know why the battery life of my iphone 4 is so low ! i really want to know how many hours i'll have if it's on standby. And how many hours if i use it normally for music and facebook (sometimes a little bit games)

    i dont know why the battery life of my iphone 4 is so low ! i really want to know how many hours i'll have if it's on standby. And how many hours if i use it normally for music and facebook (sometimes a little bit games) !!!

    to enhance your battery life, keep screen display to minimum, set screen lock automatically after 1 min, select internet notifications to off.

  • Why is it that I can't receive the email to reset my security questions and answers.. My email information is all accurate but I'm not receiving the email and I've even checked spam and junk folders.. Can someone please help me please???

    Why is it that I can't receive the email to reset my security questions and answers.. My email information is all accurate but I'm not receiving the email and I've even checked spam and junk folders.. Can someone please help me

    Are you able to receive any mail at all? If not, make sure that all of your information for mail is accurate in settings again. if you still have nothing, go to your email through safari. (example: www.yahoo.com) If you do not see the emails here either, it is a problem with the password reset server not your mail app.

  • OC4J EJBQL and EJB 2.0 features

    Hello Debu Panda and All
    I've got all howtos and I mangaged to get some parts of OC4J [Oracle9iAS (9.0.3.0.0) Containers for J2EE (build 020323.1689)] working.
    There are still some issues that are stalling our development. Could you please comment on them, maybe providing an estimate of when they will be solved/implemented?
    First of all, a little background. Our application uses many Java Swing application clients that connect to the EAR application in the container.
    The ear application has the following structure:
    All database access (Oracle 8i, located in its own server) is done exclusively by means of CMP entity beans. A entity bean may access other entity beans. There are workflow session beans (stateful and stateless) that access the entity beans. All clients see only the workflow session beans (session beans fagade).
    Our applicatoin is complex, having more than 80 session beans and more than 25 entity beans (not counting entity beans that exist only to represent relationships among entity beans).
    There goes the questions:
    1) It seems that entity beans cannot currently be referenced by remote interfaces. We couldn't deploy our application using it. Since we could use only local interfaces fot entity beans, thats what is been done now.
    2) There is no CMR supported. Is this true?
    3) EJBQL seems to be very limited. In the howto examples there are EJBQL statements that compare two numbers. However, when we tried to use String comparisons, it didn't work. Here is the statement:
    "SELECT DISTINCT OBJECT(p) FROM Person p WHERE p.name = ?1"
    If I compile, package and deploy the ear applicatin with the above EJBQL statement, OC4J generates an exception when executing the finder method. The exception is:
    "java.rmi.NoSuchObjectException: Session has timed out
    at com.evermind.server.ejb.StatefulSessionEJBObject.throwPassivisat
    ception(StatefulSessionEJBObject.java:188)
    at Cad023Remote_StatefulSessionBeanWrapper0.obterPessoasPorParteNom
    023Remote_StatefulSessionBeanWrapper0.java:754)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.evermind.server.rmi.RMICallHandler.run(RMICallHandler.java:8
    at com.evermind.util.ThreadPoolThread.run(ThreadPoolThread.java:64)"
    If I remove the where clause, the expection is gone. However, I get all records. ;-)
    4) It seems that all EJBQL clauses must be capitalized. Is this true?
    FINALY)
    Is there a newer OC4J build that could use to get the development going? Do you know where there will be one? Is there any way of contacting the OC4J development team to report bugs?
    If you would like, we could discuss it in private e-mail (please use my private mail [email protected]).
    Thanks for your attention,
    Luis Fernando Soeiro
    Hi !! OC4J 9.0.3 developer's preview has most features of EJB 2.0. We are working on updating on our docs and samples for EJB 2.0
    Please look at the following URL that has some How Tos on EJB 2.0 features such Local Interfacea, EJB QL, etc : http://otn.oracle.com/tech/java/oc4j/htdocs/oc4j-how-to.html#ejb
    regards
    Debu Panda
    Oracle --------------------------
    Luis Soeiro <mailto:[email protected]> <mailto:[email protected]>Type : Question Date : Apr 11, 2002 15:15 PT Hello
    Some colleagues and I are trying to port a large project from JBOSS to OC4J. We used JBOSS 3.0 (beta) in order to evaluate EJB2.0 features and see if we could use it. We already have OC4J in production, but only as a JSP/Servlet container. The next step would be to deploy our EJB application to OC4J.
    We have read the material and it is written that OC4J (developers preview) is EJB 2.0 compliant. However, the specific documentation and the examples don't show how to specify OC4J specifc XML files. We absolutely need CMR and Local Interfaces, because we don't have the time required to downgrade our JBoss EJB2.0 application to the EJB 1.1 specification. We have over 80 Session Beans and over 20 Entity Beans.
    Is there anybody there that can confirm that OC4J developer's preview is really EJB2.0 compliant? If so, could you send me some pointers to information about OC4J container specifc deployment descriptors? The docs listed at the web site don't have EJB2.0 features listed, nor does the Oracle samples.
    Thanks for your attention,
    desperately,
    Luis Fernando Soeiro

    HI,
    I worked out CMR and EJB-QL with single bean.
    Using CMR, it is possible to get one bean reference through other bean, but
    When I tried EJB-QL with bean to bean navigation then I run into problem.

  • JDeveloper & ADF with EJB

    Hi I created a Session EJB in my ADF project but when I try to run a flow that calls the EJB I get the following error:
    Target URL -- http://127.0.0.1:7101/BrowseEditApp-ViewController-context-root/faces/adf.task-flow?adf.tfId=ejb-claims&adf.tfDoc=/WEB-INF/ejb-claims.xml
    <BeanDataControl><loadProvider> Failed to load the provider: com.deplhitech.model.ejb.test.TestSessionEJBLocal
    <DataControlFactoryImpl><createSession> Exception:
    oracle.adf.model.adapter.AdapterException: DCA-29000: Unexpected exception caught: java.lang.InstantiationException, msg=com.deplhitech.model.ejb.test.TestSessionEJBLocal
         at oracle.adf.model.adapter.bean.BeanDataControl.loadProvider(BeanDataControl.java:152)
         at oracle.adf.model.adapter.bean.BeanDataControl.<init>(BeanDataControl.java:70)
         at oracle.adf.model.adapter.bean.BeanDefinition.createDataControl(BeanDefinition.java:103)
         at oracle.adf.model.adapter.DataControlFactoryImpl.createSession(DataControlFactoryImpl.java:173)
         at oracle.adf.model.binding.DCDataControlReference.getDataControl(DCDataControlReference.java:166)
         at oracle.adf.model.BindingContext.instantiateDataControl(BindingContext.java:844)
         at oracle.adf.model.dcframe.DataControlFrameImpl.doFindDataControl(DataControlFrameImpl.java:1069)
         at oracle.adf.model.dcframe.DataControlFrameImpl.internalFindDataControl(DataControlFrameImpl.java:972)
         at oracle.adf.model.dcframe.DataControlFrameImpl.findDataControl(DataControlFrameImpl.java:932)
         at oracle.adf.model.BindingContext.internalFindDataControl(BindingContext.java:965)
         at oracle.adf.model.BindingContext.get(BindingContext.java:922)
         at oracle.adf.model.binding.DCBindingContainer.findDataControl(DCBindingContainer.java:1548)
         at oracle.jbo.uicli.binding.JUMethodIteratorDef$JUMethodIteratorBinding.initDataControl(JUMethodIteratorDef.java:589)
         at oracle.adf.model.binding.DCIteratorBinding.getDataControl(DCIteratorBinding.java:2379)
         at oracle.adf.model.binding.DCIteratorBinding.getSortCriteria(DCIteratorBinding.java:3710)
         at oracle.adf.model.binding.DCInvokeMethod.setAssociatedIteratorBinding(DCInvokeMethod.java:865)
         at oracle.adf.model.binding.DCIteratorBinding.cacheRefOnOperation(DCIteratorBinding.java:5127)
         at oracle.jbo.uicli.binding.JUMethodIteratorDef$JUMethodIteratorBinding.getActionBinding(JUMethodIteratorDef.java:283)
         at oracle.jbo.uicli.binding.JUMethodIteratorDef.isRefreshable(JUMethodIteratorDef.java:59)
         at oracle.adf.model.binding.DCExecutableBindingDef.isRefreshable(DCExecutableBindingDef.java:274)
         at oracle.adf.model.binding.DCBindingContainer.internalRefreshControl(DCBindingContainer.java:2921)
         at oracle.adf.model.binding.DCBindingContainer.refresh(DCBindingContainer.java:2791)
         at oracle.adf.controller.v2.lifecycle.PageLifecycleImpl.prepareModel(PageLifecycleImpl.java:112)
         at oracle.adf.controller.v2.lifecycle.Lifecycle$2.execute(Lifecycle.java:137)
         at oracle.adfinternal.controller.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:192)
         at oracle.adfinternal.controller.faces.lifecycle.ADFPhaseListener.access$400(ADFPhaseListener.java:21)
         at oracle.adfinternal.controller.faces.lifecycle.ADFPhaseListener$PhaseInvokerImpl.startPageLifecycle(ADFPhaseListener.java:231)
         at oracle.adfinternal.controller.faces.lifecycle.ADFPhaseListener$1.after(ADFPhaseListener.java:267)
         at oracle.adfinternal.controller.faces.lifecycle.ADFPhaseListener.afterPhase(ADFPhaseListener.java:71)
         at oracle.adfinternal.controller.faces.lifecycle.ADFLifecyclePhaseListener.afterPhase(ADFLifecyclePhaseListener.java:53)
         at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:364)
         at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:177)
         at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
         at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
         at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
         at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:292)
         at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:191)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:97)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:420)
         at oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:60)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:420)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:247)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:157)
         at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:94)
         at java.security.AccessController.doPrivileged(Native Method)
         at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:313)
         at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:413)
         at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:138)
         at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:70)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.dms.wls.DMSServletFilter.doFilter(DMSServletFilter.java:326)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3592)
         at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
         at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
         at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2202)
         at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2108)
         at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1432)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
    Caused by: java.lang.InstantiationException: com.deplhitech.model.ejb.test.TestSessionEJBLocal
         at java.lang.Class.newInstance0(Class.java:340)
         at java.lang.Class.newInstance(Class.java:308)
         at oracle.adf.model.adapter.bean.BeanDataControl.loadProvider(BeanDataControl.java:147)
    I tried to deploy the EJB in a separate jar file but it did not solve the problem

    The entire output looks as follows:
    [Another instance of the application is running on the server.  JDeveloper redeploy the application.]
    [Application BrowseEditApp stopped but not undeployed from Server Instance IntegratedWebLogicServer]
    [Running application BrowseEditApp on Server Instance IntegratedWebLogicServer...]
    [01:43:57 PM] ---- Deployment started. ----
    [01:43:57 PM] Target platform is (Weblogic 10.3).
    [01:43:57 PM] Retrieving existing application information
    [01:43:58 PM] Running dependency analysis...
    [01:43:58 PM] Deploying 3 profiles...
    [01:43:59 PM] Wrote Web Application Module to C:\Documents and Settings\mgitelman\Application Data\JDeveloper\system11.1.1.2.36.55.36\o.j2ee\drs\BrowseEditApp\ViewControllerWebApp.war
    [01:44:01 PM] Wrote EJB Module to C:\Documents and Settings\mgitelman\Application Data\JDeveloper\system11.1.1.2.36.55.36\o.j2ee\drs\BrowseEditApp\ModelEJB.jar
    [01:44:02 PM] Wrote Enterprise Application Module to C:\Documents and Settings\mgitelman\Application Data\JDeveloper\system11.1.1.2.36.55.36\o.j2ee\drs\BrowseEditApp
    [01:44:02 PM] Redeploying Application...
    <Feb 5, 2010 1:44:03 PM EST> <Warning> <J2EE> <BEA-160195> <The application version lifecycle event listener oracle.security.jps.wls.listeners.JpsAppVersionLifecycleListener is ignored because the application BrowseEditApp is not versioned.>
    <Feb 5, 2010 1:44:05 PM EST> <Warning> <EJB> <BEA-012035> <The Remote interface method: 'public abstract void com.deplhitech.model.ejb.test.TestSessionEJB.removeEntity(java.lang.Object)' in EJB 'TestSessionEJB' contains a parameter of type: 'java.lang.Object' which is not Serializable. Though the EJB 'TestSessionEJB' has call-by-reference set to false, this parameter is not Serializable and hence will be passed by reference. A parameter can be passed using call-by-value only if the parameter type is Serializable.>
    <Feb 5, 2010 1:44:05 PM EST> <Warning> <EJB> <BEA-012035> <The Remote interface method: 'public abstract java.lang.Object com.deplhitech.model.ejb.test.TestSessionEJB.mergeEntity(java.lang.Object)' in EJB 'TestSessionEJB' contains a parameter of type: 'java.lang.Object' which is not Serializable. Though the EJB 'TestSessionEJB' has call-by-reference set to false, this parameter is not Serializable and hence will be passed by reference. A parameter can be passed using call-by-value only if the parameter type is Serializable.>
    <Feb 5, 2010 1:44:05 PM EST> <Warning> <EJB> <BEA-012035> <The Remote interface method: 'public abstract java.lang.Object com.deplhitech.model.ejb.test.TestSessionEJB.persistEntity(java.lang.Object)' in EJB 'TestSessionEJB' contains a parameter of type: 'java.lang.Object' which is not Serializable. Though the EJB 'TestSessionEJB' has call-by-reference set to false, this parameter is not Serializable and hence will be passed by reference. A parameter can be passed using call-by-value only if the parameter type is Serializable.>
    <Feb 5, 2010 1:44:05 PM EST> <Warning> <EJB> <BEA-012035> <The Remote interface method: 'public abstract java.lang.Object com.deplhitech.model.ejb.test.TestSessionEJB.refreshEntity(java.lang.Object)' in EJB 'TestSessionEJB' contains a parameter of type: 'java.lang.Object' which is not Serializable. Though the EJB 'TestSessionEJB' has call-by-reference set to false, this parameter is not Serializable and hence will be passed by reference. A parameter can be passed using call-by-value only if the parameter type is Serializable.>
    [01:44:22 PM] Application Redeployed Successfully.
    [01:44:22 PM] The following URL context root(s) were defined and can be used as a starting point to test your application:
    [01:44:22 PM] http://10.193.14.31:7101/BrowseEditApp-ViewController-context-root
    Run startup time: 25875 ms.
    [Application BrowseEditApp deployed to Server Instance IntegratedWebLogicServer]
    Target URL -- http://127.0.0.1:7101/BrowseEditApp-ViewController-context-root/faces/browseEjbClaims.jspx
    [01:44:22 PM] Elapsed time for deployment: 26 seconds
    [01:44:22 PM] ---- Deployment finished. ----
    <BeanDataControl><loadProvider> Failed to load the provider: com.deplhitech.model.ejb.test.TestSessionEJBLocal
    <DataControlFactoryImpl><createSession> Exception:
    oracle.adf.model.adapter.AdapterException: DCA-29000: Unexpected exception caught: java.lang.InstantiationException, msg=com.deplhitech.model.ejb.test.TestSessionEJBLocal
         at oracle.adf.model.adapter.bean.BeanDataControl.loadProvider(BeanDataControl.java:152)
         at oracle.adf.model.adapter.bean.BeanDataControl.<init>(BeanDataControl.java:70)
         at oracle.adf.model.adapter.bean.BeanDefinition.createDataControl(BeanDefinition.java:103)
         at oracle.adf.model.adapter.DataControlFactoryImpl.createSession(DataControlFactoryImpl.java:173)
         at oracle.adf.model.binding.DCDataControlReference.getDataControl(DCDataControlReference.java:166)
         at oracle.adf.model.BindingContext.instantiateDataControl(BindingContext.java:844)
         at oracle.adf.model.dcframe.DataControlFrameImpl.doFindDataControl(DataControlFrameImpl.java:1069)
         at oracle.adf.model.dcframe.DataControlFrameImpl.internalFindDataControl(DataControlFrameImpl.java:972)
         at oracle.adf.model.dcframe.DataControlFrameImpl.findDataControl(DataControlFrameImpl.java:932)
         at oracle.adf.model.BindingContext.internalFindDataControl(BindingContext.java:965)
         at oracle.adf.model.BindingContext.get(BindingContext.java:922)
         at oracle.adf.model.binding.DCBindingContainer.findDataControl(DCBindingContainer.java:1548)
         at oracle.jbo.uicli.binding.JUMethodIteratorDef$JUMethodIteratorBinding.initDataControl(JUMethodIteratorDef.java:589)
         at oracle.adf.model.binding.DCIteratorBinding.getDataControl(DCIteratorBinding.java:2379)
         at oracle.adf.model.binding.DCIteratorBinding.getSortCriteria(DCIteratorBinding.java:3710)
         at oracle.adf.model.binding.DCInvokeMethod.setAssociatedIteratorBinding(DCInvokeMethod.java:865)
         at oracle.adf.model.binding.DCIteratorBinding.cacheRefOnOperation(DCIteratorBinding.java:5127)
         at oracle.jbo.uicli.binding.JUMethodIteratorDef$JUMethodIteratorBinding.getActionBinding(JUMethodIteratorDef.java:283)
         at oracle.jbo.uicli.binding.JUMethodIteratorDef.isRefreshable(JUMethodIteratorDef.java:59)
         at oracle.adf.model.binding.DCExecutableBindingDef.isRefreshable(DCExecutableBindingDef.java:274)
         at oracle.adf.model.binding.DCBindingContainer.internalRefreshControl(DCBindingContainer.java:2921)
         at oracle.adf.model.binding.DCBindingContainer.refresh(DCBindingContainer.java:2791)
         at oracle.adf.controller.v2.lifecycle.PageLifecycleImpl.prepareModel(PageLifecycleImpl.java:112)
         at oracle.adf.controller.v2.lifecycle.Lifecycle$2.execute(Lifecycle.java:137)
         at oracle.adfinternal.controller.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:192)
         at oracle.adfinternal.controller.faces.lifecycle.ADFPhaseListener.access$400(ADFPhaseListener.java:21)
         at oracle.adfinternal.controller.faces.lifecycle.ADFPhaseListener$PhaseInvokerImpl.startPageLifecycle(ADFPhaseListener.java:231)
         at oracle.adfinternal.controller.faces.lifecycle.ADFPhaseListener$1.after(ADFPhaseListener.java:267)
         at oracle.adfinternal.controller.faces.lifecycle.ADFPhaseListener.afterPhase(ADFPhaseListener.java:71)
         at oracle.adfinternal.controller.faces.lifecycle.ADFLifecyclePhaseListener.afterPhase(ADFLifecyclePhaseListener.java:53)
         at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:364)
         at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:177)
         at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
         at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
         at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
         at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:292)
         at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:191)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:97)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:420)
         at oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:60)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:420)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:247)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:157)
         at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:94)
         at java.security.AccessController.doPrivileged(Native Method)
         at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:313)
         at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:413)
         at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:138)
         at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:70)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.dms.wls.DMSServletFilter.doFilter(DMSServletFilter.java:326)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3592)
         at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
         at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
         at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2202)
         at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2108)
         at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1432)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
    Caused by: java.lang.InstantiationException: com.deplhitech.model.ejb.test.TestSessionEJBLocal
         at java.lang.Class.newInstance0(Class.java:340)
         at java.lang.Class.newInstance(Class.java:308)
         at oracle.adf.model.adapter.bean.BeanDataControl.loadProvider(BeanDataControl.java:147)
         ... 66 more
    ## Detail 0 ##
    java.lang.InstantiationException: com.deplhitech.model.ejb.test.TestSessionEJBLocal
         at java.lang.Class.newInstance0(Class.java:340)
         at java.lang.Class.newInstance(Class.java:308)
         at oracle.adf.model.adapter.bean.BeanDataControl.loadProvider(BeanDataControl.java:147)
         at oracle.adf.model.adapter.bean.BeanDataControl.<init>(BeanDataControl.java:70)
         at oracle.adf.model.adapter.bean.BeanDefinition.createDataControl(BeanDefinition.java:103)
         at oracle.adf.model.adapter.DataControlFactoryImpl.createSession(DataControlFactoryImpl.java:173)
         at oracle.adf.model.binding.DCDataControlReference.getDataControl(DCDataControlReference.java:166)
         at oracle.adf.model.BindingContext.instantiateDataControl(BindingContext.java:844)
         at oracle.adf.model.dcframe.DataControlFrameImpl.doFindDataControl(DataControlFrameImpl.java:1069)
         at oracle.adf.model.dcframe.DataControlFrameImpl.internalFindDataControl(DataControlFrameImpl.java:972)
         at oracle.adf.model.dcframe.DataControlFrameImpl.findDataControl(DataControlFrameImpl.java:932)
         at oracle.adf.model.BindingContext.internalFindDataControl(BindingContext.java:965)
         at oracle.adf.model.BindingContext.get(BindingContext.java:922)
         at oracle.adf.model.binding.DCBindingContainer.findDataControl(DCBindingContainer.java:1548)
         at oracle.jbo.uicli.binding.JUMethodIteratorDef$JUMethodIteratorBinding.initDataControl(JUMethodIteratorDef.java:589)
         at oracle.adf.model.binding.DCIteratorBinding.getDataControl(DCIteratorBinding.java:2379)
         at oracle.adf.model.binding.DCIteratorBinding.getSortCriteria(DCIteratorBinding.java:3710)
         at oracle.adf.model.binding.DCInvokeMethod.setAssociatedIteratorBinding(DCInvokeMethod.java:865)
         at oracle.adf.model.binding.DCIteratorBinding.cacheRefOnOperation(DCIteratorBinding.java:5127)
         at oracle.jbo.uicli.binding.JUMethodIteratorDef$JUMethodIteratorBinding.getActionBinding(JUMethodIteratorDef.java:283)
         at oracle.jbo.uicli.binding.JUMethodIteratorDef.isRefreshable(JUMethodIteratorDef.java:59)
         at oracle.adf.model.binding.DCExecutableBindingDef.isRefreshable(DCExecutableBindingDef.java:274)
         at oracle.adf.model.binding.DCBindingContainer.internalRefreshControl(DCBindingContainer.java:2921)
         at oracle.adf.model.binding.DCBindingContainer.refresh(DCBindingContainer.java:2791)
         at oracle.adf.controller.v2.lifecycle.PageLifecycleImpl.prepareModel(PageLifecycleImpl.java:112)
         at oracle.adf.controller.v2.lifecycle.Lifecycle$2.execute(Lifecycle.java:137)
         at oracle.adfinternal.controller.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:192)
         at oracle.adfinternal.controller.faces.lifecycle.ADFPhaseListener.access$400(ADFPhaseListener.java:21)
         at oracle.adfinternal.controller.faces.lifecycle.ADFPhaseListener$PhaseInvokerImpl.startPageLifecycle(ADFPhaseListener.java:231)
         at oracle.adfinternal.controller.faces.lifecycle.ADFPhaseListener$1.after(ADFPhaseListener.java:267)
         at oracle.adfinternal.controller.faces.lifecycle.ADFPhaseListener.afterPhase(ADFPhaseListener.java:71)
         at oracle.adfinternal.controller.faces.lifecycle.ADFLifecyclePhaseListener.afterPhase(ADFLifecyclePhaseListener.java:53)
         at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:364)
         at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:177)
         at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
         at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
         at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
         at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:292)
         at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:191)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:97)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:420)
         at oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:60)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:420)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:247)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:157)
         at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:94)
         at java.security.AccessController.doPrivileged(Native Method)
         at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:313)
         at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:413)
         at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:138)
         at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:70)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.dms.wls.DMSServletFilter.doFilter(DMSServletFilter.java:326)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3592)
         at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
         at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
         at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2202)
         at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2108)
         at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1432)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
    <Feb 5, 2010 1:44:25 PM EST> <Error> <HTTP> <BEA-101020> <[ServletContext@32715163[app:BrowseEditApp module:BrowseEditApp-ViewController-context-root path:/BrowseEditApp-ViewController-context-root spec-version:2.5]] Servlet failed with Exception
    java.lang.NullPointerException
         at oracle.adf.model.binding.DCIteratorBinding.getSortCriteria(DCIteratorBinding.java:3710)
         at oracle.adf.model.binding.DCInvokeMethod.setAssociatedIteratorBinding(DCInvokeMethod.java:865)
         at oracle.adf.model.binding.DCIteratorBinding.cacheRefOnOperation(DCIteratorBinding.java:5127)
         at oracle.jbo.uicli.binding.JUMethodIteratorDef$JUMethodIteratorBinding.getActionBinding(JUMethodIteratorDef.java:283)
         at oracle.jbo.uicli.binding.JUMethodIteratorDef.isRefreshable(JUMethodIteratorDef.java:59)
         Truncated. see log file for complete stacktrace
    >
    <Feb 5, 2010 1:44:25 PM EST> <Notice> <Diagnostics> <BEA-320068> <Watch 'UncheckedException' with severity 'Notice' on server 'DefaultServer' has triggered at Feb 5, 2010 1:44:25 PM EST. Notification details:
    WatchRuleType: Log
    WatchRule: (SEVERITY = 'Error') AND ((MSGID = 'BEA-101020') OR (MSGID = 'BEA-101017') OR (MSGID = 'BEA-000802'))
    WatchData: DATE = Feb 5, 2010 1:44:25 PM EST SERVER = DefaultServer MESSAGE = [ServletContext@32715163[app:BrowseEditApp module:BrowseEditApp-ViewController-context-root path:/BrowseEditApp-ViewController-context-root spec-version:2.5]] Servlet failed with Exception
    java.lang.NullPointerException
         at oracle.adf.model.binding.DCIteratorBinding.getSortCriteria(DCIteratorBinding.java:3710)
         at oracle.adf.model.binding.DCInvokeMethod.setAssociatedIteratorBinding(DCInvokeMethod.java:865)
         at oracle.adf.model.binding.DCIteratorBinding.cacheRefOnOperation(DCIteratorBinding.java:5127)
         at oracle.jbo.uicli.binding.JUMethodIteratorDef$JUMethodIteratorBinding.getActionBinding(JUMethodIteratorDef.java:283)
         at oracle.jbo.uicli.binding.JUMethodIteratorDef.isRefreshable(JUMethodIteratorDef.java:59)
         at oracle.adf.model.binding.DCExecutableBindingDef.isRefreshable(DCExecutableBindingDef.java:274)
         at oracle.adf.model.binding.DCBindingContainer.internalRefreshControl(DCBindingContainer.java:2921)
         at oracle.adf.model.binding.DCBindingContainer.refresh(DCBindingContainer.java:2791)
         at oracle.adf.controller.v2.lifecycle.PageLifecycleImpl.prepareModel(PageLifecycleImpl.java:112)
         at oracle.adf.controller.v2.lifecycle.Lifecycle$2.execute(Lifecycle.java:137)
         at oracle.adfinternal.controller.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:192)
         at oracle.adfinternal.controller.faces.lifecycle.ADFPhaseListener.access$400(ADFPhaseListener.java:21)
         at oracle.adfinternal.controller.faces.lifecycle.ADFPhaseListener$PhaseInvokerImpl.startPageLifecycle(ADFPhaseListener.java:231)
         at oracle.adfinternal.controller.faces.lifecycle.ADFPhaseListener$1.after(ADFPhaseListener.java:267)
         at oracle.adfinternal.controller.faces.lifecycle.ADFPhaseListener.afterPhase(ADFPhaseListener.java:71)
         at oracle.adfinternal.controller.faces.lifecycle.ADFLifecyclePhaseListener.afterPhase(ADFLifecyclePhaseListener.java:53)
         at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:364)
         at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:177)
         at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
         at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
         at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
         at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:292)
         at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:191)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:97)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:420)
         at oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:60)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:420)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:247)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:157)
         at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:94)
         at java.security.AccessController.doPrivileged(Native Method)
         at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:313)
         at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:413)
         at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:138)
         at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:70)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.dms.wls.DMSServletFilter.doFilter(DMSServletFilter.java:326)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3592)
         at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
         at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
         at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2202)
         at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2108)
         at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1432)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
    SUBSYSTEM = HTTP USERID = <WLS Kernel> SEVERITY = Error THREAD = [ACTIVE] ExecuteThread: '18' for queue: 'weblogic.kernel.Default (self-tuning)' MSGID = BEA-101020 MACHINE = WSMAVM004-MXG TXID = CONTEXTID = TIMESTAMP = 1265395465135
    WatchAlarmType: AutomaticReset
    WatchAlarmResetPeriod: 30000
    >
    <JMXWatchNotificationListener><handleNotification> failure creating incident from WLDF notification
    oracle.dfw.incident.IncidentCreationException: DFW-40116: failure creating incident
    Cause: DFW-40112: There was an error executing adrci commands; the following errors have been found "DIA-48415: Syntax error found in string [create home base=C:\\Documents and Settings\\mgitelman\\Application] at column [67]
    DIA-48447: The input path [C:\\Documents and Settings\\mgitelman\\Application Data\\JDeveloper\\system11.1.1.2.36.55.36\\DefaultDomain\\servers\\DefaultServer\\adr] does not contain any ADR homes
    DIA-48447: The input path [diag\ofm\defaultdomain\defaultserver] does not contain any ADR homes
    DIA-48494: ADR home is not set, the corresponding operation cannot be done
    Action: Ensure that command line tool "adrci" can be executed from the command line.
         at oracle.dfw.impl.incident.DiagnosticsDataExtractorImpl.createADRIncident(DiagnosticsDataExtractorImpl.java:708)
         at oracle.dfw.impl.incident.DiagnosticsDataExtractorImpl.createIncident(DiagnosticsDataExtractorImpl.java:246)
         at oracle.dfw.spi.weblogic.JMXWatchNotificationListener.handleNotification(JMXWatchNotificationListener.java:195)
         at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor$ListenerWrapper.handleNotification(DefaultMBeanServerInterceptor.java:1732)
         at javax.management.NotificationBroadcasterSupport.handleNotification(NotificationBroadcasterSupport.java:257)
         at javax.management.NotificationBroadcasterSupport$SendNotifJob.run(NotificationBroadcasterSupport.java:322)
         at javax.management.NotificationBroadcasterSupport$1.execute(NotificationBroadcasterSupport.java:307)
         at javax.management.NotificationBroadcasterSupport.sendNotification(NotificationBroadcasterSupport.java:229)
         at weblogic.management.jmx.modelmbean.WLSModelMBean.sendNotification(WLSModelMBean.java:824)
         at weblogic.diagnostics.watch.JMXNotificationProducer.postJMXNotification(JMXNotificationProducer.java:79)
         at weblogic.diagnostics.watch.JMXNotificationProducer.sendNotification(JMXNotificationProducer.java:104)
         at com.bea.diagnostics.notifications.JMXNotificationService.send(JMXNotificationService.java:122)
         at weblogic.diagnostics.watch.JMXNotificationListener.processWatchNotification(JMXNotificationListener.java:103)
         at weblogic.diagnostics.watch.Watch.performNotifications(Watch.java:621)
         at weblogic.diagnostics.watch.Watch.evaluateLogRuleWatch(Watch.java:546)
         at weblogic.diagnostics.watch.WatchManager.evaluateLogEventRulesAsync(WatchManager.java:765)
         at weblogic.diagnostics.watch.WatchManager.run(WatchManager.java:525)
         at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:516)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
    Caused by: oracle.dfw.common.DiagnosticsException: DFW-40112: failed to execute the adrci commands "create home base=C:\\Documents and Settings\\mgitelman\\Application Data\\JDeveloper\\system11.1.1.2.36.55.36\\DefaultDomain\\servers\\DefaultServer\\adr product_type=ofm product_id=defaultdomain instance_id=defaultserver
    set base C:\\Documents and Settings\\mgitelman\\Application Data\\JDeveloper\\system11.1.1.2.36.55.36\\DefaultDomain\\servers\\DefaultServer\\adr
    set homepath diag\ofm\defaultdomain\defaultserver
    create incident problem_key="BEA-101020 [HTTP]" error_facility="BEA" error_number=101020 error_message="null" create_time="2010-02-05 13:44:25.150 -05:00" ecid="0000IQVSbiy4yk15Rv0Fyd1BQiYz000037"
    Cause: There was an error executing adrci commands; the following errors have been found "DIA-48415: Syntax error found in string [create home base=C:\\Documents and Settings\\mgitelman\\Application] at column [67]
    DIA-48447: The input path [C:\\Documents and Settings\\mgitelman\\Application Data\\JDeveloper\\system11.1.1.2.36.55.36\\DefaultDomain\\servers\\DefaultServer\\adr] does not contain any ADR homes
    DIA-48447: The input path [diag\ofm\defaultdomain\defaultserver] does not contain any ADR homes
    DIA-48494: ADR home is not set, the corresponding operation cannot be done
    Action: Ensure that command line tool "adrci" can be executed from the command line.
         at oracle.dfw.impl.incident.ADRHelper.invoke(ADRHelper.java:1052)
         at oracle.dfw.impl.incident.ADRHelper.createIncident(ADRHelper.java:786)
         at oracle.dfw.impl.incident.DiagnosticsDataExtractorImpl.createADRIncident(DiagnosticsDataExtractorImpl.java:688)
         ... 19 more
    ================================
    I'll be creating a separate project with Toplink POJOs, EJB and JSF. Should EJB and TopLink POJOs be in the same project? It looks like otherwise the EJB Wizard doesn't see the persistence unit.

  • JDO 2 and EJB 3

    I saw the letter posted on JavaLobby
    (http://www.javalobby.org/thread.jspa?forumID=61&threadID=14630&start=0&mode=flat)
    about the JDO and EJB working groups working together and think that's
    great. I think a unified persistence API will be a huge win for the Java
    community.
    Here is my question/comment to the Solarmetric people on the JDO board:
    What is the impact this has on JDO 2.0 and it's timeline? With Kodo 3.2.0
    being on RC2 and having JDO 2.0 "preview" features, I had been hoping that
    JDO 2.0 was going to be released soon. If JDO 2.0 is going to have to be
    re-worked to work with (or be?) the EJB 3.0 persistence system, I would
    assume that it will be a lengthy process and will have to push back the
    release of JDO 2.0. After all, there are large differences between the way
    the two specs handle persistence, and even with the new-found sence of
    friendship, there is likely to be grounds for arguement.
    The problem with pushing back the JDO 2.0 release, is that it increases the
    amount of time that users of JDO have to choose between the 1.0 spec or
    using "preview" releases of 2.0 which SEEM to follow a spec, but really
    leads to vendor lock-in. If we use the JDO 2.0 features in Kodo 3.2.0, we
    have to stay with Kodo since no other vendor supports their particular
    version of the preview spec, and who knows if the post-EJB actual JDO 2.0
    spec will differ significantly enough that Kodo will be forced to keep the
    old "preview" 2.0 features simply as vendor-specific APIs. If we aren't
    coding to a standard, why not just use Hibernate?
    I would suggest considering how the unified persistence framework will
    impact JDO, then make educated guesses as to how the JDO and EJB will come
    together in order to make nessisary changes to the JDO 2.0 spec that will
    help--but not significantly impact the JDO 2.0 timeline. Then, create a new
    JSR for JDO 3.0 which will be able to work within the timeframe of the
    EJB/J2EE spec timeframe. An added bonus would be the fact that EJB and JDO
    would have the same version numbers which may help some people's confusion
    (any little bit helps)
    Thanks,
    Nathan

    Hi everybody,
    I'm glad to hear some more pessimistic comments on TSS about the new plans
    of SUN and the future of JDO/EJB.
    My opinion about the "evolution" of persistence I have already mentioned
    here:
    http://theserverside.com/news/thread.tss?thread_id=28995#139908
    http://theserverside.com/news/thread.tss?thread_id=28995#139903
    I must admit that when KODO 3.2.0 RC2 was released I was a little bit
    confused and suspicious about the new "Single String JDOQL".
    The new syntax reminded me on the syntax of HQL and EJBQL.
    I think that was a sign ...
    If you compare the drafts of EJB 3.0 and JDO2 there were many common
    concepts. But I think JDO2 has really more features which help you to
    optimize the database access in the domain layer.
    So the only think I wanted to know in which direction will the new JSR 220
    go and will it support all the features of JDO2.
    I think it can't since the new persistence will be part of J2SE and also
    the new JSR is lead by the EJB lobby.
    And especially I'm interested in how KODO will look like. KODO is very
    good product with a plenty of features.
    But how will KODO look like in 2 years. Which API's will be supported ?.
    And how will an enterprise O/R mapping tool like KODO with support of
    distributed cache,... fit in the new persistence API that will be part of
    J2SE. Or will two version exists, one for J2SE and one for J2EE.
    So think of a big project in which you have to realize a big domain layer.
    Which persistence technology/API should you use in the next two years ?
    I'm looking forward to the Q & A and hope that they will make everything
    clearer ?
    Thanks,
    Matthias
    Alex Roytman wrote:
    Hi Patrick,
    Any comments?
    http://theserverside.com/news/thread.tss?thread_id=28995#139905
    http://theserverside.com/news/thread.tss?thread_id=28995#139908
    http://theserverside.com/news/thread.tss?thread_id=28995#139912
    Thanks
    Alex
    "Patrick Linskey" <[email protected]> wrote in message
    news:[email protected]...
    Alex Roytman wrote:
    If I understood Sun announcment, there will be no JDO2 - just maintenance
    for JDO1 and some JDQL enhancements. So whatever JDO2 features are
    implemented by vendors might be a dead-end since evolution of JDO2 is
    not in plansSun's press announcements to date (or at least, as of five hours ago) were
    relatively vague. According to my knowledge, JDO2 will continue pretty
    much as planned, except that the JDO2 team will work on ensuring that a
    few pieces of the JDO2 puzzle can be easily reused by the new team working
    under the auspices of JSR220 as well.
    Hopefully, Sun's FAQ will make these issues clear. Sun had intended to
    release the FAQ today along with the announcement, but things got delayed,
    basically for logistical reasons from what I understand.
    -Patrick

  • Diff b/w bc4j model and ejb model in adf11g

    hi all,
    iam murali iam new for adf 11g i have some dout's in adf11g ,can u please solve my probleam
    what is the difference b/w bc4j componet and ejb componet,how to develop ejb application in adf11g.

    ,how to develop ejb application in adf11gTake a look at this tutorial for starters:
    http://st-curriculum.oracle.com/obe/jdev/obe11jdev/ps1/ejb/ejb.html

  • What is the diffrence between a javabean and  EJB

    hi!
    what is the diffrence between a javabean and entreprise jvaabeans! i mean which are the uitilization featires of eaxh one !

    i am seeking for a solution for my problem , in fact i ma trying to implement and develop an application with java that allows a certain range of IP adresses to be connected to a database server in order to extract the suitable data from the server .
    let me explain mor ethe suitation , in fact what i am loking for is to use javabeans to grant my application much more consistence and pertinence : si i am asking if it could be possible to use javabeans in my case especially if i am not trying to developp a web application but a cleint /server one allowing some services.
    The application is in fact dealing with a stock exchange market and what i am trying to do is to grant particilar registrated customers to have the informations that they need ( portofolio, currency's status, market indicators, .) also drawing some charts decribing rates, variations, and others specefic financial caracterestics .So , if we consider that this application is not a web application ( no HTTP request and no servers like apache or others ) how it is possible to use javabeans and not EJB to build the application? i mean what could be suitable and preferable to rely on and dvelop to ensure a good java application !!
    if you need more details to help you find the answer for me don't hesitate to answer me back !!
    Someone here gave me that answer
    use RMI to code the services and (Updateable) Value Objects to pass the information between tiers.
    RMI is an all-java distributed component framework (ie. EJB, CORBA, DCE/RPC, DCOM, etc.), that is very suitable for developing non-containerized multi-tier applications. Refer to the RMI trail in the Java Tutorial as a starting point for coding RMI solutions (http://java.sun.com/docs/books/tutorial/index.html). Under this scenario you would code the database access service as an RMI service (server-side). Client/server communication should be facilitated through the use of JavaBeans/classes that wrap the information being passed (customer information, portfolio details, market information, etc.) - these are refered to as 'Updateable Value Objects' (a design pattern). Graphing and charting would be handled in your client from the information received from the (RMI) server. GUI JavaBeans can be used to provide this functionality as well as other client-side services. There are numerous "shrink-wrapped" components for GUIs available on the market just peruse any Java magazine to find them.
    but how comes? how can i do it !! and where can i find more information please about 'Updateable Value Object "
    thanks

  • JDBC, JMS and EJB transactions - possible problem?

    Hello,
              I am using Oracle 9, Weblogic 8.1 SP 4, MyEclipse and
              XDoclet.
              In my current project I have the following piece of code
              in one of my message driven beans (code cited as pseudocode
              without unnecessary details):
              * @ejb.bean name="MyMessageProcessor"
              * display-name="Display name for a MyMessageProcessor"
              * jndi-name="ejb/MyMessageProcessor"
              * description="Bean MyMessageProcessor"
              * destination-type="javax.jms.Queue"
              * transaction-type="Container"
              * acknowledge-mode="Auto-acknowledge"
              * subscription-durability="Durable"
              * generate="false"
              * @ejb.transaction type="Required"
              public class MyMessageProcessor implements MessageDrivenBean, MessageListener {
              public void onMessage(Message msg) {
                   try {
                        //obtaining connections to two different databases via JNDi
                        java.sql.Connection connOne =
                        ((DataSource)ctx.lookup("DataSourceOne")).getConnection();          
                        java.sql.Connection connTwo =
                             ((DataSource)ctx.lookup("DataSourceTwo")).getConnection();
                        // performing some UPDATEs and INSERTs on connOne and connTwo
                        // calling some other methods of this bean
                        //creating the reply JMS message and sending it to another JMS queue
                        Message msgTwo = this.createReplyMessage(msg)
                        this.queueSender.send(msgTwo);
                        //commiting everything
                        this.queueSession.commit();          
                   } catch (Exception ex) {
                   try {
                        if (this.queueSession!=null) this.queueSession.rollback();
                   } catch (JMSException JMSEx) {};     
                   this.context.setRollbackOnly();
              Some days ago (before the final remarks from my client) there used to be only one DataSource configurated on the basis of the
              connection pool with non-XA jdbc driver. Everything worked fine
              including the transactions (if anything wrong happend not only wasn't the replymessage sent, but also no changes were written
              to database and the incomming message was thrown back to the my bean's
              queue).
              When I deployed the second DataSource I was informed by an error message, that only one non-transactional resource may
              participate in a global transaction. When I changed both datasources
              to depend on underlying datasources with transatcional (XA) jdbc drivers, everything stopped working. Even if
              EJB transaction was theoretically successfully rolledbacked, the changed were written to the database
              and the JMS message wasn't resent to the JMS queue.
              So here are my questions:
                   1. How to configure connection pools to work in such situations? What JDBC drivers should I choose?
                   Are there any global server configurations, which may influence this situation?
                   2. Which jdbc drivers should I choose so that the container was able to rollback the database transactions
                   (of course, if necessary)?
                   3. Are there any JMS Queue settings, which would disable the container to send message back to the
                   queue in case of setRollbackOnly()? How should be the Queue configurated?
              As I am new to the topic and the deadline for the project seems to be too close I would be grateful
              for any help.
              This message was sent to EJB list and JDBC list.
              Sincerely yours,
              Marcin Zakidalski

    Hi,
              I found these information extremely useful and helpful.
              The seperate transaction for sending messages was, of course, unintentional. Thanks a lot.
              Anyway, I still have some problems. I have made some changes to the
              code cited in my previous mail. These changes included changing QueueSessions
              to non-transactional. I also set the "Honorate global transactions" to true.
              I am using XA JDBC driver. After setting "Enable local transactions" to false
              (I did it, because I assume that JDBC transactions should be part on the global
              EJB transaction) I got the following error:
              java.sql.SQLException: SQL operations are not allowed with no global transaction by default for XA drivers. If the XA
              driver supports performing SQL operations with no global transaction, explicitly allow it by setting
              "SupportsLocalTransaction" JDBC connection pool property to true. In this case, also remember to complete the local
              transaction before using the connection again for global transaction, else a XAER_OUTSIDE XAException may result. To
              complete a local transaction, you can either set auto commit to true or call Connection.commit() or Connection.rollback().
              I have also inspected the calls of methods of bean inside of onMessage() method just to check, whether
              the transactions are correctly initialized (using the weblogic.transaction.Transaction class).
              My questions are as follows:
              1. Any suggestions how to solve it? I have gone through the google answers on that problem and only
              thing I managed to realize that JDBC must start its own transaction. Is there any way to prohibit it
              from doing that? Can using setAutocommit(true/false) change the situation for better?
              2. How to encourage the JDBC driver to be a part of EJB transaction?
              3. As I have noticed each of ejb method has its own transactions (transactions have different
              Xid). Each method of the bean has "required" transaction attribute. Shouldn't it work in such
              way that if already started transaction exists it is used by the called method?
              4. The DataSources are obtained in my application via JNDI and in the destination environment I will have slight
              impact on the configuration of WebLogic. What is least problematic and most common WebLogic configuration which would
              enable JDBC driver to participate in the EJB transaction? Is it the WebLogic configuration problem or can it be
              solved programmically?
              Currently my module works quite fine when "enable local transactions" for DataSources is set to true, but this way
              I am loosing the ability to perform all actions in one transaction.
              Any suggestions / hints are more than welcomed. This message was posted to jdbc list and ejb list.
              Marcin

  • OC4J 9.0.3 and EJB 1.1 deployments???

    I can not deploy my ejb1.1 beans on 9.0.3 container.
    OC4J crashes with an XML parse error as a null pointer exception.
    If I remove my O-R mappings from my orion-ejb-jar.xml file, the container starts up ok (app wont run as it needs the mappings)
    9.0.3 docs claim I should be able to use my 1.1 ejb in this ejb 2.0 container.
    Solaris release notes for 9.0.3 claim I must migrate to ejb2.0
    Someone else posted this same question but got no replies.
    Anyone else deployed ejb1.1 with OR mappings in 9.0.3 successfully yet?
    thanks

    I have tried migrating to an ejb2.0 set of beans and ejb-jar.xml file.
    With no <query> tags installed for my finders I notice that a typical finder produces this:
    <!-- Generated SQL: "select Isp.isp_Id from Isp -->
    This is vastly different from the 1.1 orion-ejb-jar.xml which would list ALL column names in the finder - hence how am I going to do a findAll? The currently generated sql is way off. Deployment of the "ormap" demo also shows a lack of column names in the generated SQL finder methods in orion-ejb-jar.xml.
    Further, as soon as I introduce the query in the 2.0 version of ejb-jar.xml, the container dies with a null pointer exception. Removing this from the ejb-jar and bean deploys. Useless, cause theres no finders though.
    Also, attempts to add to the <finder-method query=...> tag yield container crashes with null pointers too.
    This is not very robust to say the least. Can you provide names of jar files that would cause such exceptions?
    When NO query tag is inserted in the ejb-jar file, attempts to run a sample client using findByPrimaryKey return successfully but use of findAll causes timeouts similar to whats described in
    "finders giving "timeout expired waiting for an instance" after 0, 1, or 2 calls" in this same forum.
    Heres the query out of the ejb-jar.xml file...
    <query>
    <query-method>
    <method-name>findAll</method-name>
    <method-params></method-params>
    </query-method>
    <ejb-ql>
    SELECT OBJECT(o) from IspTb o
    </ejb-ql>
    </query>
    IspTb is the <abstract-schema-name> Tables exist in db.
    The full error...which prevents deployment of the ejbs and hence no rewrite of the orion-ejb-jar file.
    =========
    10/23/02 1:54 PM: javax.ejb.EJBException: nested exception is: java.lang.NullPointerException
    10/23/02 1:54 PM: java.lang.NullPointerException
    10/23/02 1:54 PM: at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:274)
    10/23/02 1:54 PM: at java.lang.ClassLoader.loadClass(ClassLoader.java:287)
    10/23/02 1:54 PM: at com.evermind.naming.ContextClassLoader.loadClass(ContextClassLoader.java:135)
    10/23/02 1:54 PM: at java.lang.ClassLoader.loadClass(ClassLoader.java:287)
    10/23/02 1:54 PM: at com.evermind.naming.ContextClassLoader.loadClass(ContextClassLoader.java:135)
    10/23/02 1:54 PM: at java.lang.ClassLoader.loadClass(ClassLoader.java:250)
    10/23/02 1:54 PM: at com.sun.enterprise.deployment.PersistenceDescriptor.getClass(PersistenceDescriptor.java:767)
    10/23/02 1:54 PM: at com.sun.enterprise.deployment.PersistenceDescriptor.getStateClass(PersistenceDescriptor.java:753)
    10/23/02 1:54 PM: at com.sun.enterprise.deployment.PersistenceDescriptor.getCMPFieldType(PersistenceDescriptor.java:1302)
    10/23/02 1:54 PM: at com.sun.enterprise.deployment.PersistenceDescriptor.initializeFieldInfo(PersistenceDescriptor.java:1052)
    10/23/02 1:54 PM: at com.sun.enterprise.deployment.PersistenceDescriptor.getPersistentFieldInfo(PersistenceDescriptor.java:805)
    10/23/02 1:54 PM: at com.sun.ejb.sqlgen.SQLGenerator.<init>(SQLGenerator.java:151)
    10/23/02 1:54 PM: at com.sun.ejb.sqlgen.SQLGenerator.generateSQL(SQLGenerator.java:360)
    10/23/02 1:54 PM: at com.sun.ejb.sqlgen.SQLGenerator.generateSQL(SQLGenerator.java:309)
    10/23/02 1:54 PM: at com.evermind.server.ejb.deployment.EJBPackage.translateEjbqlQeries(EJBPackage.java:2100)
    10/23/02 1:54 PM: at com.evermind.server.ejb.compilation.Compilation.translateEjbqlQeries(Compilation.java:140)
    10/23/02 1:54 PM: at com.evermind.server.ejb.compilation.Compilation.compile(Compilation.java:178)
    10/23/02 1:54 PM: at com.evermind.server.ejb.EJBContainer.postInit(EJBContainer.java:551)
    10/23/02 1:54 PM: at com.evermind.server.Application.postInit(Application.java:431)
    10/23/02 1:54 PM: at com.evermind.server.Application.setConfig(Application.java:136)
    10/23/02 1:54 PM: at com.evermind.server.ApplicationServer.addApplication(ApplicationServer.java:1635)
    10/23/02 1:54 PM: at com.evermind.server.ApplicationServer.initializeApplications(ApplicationServer.java:1585)
    10/23/02 1:54 PM: at com.evermind.server.ApplicationServer.setConfig(ApplicationServer.java:1240)
    10/23/02 1:54 PM: at com.evermind.server.ApplicationServerLauncher.run(ApplicationServerLauncher.java:93)
    10/23/02 1:54 PM: at java.lang.Thread.run(Thread.java:479)
    10/23/02 1:54 PM: javax.ejb.EJBException: nested exception is: java.lang.NullPointerException
    10/23/02 1:54 PM: at com.sun.enterprise.deployment.PersistenceDescriptor.getClass(PersistenceDescriptor.java:770)
    10/23/02 1:54 PM: at com.sun.enterprise.deployment.PersistenceDescriptor.getStateClass(PersistenceDescriptor.java:753)
    10/23/02 1:54 PM: at com.sun.enterprise.deployment.PersistenceDescriptor.getCMPFieldType(PersistenceDescriptor.java:1302)
    10/23/02 1:54 PM: at com.sun.enterprise.deployment.PersistenceDescriptor.initializeFieldInfo(PersistenceDescriptor.java:1052)
    10/23/02 1:54 PM: at com.sun.enterprise.deployment.PersistenceDescriptor.getPersistentFieldInfo(PersistenceDescriptor.java:805)
    10/23/02 1:54 PM: at com.sun.ejb.sqlgen.SQLGenerator.<init>(SQLGenerator.java:151)
    10/23/02 1:54 PM: at com.sun.ejb.sqlgen.SQLGenerator.generateSQL(SQLGenerator.java:360)
    10/23/02 1:54 PM: at com.sun.ejb.sqlgen.SQLGenerator.generateSQL(SQLGenerator.java:309)
    10/23/02 1:54 PM: at com.evermind.server.ejb.deployment.EJBPackage.translateEjbqlQeries(EJBPackage.java:2100)
    10/23/02 1:54 PM: at com.evermind.server.ejb.compilation.Compilation.translateEjbqlQeries(Compilation.java:140)
    10/23/02 1:54 PM: at com.evermind.server.ejb.compilation.Compilation.compile(Compilation.java:178)
    10/23/02 1:54 PM: at com.evermind.server.ejb.EJBContainer.postInit(EJBContainer.java:551)
    10/23/02 1:54 PM: at com.evermind.server.Application.postInit(Application.java:431)
    10/23/02 1:54 PM: at com.evermind.server.Application.setConfig(Application.java:136)
    10/23/02 1:54 PM: at com.evermind.server.ApplicationServer.addApplication(ApplicationServer.java:1635)
    10/23/02 1:54 PM: at com.evermind.server.ApplicationServer.initializeApplications(ApplicationServer.java:1585)
    10/23/02 1:54 PM: at com.evermind.server.ApplicationServer.setConfig(ApplicationServer.java:1240)
    10/23/02 1:54 PM: at com.evermind.server.ApplicationServerLauncher.run(ApplicationServerLauncher.java:93)
    10/23/02 1:54 PM: at java.lang.Thread.run(Thread.java:479)

  • When I try to click on links or move about the internet, the computer freezes and I see a little whirligig. Then it takes a few seconds before going to the item I clicked

    when I try to click on links or move about the internet, the screen freezes and I see a little whirligig. Then it takes a few seconds before the whirlygig becomes the pointer again and going to the item I clicked. Why is the screen freezing?

    Reset Safari.
    Click Safari in the menu bar.
    From the drop down select "Reset Safari".
    Click "Reset".
    Empty Caches
    Safari > Preference > Advanced
    Checkmark the box for "Show Develop menu in menu bar".
    Develop menu will appear in the Safari menu bar.
    Click Develop and select "Empty Caches" from the dropdown.
    Turn off Extensions if any, and launch Safari.
    Safari > Preferences > Extensions

Maybe you are looking for