Need for EJB always

Do I always have to go in for writing EJBs to develop a n enterprise business applications?

There are certain advantages for using an EJB in an application. To list a few:
1. Container-based transaction handling.
2. Component-security.
3. Persistence (this can be achieved even without EJBs using a persistence framework like Hibernate)
4. Scalability
5. Encapsulation of business loogic to provide integration with other components.
If the application is a small one, there would mostly not be much use of these features. This is mostly due to the fact that these advantages would be outweighed by the performance due to presence of EJBs. A non-EJB solution would provide a better performance in most of the situations.
You could download Mastering EJB by Ed Roman here
http://www.theserverside.com/books/wiley/masteringEJB/The Chapter 11 provides the best practices on EJBs and gives a good discussion on when to use EJBs and when to opt out of them. :)

Similar Messages

  • Beginner Question - Help Needed for EJB QL Sample Application

    I'm working with a group of student interns, like myself, and we've been given an assignment to work with Oracle. All of us have no training or experience with this, so we're just learning as we go.
    I've been trying to run the EJB QL Sample Application (http://www.oracle.com/technology/sample_code/tech/java/ejb_corba/ejbql/Install.html), but I keep running into problems at step 3.
    Now, we will deploy the sample application onto OC4J. Open another command prompt and go to the folder <OC4J_HOME>/j2ee/home and run the following commands one-by-one
    > java -jar admin.jar ormi://<machine_name>:<admin_port> admin <admin_pwd> -deploy -file <SAMPLE_HOME>/build/ejbql.ear -deploymentName Ejbql
    > java -jar admin.jar ormi://<machine_name>:<admin_port> admin <admin_pwd> -bindWebApp Ejbql ejbql-war http-web-site /ejbql
    where,
    <machine_name>      Name of the machine where OC4J Server is running
    <admin_port>      Admin Port on which the OC4J server listens. This value by default is 23791 unless explicitly changed by the user
    <admin_pwd>      Adminstrator password to access OC4J. The default value is welcome
    When I do this step I get this error:
    Error: Unable to find java:comp/ServerAdministrator: Lookup error: javax.naming.
    AuthenticationException: Invalid username/password for default (sds); nested exc
    eption is:
    javax.naming.AuthenticationException: Invalid username/password for defa
    ult (sds)
    com.evermind.client.orion.AdminCommandException: Unable to find java:comp/Server
    Administrator: Lookup error: javax.naming.AuthenticationException: Invalid usern
    ame/password for default (sds); nested exception is:
    javax.naming.AuthenticationException: Invalid username/password for defa
    ult (sds)
    at com.evermind.client.orion.Oc4jAdminConsole.executeCommand(Oc4jAdminCo
    nsole.java:105)
    at com.evermind.client.orion.Oc4jAdminConsole.main(Oc4jAdminConsole.java
    :27)
    javax.naming.NamingException: Lookup error: javax.naming.AuthenticationException
    : Invalid username/password for default (sds); nested exception is:
    javax.naming.AuthenticationException: Invalid username/password for defa
    ult (sds) [Root exception is javax.naming.AuthenticationException: Invalid usern
    ame/password for default (sds)]
    at com.evermind.server.rmi.RMIContext.lookup(RMIContext.java:153)
    at com.evermind.client.orion.Oc4jAdminConsole.executeCommand(Oc4jAdminCo
    nsole.java:102)
    at com.evermind.client.orion.Oc4jAdminConsole.main(Oc4jAdminConsole.java
    :27)
    Caused by: javax.naming.AuthenticationException: Invalid username/password for d
    efault (sds)
    at com.evermind.server.rmi.RMIConnection.connect(RMIConnection.java:2410
    at com.evermind.server.rmi.RMIConnection.connect(RMIConnection.java:2226
    at com.evermind.server.rmi.RMIConnection.lookup(RMIConnection.java:1692)
    at com.evermind.server.rmi.RMIServer.lookup(RMIServer.java:727)
    at com.evermind.server.rmi.RMIContext.lookup(RMIContext.java:134)
    ... 2 more
    ---- Embedded exception
    javax.naming.AuthenticationException: Invalid username/password for default (sds
    at com.evermind.server.rmi.RMIConnection.connect(RMIConnection.java:2410
    at com.evermind.server.rmi.RMIConnection.connect(RMIConnection.java:2226
    at com.evermind.server.rmi.RMIConnection.lookup(RMIConnection.java:1692)
    at com.evermind.server.rmi.RMIServer.lookup(RMIServer.java:727)
    at com.evermind.server.rmi.RMIContext.lookup(RMIContext.java:134)
    at com.evermind.client.orion.Oc4jAdminConsole.executeCommand(Oc4jAdminCo
    nsole.java:102)
    at com.evermind.client.orion.Oc4jAdminConsole.main(Oc4jAdminConsole.java
    :27)
    Any suggestions to fix this error?
    Thanks in advance for any help.

    George,
    The Readme.html file is available with the ejbqlsample.jar downloadable (Extract and find the doc in Ejbql\docs\Readme.html) which is printable.
    Or,
    If you are trying to print the file directly from OTN site, you need to set the Page-Setup Orientation to 'Landscape'.
    Hope this helps.
    Regards
    Pushkala

  • Super 1.5 - source code level tracing for EJB, JSP and others

     

    Would you want to try new installation for Super 1.6?
    Please visit www.acelet.com
    Thanks.
    "Dominique Jean-Prost" <[email protected]> wrote:
    If only your installation tool was easy to use ...
    dom
    "Wei Jiang" <[email protected]> a écrit dans le message news:
    [email protected]...
    Super supports source code level tracing for Java and JSP!
    Announcement: Super 1.5 - an EJB/J2EE monitoring tool with
    SuperPeekPoke
    SuperLogging
    SuperStress
    SuperEnvironment
    It is free for development.
    You can anomyously down load it from:
    http://www.acelet.com.
    Super is a component based administration tool for EJB/J2ee.
    It provides built-in functionality as well as
    extensions, as SuperComponents. Users can install
    SuperComponents onto it, or uninstall them from it.
    Super has the following functions:
    * A J2EE/EJB monitor.
    * A gateway to EJB servers from different vendors.
    * A framework holding user defined SuperComponents.
    * A PeekPoke tool to read/write attributes from EJBs.
    * A full-featured logging/tracing tool for centralized, chronologicallogging.
    * A Stress test tool.
    * A global environment tool.
    It is written in pure Java.
    The current version support:
    * Universal servers.
    * Weblogic 5.1
    * Weblogic 6.0
    What is new:
    Version 1.50 August, 2001
    Enhancement:
    1. Source code level tracing supports EJB, JSP, java helper and other
    programs which are written in native languages (as long as you
    write correct log messages in your application).
    2. Redress supports JSP now.
    3. New installation with full help document: hope it will be easier.
    4. Support WebSphere 4.0
    Version 1.40 June, 2001
    Enhancement:
    1. Add SuperEnvironment which is a Kaleidoscope with TableView,TimeSeriesView
    and PieView for GlobalProperties.
    GlobalProperties is an open source program from Acelet.
    2. SuperPeekPoke adds Kaleidoscope with TableView, TimeSeriesView andPieView.
    Changes:
    1. The structure of log database changed. You need delete old installationand
    install everything new.
    2. The format of time stamp of SuperLogging changed. It is not localedependent:
    better for report utilities.
    3. Time stamp of SuperLogging added machine name: better for clusteringenvironment.
    Bug fix:
    1. Under JDK 1.3, when you close Trace Panel, the timer may not bestopped
    and
    Style Panel may not show up.
    Version 1.30 May, 2001
    Enhancement:
    1. Add ConnectionPlugin support.
    2. Add support for Borland AppServer.
    Version 1.20 April, 2001
    Enhancement:
    1. Redress with option to save a backup file
    2. More data validation on Dump Panel.
    3. Add uninstall for Super itself.
    4. Add Log Database Panel for changing the log database parameters.
    5. Register Class: you can type in name or browse on file system.
    6. New tour with new examples.
    Bug fix:
    1. Redress: save file may fail.
    2. Install Bean: some may fail due to missing manifest file. Now, itis
    treated
    as foreign beans.
    3. Installation: Both installServerSideLibrary and installLogDatabasecan
    be worked
    on the original file, do not need copy to a temporary directory anymore.
    4. PeekPoke: if there is no stub available, JNDI list would be emptyfor
    Weblogic5-6.
    Now it pick up all availble ones and give warning messages.
    5. Stress: Launch>Save>Cancel generated a null pointer exception.
    Changes:
    1. installLogDatabase has been changed from .zip file to .jar file.
    2. SuperLogging: If the log database is broken, the log methods willnot
    try to
    access the log database. It is consistent with the document now.
    3. SuperLogging will not read system properties now. You can put logdatabase
    parameters in SuperLoggingEJB's deployment descriptor.
    Version 1.10 Feb., 2001
    Enhancement:
    1. Re-written PeekPoke with Save/Restore functions.
    2. New SuperComponent: SuperStress for stress test.
    3. Set a mark at the highlighted line on<font size=+0> the Source Code
    Panel (as a work-a-round for JDK 1.3).</font>
    4. Add support for WebLogic 6.0
    Bug fix:
    1. Uninstall bean does physically delete the jar file now.
    2. WebLogic51 Envoy may not always list all JNDI names. This is fixed.
    Version 1.00 Oct., 2000
    Enhancement:
    1. Support Universal server (virtual all EJB servers).
    2. Add Lost and Found for JNDI names, in case you need it.
    3. JNDI ComboBox is editable now, so you can PeekPoke not listed JNDIname
    (mainly
    for Envoys which do not support JNDI list).
    Version 0.90: Sept, 2000
    Enhancement:
    1. PeekPoke supports arbitrary objects (except for Vector, Hashtable
    and alike) as input values.
    2. Reworked help documents.
    Bug fix:
    1. Clicking Cancel button on Pace Panel set 0 to pace. It causes
    further time-out.
    2. MDI related bugs under JDK 1.3.
    Version 0.80: Aug, 2000
    Enhancement:
    1. With full-featured SuperLogging.
    Version 0.72: July, 2000
    Bug fix:
    1. Ignore unknown objects, so Weblogic5.1 can show JNDI list.
    Version 0.71: July, 2000
    Enhancement:
    1. Re-worked peek algorithm, doing better for concurent use.
    2. Add cacellable Wait dialog, showing Super is busy.
    3. Add Stop button on Peek Panel.
    4. Add undeploy example button.
    Bug fix:
    1. Deletion on Peek Panel may cause error under JDK 1.3. Now it worksfor
    both
    1.2 and 1.3
    Version 0.70: July, 2000
    Enhancement:
    1. PeekPoke EJBs without programming.
    Bug fix:
    1. Did not show many windows under JDK 1.3. Now it works for both 1.2and
    1.3
    Changes:
    1. All changes are backward compatible, but you may need to recompilemonitor
    windows defined by you.
    Version 0.61: June, 2000
    Bug fix:
    1. First time if you choose BUFFER as logging device, message willnot
    show.
    2. Fixed LoggingPanel related bugs.
    Version 0.60: May, 2000
    Enhancement:
    1. Add DATABASE as a logging device for persistent logging message.
    2. Made alertInterval configurable.
    3. Made pace for tracing configurable.
    Bug fix:
    1. Fixed many bugs.
    Version 0.51, 0.52 and 0.53: April, 2000
    Enhancement:
    1. Add support to Weblogic 5.1 (support for Logging/Tracing and
    user defined GUI window, not support for regular monitoring).
    Bug fix:
    1. Context sensitive help is available for most of windows: pressF1.
    2. Fix installation related problems.
    Version 0.50: April, 2000
    Enhancement:
    1. Use JavaHelp for help system.
    2. Add shutdown functionality for J2EE.
    3. Add support to Weblogic 4.5 (support for Logging/Tracing and
    user defined GUI window, not support for regular monitoring).
    Bug fix:
    1. Better exception handling for null Application.
    Version 0.40: March, 2000
    Enhancement:
    1.New installation program, solves installation related problems.
    2. Installation deploys AceletSuperApp application.
    3. Add deploy/undeploy facilities.
    4. Add EJB and application lists.
    Change:
    1.SimpleMonitorInterface: now more simple.
    Version 0.30: January, 2000
    Enhancement:
    1. Add realm support to J2EE
    2. Come with installation program: you just install what you want
    the first time you run Super.
    Version 0.20: January, 2000
    Enhancement:
    Add support to J2EE Sun-RI.
    Change:
    1. Replace logging device "file" with "buffer" to be
    compliant to EJB 1.1. Your code do not need to change.
    Version 0.10: December, 1999
    Enhancement:
    1. provide SimpleMonitorInterface, so GUI experience is
    not necessary for developing most monitoring applications.
    2. Sortable table for table based windows by mouse
    click (left or right).
    Version 0.01 November., 1999:
    1. Bug fix: An exception thrown when log file is large.
    2. Enhancement: Add tour section in Help information.
    Version 0.00: October, 1999
    Thanks.

  • A free ebook for EJB 3.0 with the latest version of Netbean

    Hi,
    I am a trainee although with a good background in java.
    I'm urgently in need of a free ebook for EJB 3.0 with the latest version of Netbean. Pls, help me with one if you have. my email is [email protected]
    Again, is container managed bean good for a big project?
    Thanks.
    Emeka

    emekaco wrote:
    Hi,
    I am a trainee although with a good background in java.
    I'm urgently in need of a free ebook for EJB 3.0 with the latest version of Netbean. Pls, help me with one if you have. my email is [email protected]
    http://www.theserverside.com/tt/books/wiley/masteringEJB3/index.tss
    Here's a good free e-book but without Netbean. It covers everything you would need to know about EJBs.
    >
    Again, is container managed bean good for a big project?
    The question is too vague to be answered. It's a design decision that needs more details.

  • Writing a Standalone Client for EJB 3.0 Bean For Weblogic 10

    Steps for Writing a Standalone Client
    Client Code
    package com.client;
    import java.util.Properties;
    import javax.naming.Context;
    import javax.naming.InitialContext;
    import javax.naming.NamingException;
    import javax.rmi.PortableRemoteObject;
    import com.StatelessService;
    public class StatelessClient {
         public static void main(String [] args){
              Context ctx = null;
              try {
                   ctx = getInitialContext("t3://localhost:7001/protossbservice","weblogic","weblogic");
                   Object ref = ctx.lookup("StatelessService#"+StatelessService.class.getName());
                   StatelessService service = (StatelessService)PortableRemoteObject.narrow(ref,StatelessService.class);     
                   System.out.println("StatelessClient.getMessage() ++");
                   String  message = service.getMessage();
                   System.out.println("StatelessClient.getMessage --");
                        System.out.println("Message from Bean "+message);
         } catch (NamingException e) {
                   e.printStackTrace();
         private static Context getInitialContext(String url, String user, String password) throws NamingException {
            Properties h = new Properties();
            h.put(Context.INITIAL_CONTEXT_FACTORY,
                    "weblogic.jndi.WLInitialContextFactory");
            h.put(Context.PROVIDER_URL, url);
            h.put(Context.SECURITY_PRINCIPAL, user);
            h.put(Context.SECURITY_CREDENTIALS, password);
            return new InitialContext(h);
    Business Interface
    package com;
    public interface StatelessService {
         public String getMessage();
    Stateless Session Bean
    package com;
    import javax.annotation.PostConstruct;
    import javax.ejb.Remote;
    import javax.ejb.Stateless;
    * Test Stateless Session Bean
    @Stateless(mappedName="StatelessService")
    @Remote(StatelessService.class)
    public class StatelessServiceBean implements StatelessService {
         public String getMessage(){
              return "I am invoked";

    emekaco wrote:
    Hi,
    I am a trainee although with a good background in java.
    I'm urgently in need of a free ebook for EJB 3.0 with the latest version of Netbean. Pls, help me with one if you have. my email is [email protected]
    http://www.theserverside.com/tt/books/wiley/masteringEJB3/index.tss
    Here's a good free e-book but without Netbean. It covers everything you would need to know about EJBs.
    >
    Again, is container managed bean good for a big project?
    The question is too vague to be answered. It's a design decision that needs more details.

  • What technical components are needed for integration of SAP BI and BO?

    Hello,
    What technical components are needed for integration of SAP BI and BO?

    Hi,
    you need to setup a BOBJ server (eg. BusinessObjects Enterprise XI 3.1 or BO Edge 3.1) and then install the BusinessObjects integration Kit for SAP on the same machine your BOBJ server runs.
    In order to build reports you can either use Crystal Reports (eg Install Crystal Report Designer 2008 V1 if you have an XI 3.1 server installed), WebIntelligence (Install the Business Objects XI 3.1 Client Tools in order to be able to build universes), BusinessObjects Voyager or XCelsius. Please note that you have to always install the BOBJ integration Kit for SAP (should be the same version as your server and client installation) on your clients AFTER you installed one or more of the above client tools.
    Please take again a look at the following link for more detailed information (from Ingo) on this:
    [https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/a00ee3b2-5283-2b10-f1bf-8c6413e0898f]
    Regards,
    Stratos

  • Does Airport Time capsule needs to be always connected by WAN to wifi router to use as external hard drive?

    Hi,
    I'm getting puzzled.
    I have:
    New Airport Time Capsule
    MBP 15 Retina
    MBP 15 2008y
    ATV3
    Broadband with wifi SkyHub router
    iPhone 5s
    To use the Capsule as wireless external Hard drive does it needs to be always WAN cabled to SkyHub wifi broadband router? Awkward if does.
    If I plug it out I can't see the capsule in the Finder?
    How to set it up?
    How to move files?
    I wish to have on the capsule iTunes &amp; iPhoto libraries, other documents and have acces to them from both MBPs and phones. Not as back up machine but for everyday use.
    Thanks
    Marcin

    I wish to have on the capsule iTunes &amp; iPhoto libraries, other documents and have acces to them from both MBPs and phones.
    That is possible for your MBPs but not for your iPhones. In addition, you are likely to find its performance with iTunes and iPhoto to be unacceptably slow, to the point of uselessness.
    If you really want to, it is possible to configure the Time Capsule join your existing router as a wireless client. In that configuration it will be available to your wireless network as a storage and backup device. It does not strictly need a wired connection to your router. To configure it that way it is best to start with a "hard reset".
    It's not worth the effort though, due to the unacceptably slow transfer speed you are likely to achieve.

  • What speakers do I need for a X-FI Platin

    Well since I heard that the output for sound cards as the X-FI is always Digital, and not analog, what type of speakers do I need for the card? Will I be able to connect the card to a home stereo with L and R inputs?
    I am asking this because on my SB Li've! 24-bit card, when I put the signal output as digital there is no noise on the speakers. They go mute. I am planning to buy a X-FI card, but if the output is always digital, then I won't be able to connect it to my home stereo, or my set of normal stereo speakers.
    Thank you.

    you can adjust wether you want digital or analog output, whoever told you its digital only is full of BS.
    I would recommend the S750ies, brilliant speakers with a nice sound

  • Difference between narrow() method usage and simple class cast for EJB

    Hi,
    I have a very simple question:
    what is the difference between PortableRemoteObject.narrow(fromObj,
    toClass) method usage and simple class cast for EJB.
    For example,
    1)
    EJBObject ejbObj;
    // somewhere in the code the home.create() called for bean ...
    ABean a = (ABean)PortableRemoteObject.narrow(ejbObj,ABean.class);
    OR
    2)
    EJBObject bean;
    // somewhere in the code the home.create() called for bean ...
    ABean a = (ABean)ejbObj;
    Which one is better?
    P.S. I'm working with WL 6.1 sp2
    Any help would be appreciated.
    Thanks in advance,
    Orly

    [email protected] (Orly) writes:
    Hi,
    I have a very simple question:
    what is the difference between PortableRemoteObject.narrow(fromObj,
    toClass) method usage and simple class cast for EJB.
    For example,
    1)
    EJBObject ejbObj;
    // somewhere in the code the home.create() called for bean ...
    ABean a = (ABean)PortableRemoteObject.narrow(ejbObj,ABean.class);
    OR
    2)
    EJBObject bean;
    // somewhere in the code the home.create() called for bean ...
    ABean a = (ABean)ejbObj;
    Which one is better?(1) is mandated by the spec. It is required because CORBA systems may
    not have sufficient type information available to do a simple case.
    P.S. I'm working with WL 6.1 sp2 You should always use PRO.narrow()
    andy

  • The need for the option to purchase perpetual license of Production Bundle

    My business has used Adobe products for 15 years. I am a big fan. But I wish to continue purchasing the Production Bundle line of products with perpetual licenses. I have no need for the Cloud. I also want to upgrade from my current version of CS6 as I have done in the past, for about $350. Month to month rental does not work for my business. I also dont feel paying $600 for the Cloud is appropriate since my standard yeaarly upgrades are usually $350. If you folks dont give me a choice I will have to end my use of Adobe software. Many other professionals feel the same way. Please give us an option for ownership. Otherwise you may find you have a mass exodus from folks that have happily purchased your product for years.

    Hi Todd and 001andrew,
    I was going through the discussion we were having in last 4-5 post in this thread and it made me reply to your query and concerns.
    I think you are mixing up 2 things here "Adobe Creative Cloud" and "Adobe Marketing cloud". Creative cloud comes under Digital Media whereas Marketing cloud comes under Digital Marketing.
    Adobe® Marketing Cloud gives you a complete set of analytics, social, advertising, targeting, and web experience management solutions and a real-time dashboard that brings together everything you need to know about your marketing campaigns. So you can get from data to insights to action, faster and smarter than ever.
    You can explore more about Marketing cloud on the following link:
    http://www.adobe.com/in/solutions/digital-marketing.html
    On the other hand Creative cloud gives you a simple membership which gives you the entire collection of CS6 tools and more. be it print or Interested in websites and iPad apps or Ready to edit video? You can do it all. Plus, Creative Cloud members automatically get access to new products and exclusive updates as soon as they’re released. And, with cloud storage and the ability to sync to any device, your files are always right where you need them.
    Adobe Creative Cloud is an ongoing membership that gives your team access to all the Adobe Creative Suite® 6 desktop applications, plus other tools and services including Adobe Muse, Adobe Acrobat XI and Adobe Photoshop Lightroom 4 software, Adobe Edge Tools & Services, and more. Creative Cloud also includes new Internet-based services* and enables the delivery of high-impact content experiences such as interactive websites and stunning digital magazines. By offering connectivity with Adobe Touch Apps†, headlined by Adobe Photoshop Touch, Creative Cloud enables a mobile workflow, from ideation to publishing, to bring the power of Adobe innovation to iPad devices and Android™ tablets. Creative Cloud gives you freedom to create, offering immediate and ongoing access to industry-defining tools and technologies, to serve a vibrant worldwide community of creative talent.
    to know more about the creative cloud offering you can visit:
    http://www.adobe.com/products/creativecloud/buying-guide.html
    Hope this helps you to understand the concept.
    Also on the point where you have mentioned that where Adobe's Quarter result indicate that "Deferred revenue grew by $80.5 million to a record $700.0 million. " This Mean that Adobe has invested a lot in new offerings which is a liability as of now and this will turn into regular revenue in the future financial results.
    Just to make it easy to understand deferred revenue means that we have advance payments or unearned revenue, recorded on the Adobe's balance sheet as a liability, until the services have been rendered or products have been delivered. Deferred revenue is a liability because it refers to revenue that has not yet been earned, but represents products or services that are owed to the customer. As the product or service is delivered over time, it is recognized as revenue on the income statement.
    Companies generally have sizable amounts of deferred revenues on their balance sheets, typically representing license fees and annual maintenance charges. Analysts study trends in deferred revenues of such companies for a better indication of their financial performance.
    So yes it is a good indication for Adobe and promise a great results in future. And obvously we can do it only with our esteemed and respected customers coming along in this great journey for Adobe.
    Cheers!!
    Kapil Malik

  • Is an anti-virus needed for a new macbook pro?

    Is an anti-virus needed for a new macbook pro with retina display?

    1. This comment applies to malicious software ("malware") that's installed unwittingly by the victim of a network attack. It does not apply to software, such as keystroke loggers, that may be installed deliberately by an intruder who has hands-on access to the victim's computer. That threat is in a different category, and there's no easy way to defend against it. If you have reason to suspect that you're the target of such an attack, you need expert help.
    If you find this comment too long or too technical, read only sections 5, 6, and 10.
    OS X now implements three layers of built-in protection specifically against malware, not counting runtime protections such as execute disable, sandboxing, system library randomization, and address space layout randomization that may also guard against other kinds of exploits.
    2. All versions of OS X since 10.6.7 have been able to detect known Mac malware in downloaded files, and to block insecure web plugins. This feature is transparent to the user, but internally Apple calls it "XProtect." The malware recognition database is automatically checked for updates once a day; however, you shouldn't rely on it, because the attackers are always at least a day ahead of the defenders.
    The following caveats apply to XProtect:
    It can be bypassed by some third-party networking software, such as BitTorrent clients and Java applets.
    It only applies to software downloaded from the network. Software installed from a CD or other media is not checked.
    3. Starting with OS X 10.7.5, there has been a second layer of built-in malware protection, designated "Gatekeeper" by Apple. By default, applications and Installer packages downloaded from the network will only run if they're digitally signed by a developer with a certificate issued by Apple. Software certified in this way hasn't necessarily been tested by Apple, but you can be reasonably sure that it hasn't been modified by anyone other than the developer. His identity is known to Apple, so he could be held legally responsible if he distributed malware. That may not mean much if the developer lives in a country with a weak legal system (see below.)
    Gatekeeper doesn't depend on a database of known malware. It has, however, the same limitations as XProtect, and in addition the following:
    It can easily be disabled or overridden by the user.
    A malware attacker could get control of a code-signing certificate under false pretenses, or could simply ignore the consequences of distributing codesigned malware.
    An App Store developer could find a way to bypass Apple's oversight, or the oversight could fail due to human error.
    For the reasons given above, App Store products, and other applications recognized by Gatekeeper as signed, are safer than others, but they can't be considered absolutely safe. "Sandboxed" applications may prompt for access to private data, such as your contacts, or for access to the network. Think before granting that access. OS X security is based on user input. Never click through any request for authorization without thinking.
    4. Starting with OS X 10.8.3, a third layer of protection has been added: a "Malware Removal Tool" (MRT). MRT runs automatically in the background when you update the OS. It checks for, and removes, malware that may have evaded the other protections via a Java exploit (see below.) MRT also runs when you install or update the Apple-supplied Java runtime (but not the Oracle runtime.) Like XProtect, MRT is presumably effective against known attacks, but maybe not against unknown attacks. It notifies you if it finds malware, but otherwise there's no user interface to MRT.
    5. XProtect, Gatekeeper, and MRT reduce the risk of malware attack, but they're not absolute protection. The first and best line of defense is always your own intelligence. With the possible exception of Java exploits, all known malware circulating on the Internet that affects a fully-updated installation of OS X 10.6 or later takes the form of so-called "trojan horses," which can only have an effect if the victim is duped into running them. The threat therefore amounts to a battle of wits between you and the malware attacker. If you're smarter than he thinks you are, you'll win.
    That means, in practice, that you never use software that comes from an untrustworthy source, or that does something inherently untrustworthy. How do you know what is trustworthy?
    Any website that prompts you to install a “codec,” “plug-in,” "player," "extractor," or “certificate” that comes from that same site, or an unknown one, is untrustworthy.
    A web operator who tells you that you have a “virus,” or that anything else is wrong with your computer, or that you have won a prize in a contest you never entered, is trying to commit a crime with you as the victim. (Some reputable websites did legitimately warn visitors who were infected with the "DNSChanger" malware. That exception to this rule no longer applies.)
    Pirated copies or "cracks" of commercial software, no matter where they come from, are unsafe.
    Software of any kind downloaded from a BitTorrent or from a Usenet binary newsgroup is unsafe.
    Software that purports to help you do something that's illegal or that infringes copyright, such as saving streamed audio or video for reuse without permission, is unsafe. All YouTube "downloaders" are in this category, though not all are necessarily harmful.
    Software with a corporate brand, such as Adobe Flash Player, must be downloaded directly from the developer’s website. If it comes from any other source, it's unsafe.
    Even signed applications, no matter what the source, should not be trusted if they do something unexpected, such as asking for permission to access your contacts, your location, or the Internet for no obvious reason.
    6. Java on the Web (not to be confused with JavaScript, to which it's not related, despite the similarity of the names) is a weak point in the security of any system. Java is, among other things, a platform for running complex applications in a web page, on the client. That was always a bad idea, and Java's developers have proven themselves incapable of implementing it without also creating a portal for malware to enter. Past Java exploits are the closest thing there has ever been to a Windows-style virus affecting OS X. Merely loading a page with malicious Java content could be harmful.
    Fortunately, client-side Java on the Web is obsolete and mostly extinct. Only a few outmoded sites still use it. Try to hasten the process of extinction by avoiding those sites, if you have a choice. Forget about playing games or other non-essential uses of Java.
    Java is not included in OS X 10.7 and later. Discrete Java installers are distributed by Apple and by Oracle (the developer of Java.) Don't use either one unless you need it. Most people don't. If Java is installed, disable it — not JavaScript — in your browsers.
    Regardless of version, experience has shown that Java on the Web can't be trusted. If you must use a Java applet for a task on a specific site, enable Java only for that site in Safari. Never enable Java for a public website that carries third-party advertising. Use it only on well-known, login-protected, secure websites without ads. In Safari 6 or later, you'll see a lock icon in the address bar with the abbreviation "https" when visiting a secure site.
    Follow the above guidelines, and you’ll be as safe from malware as you can practically be. The rest of this comment concerns what you should not do to protect yourself from malware.
    7. Never install any commercial "anti-virus" or "Internet security" products for the Mac, as they all do more harm than good, if they do any good at all. Any database of known threats is always going to be out of date. Most of the danger is from unknown threats. If you need to be able to detect Windows malware in your files, use one of the free anti-virus products in the Mac App Store — nothing else.
    Why shouldn't you use commercial "anti-virus" products?
    Their design is predicated on the nonexistent threat that malware may be injected at any time, anywhere in the file system. Malware is downloaded from the network; it doesn't materialize from nowhere.
    In order to meet that nonexistent threat, the software modifies or duplicates low-level functions of the operating system, which is a waste of resources and a common cause of instability, bugs, and poor performance.
    By modifying the operating system, the software itself may create weaknesses that could be exploited by malware attackers.
    8. An anti-malware product from the App Store, such as "ClamXav," doesn't have these drawbacks. That doesn't mean it's entirely safe. It may report email messages that have "phishing" links in the body, or Windows malware in attachments, as infected files, and offer to delete or move them. Doing so will corrupt the Mail database. The messages should be deleted from within the Mail application.
    An anti-virus app is not needed, and should not be relied upon, for protection against OS X malware. It's useful only for detecting Windows malware. Windows malware can't harm you directly (unless, of course, you use Windows.) Just don't pass it on to anyone else.
    A Windows malware attachment in email is usually easy to recognize. The file name will often be targeted at people who aren't very bright; for example:
    ♥♥♥♥♥♥♥♥♥♥♥♥♥♥!!!!!!!H0TBABEZ4U!!!!!!!.AVI♥♥♥♥♥♥♥♥♥♥♥♥♥♥.exe
    Anti-virus software may be able to tell you which particular virus or trojan it is, but do you care? In practice, there's seldom a reason to use the software unless a network administrator requires you to do it.
    The ClamXav developer won't try to "upsell" you to a paid version of the product. Other developers may do that. Don't be upsold. For one thing, you should not pay to protect Windows users from the consequences of their choice of computing platform. For another, a paid upgrade from a free app will probably have the disadvantages mentioned in section 7.
    9. It seems to be a common belief that the built-in Application Firewall acts as a barrier to infection, or prevents malware from functioning. It does neither. It blocks inbound connections to certain network services you're running, such as file sharing. It's disabled by default and you should leave it that way if you're behind a router on a private home or office network. Activate it only when you're on an untrusted network, for instance a public Wi-Fi hotspot, where you don't want to provide services. Disable any services you don't use in the Sharing preference pane. All are disabled by default.
    10. As a Mac user you don't have to live in fear that your computer is going to be infected every time you install an application, read email, or visit a web page. But neither should you have the false idea that you will always be safe, no matter what you do. The greatest harm done by security software is precisely its selling point: it makes people feel safe. They may then feel safe enough to take risks from which the software doesn't protect them. Nothing can lessen the need for safe computing practices.

  • What is needed for sorting on two fields in a table control

    Hi Everybody
    I am going to certification in a couple of days. I need some help and was hopeing that you  guys could help.
    What is needed for sorting on two fields in a table control?
         One sorted table and two processing blocks
         Two standard tables and one processing blocks
         Two standard tables and two processing
    Which one is corret??
    //Script

    Hi Kimallan
    I am not sure what is meant by a "processing block". However, it seems the question wants the original table order to be preserved. If so; as far as I understood the problem we need:
    itab_proxy[] = itab_main[] .
    "two standard tables"
    SORT itab_proxy BY field1 field2 .
    If we have a sorted table, then it is always sorted by its keys. So, the question seems to become obsolete for that option.
    Hope I've understood correct...
    Regards
    *--Serdar
    [email protected]

  • Docs needed for installing siebel in solaris 10 x86, Urgent..!!!!!!!!

    Docs needed for installing siebel in solaris 10 x86
    Thanks
    Kishore
    Edited by: Kishore P on Aug 11, 2010 6:03 PM

    If it's documentation you're after, always go straight to Siebel Bookshelf!
    http://download.oracle.com/docs/cd/E14004_01/books/SiebInstUNIX/SiebInstUNIXTOC.html

  • Impossible to configure multiple data sources for EJB's in a single project

    Hello everyone,
    I have jDev 10.1.3 installed and I'm doing some research on EJB 3.0. In the jDev help files, it is mentioned that a project can contain only one EJB module. Correct me if I'm wrong but to me, this means that there is only one data source configured for a module/project.
    But what if I need 2 EJB's linked to 2 different data source in my project? Is the only solution available is to create 2 different project and add one ejb to a project and the other ejb to the second project and then add the second project as a project dependency to the first project?
    Thank you for your help
    Alex

    Multiple Datasources may be injected into a EJB 3.0 entity bean POJO with resource injection.
    http://www.onjava.com/pub/a/onjava/2006/01/04/dependency-injection-java-ee-5.html?page=3

  • What is the need for calling default constructor by JVM?

    What is the need for calling default constructor by JVM? why the JVM should intiializes default values to the data
    fields if the constructor is not there in our class?

    mahar wrote:
    What is the need for calling default constructor by JVM? Huh? The JVM does not need to call the default constructor. It needs to call a constructor.
    You decide which one by the way you use "new".
    why the JVM should initialize default values to the data fieldsHuh?
    ... if the constructor is not there in our class?Huh? The default constructor is always there. It may be private but it is still there.

Maybe you are looking for

  • Transaction Launcher : calling URL and fill return values in the UI

    Hi SDN, We have a requirement, I am putting an example of it below:- 1. Call URL www.bank.com/branchlocator.htm?postcode=??????? 2. pass postcode of confirmed BP to the branchlocator field postcode 3. the website will return nearest branch post code.

  • Image Quality Issue

    Hi, I have a website that has a master swf that loads in a nav swf which loads in a gallery swf. I noticed that the images in my gallery swf look aliased/pixelly when they are nested within the main swfs but they look fine within the gallery swf. Is

  • Apple Mail sending problems

    I have a Macbook and it's working fine in my home office.  I purchased a Macbook Air and set it up for traveling internationally.  It was sending and receiving emails fine in the USA.  I have three email acccounts including fastmail IMAP, gmail IMAP

  • Trouble with 2nd audio track when exporting to Quicktime - please help!

    Ok - I've made my DV movie in IMovie - all ok. When I export to Quicktime the second audio track (an mp3 imported from iTune) jumps up in volume unexpectedly but always in the same place. There is no such jump in the original and I haven't put in any

  • Failure while extending weblogic server domain.

    Hello We are facing failure for registering/extending OID, OVD and OHS instances with the WebLogic Server Domain(10.3.5.0) on Windows. Weblogic domain server and URL(http://hostname:7001/console) is up and running; however we are not able to Telnet 7