19

Ing. Ignacio Roqueta ARTech [email protected] GeneXus and J2EE

Embed Size (px)

Citation preview

Ing. Ignacio RoquetaARTech

[email protected]

GeneXus and J2EE

Is GeneXus J2EE?Is GeneXus J2EE?

J2EEJ2EE

• Java 2 Platform, Enterprise Edition

• Specification defined by Sun to run applications in application servers

• It defines APIs group • Servlets• JSP (Java Server Page)• JDBC (Java Database Connectivity)• EJB (Enterprise Java Beans)• JNDI (Java Naming and Directory Interface)• JMS (Java Messaging Service)• JTA (Java Transaction API)

• Java 2 Platform, Enterprise Edition

• Specification defined by Sun to run applications in application servers

• It defines APIs group • Servlets• JSP (Java Server Page)• JDBC (Java Database Connectivity)• EJB (Enterprise Java Beans)• JNDI (Java Naming and Directory Interface)• JMS (Java Messaging Service)• JTA (Java Transaction API)

J2EEJ2EE

• 2 agents• J2EE Application Servers

• J2EE Applications

• 2 agents• J2EE Application Servers

• J2EE Applications

J2EE Application Servers J2EE Application Servers

• They implement J2EE specification

• They provide a framework to run applications

• Examples• Oracle Application Server• WebLogic• Websphere• Sun One• JRun• Jboss• Iplanet

• They implement J2EE specification

• They provide a framework to run applications

• Examples• Oracle Application Server• WebLogic• Websphere• Sun One• JRun• Jboss• Iplanet

J2EE ApplicationsJ2EE Applications

• Applications that run within a J2EE application server

• Web application (WAR)• Enterprise java beans applications (JAR)• Enterprise applications (EAR)

• Applications that run within a J2EE application server

• Web application (WAR)• Enterprise java beans applications (JAR)• Enterprise applications (EAR)

J2EE Compatible?J2EE Compatible?

• J2EE compatible Applications Server • When it meets the entire J2EE specification • Sun certifies an application server as J2EE compatible

• J2EE compatible Application • When it runs within a J2EE server

• J2EE compatible Applications Server • When it meets the entire J2EE specification • Sun certifies an application server as J2EE compatible

• J2EE compatible Application • When it runs within a J2EE server

Web GeneXus Java Applications Web GeneXus Java Applications

• They use• Servlets• JDBC• JNDI

• Deployment for J2EE servers• War Deployment

• They use• Servlets• JDBC• JNDI

• Deployment for J2EE servers• War Deployment

GeneXus is J2EEGeneXus is J2EE

J2EE Compatible?J2EE Compatible?

• J2EE and EJBs• A J2EE application does not have to use EJBs• Is GeneXus J2EE? <> Does GeneXus implement EJBs?

• J2EE and EJBs• A J2EE application does not have to use EJBs• Is GeneXus J2EE? <> Does GeneXus implement EJBs?

Enterprise java beansEnterprise java beans

• Reusable component that runs in a J2EE server • They implement

• Business logic • Access to database

• They run within container with middleware services• Security • Load balance • Persistency• Pool

• They may be used locally or remotely

• Reusable component that runs in a J2EE server • They implement

• Business logic • Access to database

• They run within container with middleware services• Security • Load balance • Persistency• Pool

• They may be used locally or remotely

Enterprise java beans typesEnterprise java beans types

• Entity beans• They model business data

• Session beans• They model business logic • Stateful• Stateless

• Message-driven beans• They model business logic • They are asynchronically called

• Entity beans• They model business data

• Session beans• They model business logic • Stateful• Stateless

• Message-driven beans• They model business logic • They are asynchronically called

Enterprise java beans typesEnterprise java beans types

• What will we generate?

• Session beans• Stateless

• Message-driven beans

• What will we generate?

• Session beans• Stateless

• Message-driven beans

ImplementationImplementation

• Main procedures with call protocol• Enterprise java bean

• Session bean steteless• Message driven Bean

• Business component• Session beans stateless

• Interface may be local, remote or both • EAR Deployment• It can be called from GeneXus or from external applications • ¿Session beans stateful?

• Data cache

• Paging

• Call external EJBs • Remote objects shown as EJBs (Rocha)

• Main procedures with call protocol• Enterprise java bean

• Session bean steteless• Message driven Bean

• Business component• Session beans stateless

• Interface may be local, remote or both • EAR Deployment• It can be called from GeneXus or from external applications • ¿Session beans stateful?

• Data cache

• Paging

• Call external EJBs • Remote objects shown as EJBs (Rocha)

DemoDemo

• Bank Account Application • Bank Account

• Id• Owner• Balance

• 4 EJBs• Local

• getOwner

• getBalance

• ModifyBalance

• Remote• Transfer

• It uses getBalance and ModifyBalance

• Bank Account Application • Bank Account

• Id• Owner• Balance

• 4 EJBs• Local

• getOwner

• getBalance

• ModifyBalance

• Remote• Transfer

• It uses getBalance and ModifyBalance

SummarySummary

• GeneXus Java Web applications run in J2EE servers

GeneXus is J2EE

• Being J2EE does not imply using EJBs• EJBs will be generated in the next version

• GeneXus Java Web applications run in J2EE servers

GeneXus is J2EE

• Being J2EE does not imply using EJBs• EJBs will be generated in the next version

Any question?Any question?