development with oracle - doag deutsche …€¢ bics approx 215,- / month ... that consume and...
TRANSCRIPT
Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |
DEVELOPMENT WITH ORACLE OPEN SOURCE PRODUCTS:
NOT JUST JET
Tuesday, November 15th
11:00-11:45
DOAG Konferenz, Nurnberg, Germany
Luc Bors
Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |
About Luc Bors• Technical Director• ADF, JET, MAF, MCS• ACE Director• Working with Oracle
since 1999
About Ronald van Luttikhuizen• Managing Partner• WLS, OSB, SOA• ACE Director• Working with Oracle
since 2000
3
WHO AM I?
About eProseed• Local offices in several parts of world• HQ in Luxemburg• Award winning Oracle partner
Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |
• Network Organization• Relies on Sponsorship for
funding• Smart Cities• Smart Retail• Smart Logistics
4
INTRODUCING THE CUSTOMER
Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |
PROGRAM AGENDA
Historical Overview
Going to Plan B
Going into details
Features, Issues or Challenges?
Summary
2
3
4
5
1
5
Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |
PROJECT TIMELINE
• June 2015 à First Contact• August 2015 à Plans Made• November 2015 à Development Started
6
Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |
COST FOR THE CLOUD
• JCS approx 200,- / month• DBCS approx 260,- / month• BICS approx 215,- / month / user (minimum 10)• Total: approx 2500,-/month
• JCS + BICS + DBCS > 30000,- / year
8
Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |
INITIAL PLAN (AFTER DOING MATH)
9
Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |
PROJECT TIMELINE
• June 2015 à First Contact• August 2015 à Plans Made• November 2015 à Development Started• January 2016 à Budget Cut• February 2016 à Re-architecting
10
Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |
INITIAL PLAN (AFTER DOING MORE MATH)
11
Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |
PROGRAM AGENDA
Historical Overview
Going to Plan B
Going into details
Features, Issues or Challenges?
Summary
2
3
4
12
1
5
Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |
PLAN B - ARCHITECTURE
14
Oracle MySQL 5.7
Oracle GlassFish 4.1
JAX-RS 2.xEJB 3.3
Oracle EclipseLink 2.5
Oracle JET 2.x (started with 1.0.2) UI Developer
Service Developer
DB DeveloperO
racl
e SQ
L D
evel
oper
12
.1.3
Ora
cle
JDev
elop
er
12.1
.3
Ora
cle
Net
bean
s8.
0.1
Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |
INTRODUCING THE TECHNOLOGIES
15
Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |
ORACLE JET
• Oracle JET is targeted at intermediate to advanced JavaScript developersworking on client-side applications. It's a collection of open source JavaScript libraries along with a set of Oracle contributed JavaScript libraries that make it as simple and efficient as possible to build applications that consume and interact with Oracle products and services, especially Oracle Cloud services.
16
Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |
ORACLE GLASSFISH
• GlassFish is the reference implementation of Java EE and as such supports Enterprise JavaBeans, JPA, JavaServer Faces, JMS, RMI, JavaServer Pages, servlets, etc. This allows developers to create enterprise applications that are portable and scalable, and that integrate with legacy technologies. Optional components can also be installed for additional services.
18
Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |
ORACLE MYSQL
• MySQL is the world's most popular open source database. With its proven performance, reliability, and ease-of-use, MySQL has become the leading database choice for web-based applications, used by high profile web properties including Facebook, Twitter, YouTube
19
Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |
THE TRANSITION
• Oracle Database to MySQL
• Weblogic to GlassFish
20
Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |
• Weblogic–Weblogic-application.xml– IdentityProvider: Weblogic Users
–No Need for EJB references in web.xml
• Glassfish–Glassfish-application.xml– IndentityProvider: JDBC Security
–Needs EJB references in web.xml
– Security Roles Mapping in glassfish-web.xml
–Remove some libs from ear file• zip -d SdcRestServices.ear lib/*• zip -d SdcRestServices.ear adf/*
22
WEBLOGIC TO GLASSFISH
Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |23
GLASSFISH SPECIFIC DESCIPTORS
Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |
PROJECT TIMELINE
• June 2015 à First Contact• August 2015 à Plans Made• November 2015 à Development Started• January 2016 à Budget Cut• February 2016 à Re-architecting• April 2016 à Go Live v1.0
24
Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |
PROGRAM AGENDA
Historical Overview
Going to Plan B
Going into details
Features, Issues or Challenges?
Summary
2
3
4
28
1
5
Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |
APPLICATION
• JET application– “Deployed” as static content in the docroot of glassfish domain.
• Webservices–Deployed as ear on Glassfish
• Database– Scripts for MySql
29
Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |
PROGRAM AGENDA
Historical Overview
Going to plan B
Going into details
Features, Issues or Challenges?
Summary
2
3
4
39
1
5
Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |
END USERS – THEY MAKE TYPOS
• [email protected]• [email protected]• [email protected]
• All Usernames Upper Case
40
Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |
END USERS – THEY MAKE TYPOS
• Password Reset Functionality
41
Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |
ORACLE JET - REMEMBER PASSWORD
• Knockout cannot see “remembered” passwords
42
Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |
ORACLE JET - CACHE BURSTING
• JET is static content, downloaded into clients browser..
43
Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |
ORACLE JET - QUICK USERS
44
Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |
• All data changed in the database WILL NOT BE available in the data cache of Eclipselink !!• Prevent use of database triggers if
possible
45
DATABASE TRIGGERS AND ECLIPSELINK
Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |
• Use flush() on entity manager
46
DATABASE TRIGGERS AND ECLIPSELINK
Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |
• Printing• Mailing
47
OTHER FEATURES (ISSUES OR CHALLENGES)
Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |
ORACLE JET - MULTI LANGUAGE
48
Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |
ORACLE JET - MULTI LANGUAGE
49
Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |
ORACLE JET - MULTI LANGUAGE
50
Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |
MULTITENANT OPTIONS ECLIPSELINK
• Single-Table Multitenancy–@Multitenant(SINGLE_TABLE) –@TenantDiscriminatorColumn(name = “TENANT_ID”, contextProperty =
"employee-tenant.id")
• Table-Per-Tenant Multitenancy–@Multitenant(TABLE_PER_TENANT)–@TenantTableDiscriminator(SCHEMA)
• VPD Multitenancy–@Multitenant(VPD)–@TenantDiscriminatorColumn(name = "USER_ID", contextProperty = "tenant.id")
51
Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |
MULTI TENANT
52
TABLE_ONE_NLTABLE_TWO_NL TABLE_ONE_UKTABLE_TWO_UK
USERS
LOGIN APP NL LOGIN APP UK
Tenant = NL Tenant = UK
Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |
MULTI TENANT JET
• Repopulate Lists
• Refresh Knockout Bindings
54
Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |
MULTI TENANT ECLIPSELINK
56
Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |
MULTI TENANT
57
TABLE_ONE_NLTABLE_TWO_NL TABLE_ONE_UKTABLE_TWO_UK
USERS
LOGIN APP NL LOGIN APP UK
Tenant = NL Tenant = UK
TABLE_ONE_XTABLE_TWO_X
LOGIN APP X
Tenant = X
Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |
MULTI TENANT
59
TABLE_ONE_NLTABLE_TWO_NL TABLE_ONE_UKTABLE_TWO_UK
USERS
LOGIN APP NL LOGIN APP UKLOGIN ADMIN CONSOLE
Tenant = NL Tenant = UKNo tenant set. Needsaccess to all tables
?TABLE_ONE_XTABLE_TWO_X
LOGIN APP X
Tenant = X
Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |
PROJECT TIMELINE
• June 2015 à First Contact• August 2015 à Plans Made• November 2015 à Development Started• January 2016 à Budget Cut• February 2016 à Re-architecting• April 2016 à Go Live v1.0• End 2016 à Go Live v2.0
60
Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |
PROGRAM AGENDA
Historical Overview
Going to plan B
Going into details
Features, Issues or Challenges?
Summary
2
3
4
61
1
5
Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |
• Stable & Fast• Easy Configuration• Support for Used
Technologies• SQL Authentication• Free
62
• Easy to Use• Easy to manage• Supports standard SQL
SUMMARY
• Ease of Development• Rich Component Lib• Interactive UI• Free