1 / 35

Preparing for the Sun Certified Enterprise Architect Exam 1

Preparing for the Sun Certified Enterprise Architect Exam 1. Resources & Topics. Benefits of Certification. A credible entity validates your expertise Supercharges your resume Gives you authority on the given topic Separates you from 95% of the competition Says you are self-motivated

rmelendez
Download Presentation

Preparing for the Sun Certified Enterprise Architect Exam 1

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Preparing for the Sun Certified Enterprise Architect Exam 1 Resources & Topics

  2. Benefits of Certification • A credible entity validates your expertise • Supercharges your resume • Gives you authority on the given topic • Separates you from 95% of the competition • Says you are self-motivated • Helps you to capitalize on opportunities in your current company - Java Cert. Helped me.

  3. Challenges of Studying for SCEA • Lack of very comprehensive study-guide books - Not like Java Programmer Certification • Can be boring at times. Takes discipline. • Have to study about things that you may not have great experience in - for me: Legacy, Security, 23 Design Patterns. • Memorize, memorize, memorize

  4. Java Certifications at Sun

  5. SCEA Examshttp://suned.sun.com/US/certification/java/java_archj2ee.html “Prior to purchasing the assignment for the Sun Certified Enterprise Architect program, you must have successfully completed the Sun Certified Enterprise Architect multiple choice exam (CX-310-051). * Step 1: Sun Certified Enterprise Architect for J2EE Technology, Knowledge-based Multiple Choice Exam (CX-310-051) ($150) * Step 2: Sun Certified Enterprise Architect for J2EE Technology, Assignment (CX-310-300A) ($250) * Step 3: Sun Certified Enterprise Architect for J2EE Technology, Essay Exam (CX-310-061) ($150)”

  6. Example Resources - See Web • Only book: Sun Certified Enterprise Architect for J2EE Technology Study Guide -- Mark Cade, Simon Roberts; Paperback. Better than nothing. - Buy it. • SCEA@Whiz - Sun Java Architect Certification 6 Mock Tests on latest pattern of SCEA, Interactive Quiz, Highly Customizable, Quick Revision Tips ... $50 and worth it. • CERTIFICATION GURU - http://www.certificationguru.com/javacertification.htm -Information, tutorials, links to resources. • Expensive courses at Sun

  7. Topics on Test - See Certification Guru, Table of Contents in Book • Architecture - what is it? Know their terms! • Development Life-Cycle • UML • Design Patterns - 23 • Security • EJB - life cycle • MVC • Legacy Connectivity • Internationalization • Protocols - HTTP, JRMP, RMII-IIOP • J2EE Overview • Messaging - Not covered in book

  8. Sample of Technologies for SCEA Why the failure rate is > 40% for Exam 1 !!!

  9. Service Level Requirements Performance Scalability Reliability Availability Extensibility Manageability Security Functional Requirements - I.E. Components Use 1GHz CPU Use N-Tier layout Use Java 2 Security Components Use Asynchronous Messaging Keep account for each user Know your Requirements

  10. J2EE Overview - Study to understand how APIs interact in J2EE • Application Server can host 1:N J2EE Containers. Containers are Environment for EJB and Web Applications. • J2EE APIs • J2SE - have a working knowledge, especially Applets, Internationalization, Security, Encryption • JDBC - API for connecting to Specific Databases, abstractly • Java IDL - Incorporates CORBA into Java. Alternative to RMI. Java-CORBA-Java • RMI-IIOP - Allows Java-CORBA-Any language interaction

  11. J2EE API’s (continued) • EJB - “A component architecture for the development and deployment of component-based distributed business applications.” (Cade) • Servlets - Java’s replacement for CGI • JSP - Better than servlets for mixing HTML with Java Code • Java Message Server (JMS) - An API (abstraction) of underlying MOM. Enables P2P and Publish Subscribe. • JNDI - know that it is used to hook up client apps with Home Interfaces for EJB • Java Transaction API (JTA) - know how kinds of EJBs and J2EE containers use it. Not easy. • Java Mail • JavaBeans Activation Framework

  12. J2EE Application Modelhttp://java.sun.com/j2ee/sdk_1.2.1/techdocs/guides/j2ee-overview/Introduction.fm.html#7916 Two Tier N-Tier (3 Tiers) “Originally, the two-tier, client-server application model promised improved scalability and functionality. Unfortunately, the complexity of delivering EIS [Enterprise Information Systems] services directly to every user and the administrative problems caused by installing and maintaining business logic on every user machine have proved to be major limitations. “

  13. Typical J2EE Purchasing Applicationhttp://java.sun.com/j2ee/sdk_1.2.1/techdocs/guides/j2ee-overview/Example.fm.html

  14. J2EE Purchasing App - Functional Componentshttp://java.sun.com/blueprints/guidelines/designing_enterprise_applications_2e/sample-app/sample-app1.3.1a3.html

  15. Web Application Framework Service Cycle

  16. An Application As An Extension of the WAF

  17. Classes And Interfaces Involved In User Creation

  18. Sequence Diagram for User Creation

  19. J2EE Technologies Used Abovehttp://java.sun.com/blueprints/guidelines/designing_enterprise_applications_2e/sample-app/sample-app1.3.1a3.html

  20. Use of Remote and Home Interfaces into EJB Container by Clients- Typical Clients: JSP, Servlets, Applets, Session EJBs using Entity EJBs

  21. EJB’s Accessed through Remote, Local, and Home Interfaces - Client never touches EJB directly!

  22. Notice Remote at Top of Hierarchy • Implies Stubs and Skeletons - Proxy Pattern • Client thinks it is working with CustomerHome and Customer Object, but really is working with CustomerHome Stub and Customer EJBObject Stub. • The Home and EJBObject are generated by container and are container’s way of managing EJBs by adding: • Transactions • Persistence • Security

  23. Client Uses Home Interface to Create, Find, Remove EJBObjects Context initial = new InitialContext(); //JNDI Context e.g. LDAP CustomerHome home = // ... obtain a reference that // implements the home interface. Object objref = initial.lookup("java:comp/env/ejb/SimpleCustomer"); CustomerHome customerHome = (CustomerHome)PortableRemoteObject.narrow(objref, CustomerHome.class); //got the stub // Use the home interface to create a // new instance of the Customer bean. Customer customer = home.create(customerID); //stub calls create

  24. Client has to import packages for JNDI and EJB import java.util.*; import javax.naming.Context; //JNDI import javax.naming.InitialContext; // JNDI import javax.rmi.PortableRemoteObject; //JNDI to EJB

  25. EJBObject Interface from Stub import javax.ejb.EJBObject; import java.rmi.RemoteException; public interface Customer extends EJBObject { public Name getName() throws RemoteException; public void setName(Name name) throws RemoteException; public Address getAddress() throws RemoteException; public void setAddress(Address address) throws RemoteException; } // using a business method on the Customer. customer.setName(someName);

  26. EJB is Highly Managed RMI for Remote Home Objects. Local Home in EJB 2.0

  27. Client can call the methods.Container routes through EJBObject Skeleton to Customer EJB import javax.ejb.EntityBean; public class CustomerBean implements EntityBean { //Map to database attributes Address myAddress; Name myName; CreditCard myCreditCard; public Name getName() { return myName; } public void setName(Name name) { myName = name; } public Address getAddress() { return myAddress; } public void setAddress(Address address) { myAddress = address; } ... EJB LIFECYCLE METHODS GO HERE }

  28. EJB LIFECYCLE Methods for Entity Beans(Same methods but different consequences for Session EJBs) Method Summary void ejbActivate() A container invokes this method when the instance is taken out of the POOL of available instances to become associated with a specific EJB object. INSTANCE VARIABLES NOT INITIALIZED. void ejbLoad() A container invokes this method to instruct the instance to synchronize its state by loading it state from the underlying database. - AFTER GETTING FROM POOL LOAD ATTRIBUTES FROM DB void ejbPassivate() A container invokes this method on an instance before the instance becomes disassociated with a specific EJB object. - RETURNS IT TO THE POOL void ejbRemove() A container invokes this method before it removes the EJB object that is currently associated with the instance. - DELETES THE ROW(S) FROM THE DATABASE void ejbStore() A container invokes this method to instruct the instance to synchronize its state by storing it to the underlying database. - UPDATES THE DATABASE void setEntityContext(EntityContext ctx) Set the associated entity context. - SECURITY & TRANS void unsetEntityContext() Unset the associated entity context.

  29. Test wants you to memorize Life Cycles

  30. Session Beans For Workflow. Not meant for representing 1 Row in DB • Use Statefull Session EJBs to maintain Client State. E.G. Shopping Cart. Instance attributes persist on behalf of Client. Are serialized out to disk when passivated. • Use Stateless Session EJBs to perform “in-and-out” operations. Instance attributes are not persisted. Exist only for management of bean. E.G. Good for listing a Catalog.

  31. Life Cycle of Statefull Message Bean - notice: Not Pooled

  32. Life Cycle of Stateless Message Bean - notice: Pooled

  33. With EJB 2.1 Message Driven Beans came in. These use JMS+MOM

  34. Putting it Together 1. When container starts up it pools uninitialized Entity Beans for User + Account 2. Pools also occur for Stateless Session Beans which list the Catalog and Order Message Beans which use JMS to Queue up orders 3. When a Client Connects to the Top HTML page JSP’s are used to produce HTML pages for WORKFLOW OPERATIONS: Signon, Customer Account Access, & Catalog Listing 4. As customer interacts with HTML Pages produced by JSP - a Stateful Session Bean builds up an Order in a Shopping Cart 5. When Customer Checks Out , Shopping Cart Stateful Session Bean Uses P2P to put an Order Message on a Queue to be retrieved by waiting Queue Listener (the order taking system).

  35. Unfortunately EJBs and J2EE Web Interactions are NOT all you have to know to pass this test!!!! Readers are directed to download the free SCEA Sample test from Whizlabs at: http://www.whizlabs.com/scea/scea.html

More Related