SlideShare une entreprise Scribd logo
1  sur  56
Ten Tips For Java Developers with  Oracle WebLogic Server Pieter Humphrey Principal Product Director, Oracle
Oracle WebLogic Server  Converged Infrastructure for the Oracle Platform ,[object Object],[object Object],[object Object],[object Object],WebLogic  Server Clusters WebLogic  Application Grid  WebLogic Differentiator:  the “ilities” Databases Mainframes Legacy Commodity Virtualized
#1 Utilize the  Lightweight Server
Lightweight Installation ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Lightweight Installation
Lightweight Server ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
#2 Leverage Java EE 5.0
WebLogic Server Standards Java EE 5.0 and Java SE 5.0/6.0 √ J2EE Management 1.1  √ J2EE Deployment 1.2 √ JMX 1.2 √ JACC/JAAS 1.0 √ JTA 1.1 √ JCA 1.5 √ JNDI 1.2 √ JMS 1.1 √ JAX-WS 2.0 √ EJB 3.0 √ Servlet 2.5 √ JSF 1.2 √ JSP 2.1 Java EE 5.0 APIs   Support JDBC 3.0  √ ,[object Object],[object Object],√
Java EE5 Developer Productivity  ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
EJB 3.0 Entity Bean ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],No XML Required
EJB 3.0 Session Bean ,[object Object],[object Object],[object Object],[object Object],[object Object],@Stateless(mappedName=“EmployeeManager”) public class EmployeeManagerBean implements EmployeeManager { @PersistenceContext private EntityManager em; public Employee findEmployeeByEmpNo(int empNo) { return ((Employee) em.find(Employee.class, empNo)); } public Employee createEmployee(int empNo, String eName) { Employee emp = new Employee(empNo, eName); em.persist(emp); return emp; } } No XML Required
Servlet 2.5 with Dependency Injection ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],No XML Required
#3 Employ FastSwap for  Rapid Develop/Test Cycles
FastSwap for Maximum Productivity ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Develop Deploy Accelerate Development Cycle
FastSwap for Maximum Productivity  ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
FastSwap in Action User Class Foo.class Modified User Class Foo.class Versioned User Class Classloader  detects* change and  enhances class User class is enhanced by having generic methods and field accessors. This class structure remains the same for the life of the classloader that loaded it. Delegates calls over to the latest version class. Ever time the user class is changed, a new versioned class is created which contains the corresponding method bodies.
FastSwap Supported Class Changes   ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Enabling FastSwap with Eclipse Configure project to compile into exploded directories Enable wls-fastswap in weblogic-application.xml
#4 Leverage WebLogic Server  Ant Tasks
WebLogic Server Ant Tasks ,[object Object],[object Object],[object Object],[object Object]
Ant Task Definition ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
<wldeploy/> ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
<wlserver/> ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Create a new server definition and start it
#5 Make Use of  WebLogic Server Tooling
WebLogic Server Tooling ,[object Object],[object Object],[object Object],[object Object],weblogic.appc Compiles JSPs, EJB, validates deployment descriptors weblogic.marathon.ddinit.EarInit Generate EAR level deployment descriptors weblogic.marathon.ddinit.WebInit Generate Web module deployment descriptors weblogic.DDConverter Convert deployment descriptors to current WLS version weblogic.Deployer Command line deployment utility weblogic.PlanGenerator Generates a template deployment plan for an application
JRockit Mission Control ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
#6 Use Smart IDE Features
Oracle Enterprise Pack for Eclipse Open Source skill leverage reduces learning curve AppXRay ™ Presentation Component Data Access External Resources Java / Java EE Web Services WebLogic Server Spring, ORM, DB Artifact JSP CSS JSF JSTL HTML Struts Web Services POJO Resource bundles XML schema Java Variable Spring DAO EJB 3 JPA Hibernate OpenJPA Kodo
OEPE Overview ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
AppXRay ™ Oracle’s AppXRay™ provides as-you type, compiler level awareness of much more than java at design time, offering unique capabilities in code and annotation completion, code navigation, dependency visualization, consistency checking with generated classes and configuration files, pre-build error checking, and validation that understands your entire application.   ,[object Object],[object Object],[object Object],[object Object],[object Object]
AppXRay: AppXaminer Developers who inherit code or applications developed by others will appreciate AppXaminer.  View the relationships between all design time artifacts with a simple right click gesture, then filter out what you don’t want to see. AppXaminer allows navigation through specific instances of dependences as well.
AppXRay Code Completion ,[object Object],[object Object],Example: JSP Source Completion ,[object Object]
AppXRay Validation Example: Struts Validation ,[object Object],[object Object],[object Object],[object Object],[object Object]
#7 Automate Creation of  Dev/Test Environments
Automation of Dev/Test Environments ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
WebLogic Scripting Tool (WLST) ,[object Object],[object Object],[object Object],[object Object],[object Object]
Resource Creation with WLST ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
#8 Shared Libraries
Ways of Sharing Libraries ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Best Practices for Sharing Libraries ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Application Shared Libraries my-web-1.war my-ejb-1.jar my-web-3.war App-1.ear my-web-2.war my-ejb-2.jar App-2.ear my-web-1.war my-ejb-1.jar App-1.ear my-web-3.war my-web-2.war my-ejb-2.jar App-2.ear my-web-3.war App-lib.ear Deployment view Runtime view
Web-App Shared Libraries WEB-INF/web.xml WEB-INF/lib/x.jar foo.jsp bar.jsp webapp-1.war WEB-INF/web.xml WEB-INF/lib/y.jar a.jsp b.html webapp-lib.war WEB-INF/web.xml* WEB-INF/lib/x.jar WEB-INF/lib/y.jar foo.jsp bar.jsp a.jsp b.html webapp-1.war Deployment view Runtime view
#9 Application Class Loader
Application Class Loading ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Application Class Paths ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Filtering Classloader ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Module  Loader  Module  Loader  Module  Loader  ... Application (EAR application & EAR library classes )   Filtering (filter-list barrier) ,[object Object],[object Object],[object Object],[object Object],System Loader Filtering Classloader Hierarchy
[object Object],[object Object],[object Object],[object Object],[object Object],Custom Classloader Hierarchies EJB1, WAR1  WAR2  EJB3, WAR3  WAR4  EJB4
#10 Application Logging
Applications Using java.util.logging ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Java Logging Handler for WLS ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Configuring Logging Handler ,[object Object],handlers=sab.demo.fastswap.logging.WLSServerHandler sab.demo.fastswap.logging.WLSServerHandler.level=FINER TestServlet.level=FINER CalculatorBean.level=FINER set JAVA_OPTIONS=%JAVA_OPTIONS%  -Djava.util.logging.config.file=d:easer_projectsomiansesearchls-logging.properties Specify logging.properties file in setDomainEnv.cmd
Console Log Viewer ,[object Object],[object Object]
Summary ,[object Object],[object Object],[object Object],[object Object],[object Object]
More Resources ,[object Object],[object Object],[object Object],[object Object]
A Q &

Contenu connexe

Dernier

Dernier (20)

Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 

En vedette

How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
ThinkNow
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
Kurio // The Social Media Age(ncy)
 

En vedette (20)

How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work
 
ChatGPT webinar slides
ChatGPT webinar slidesChatGPT webinar slides
ChatGPT webinar slides
 

Top 10 Productivity Tools for Java Developers on Oracle WebLogic Server 11g

  • 1. Ten Tips For Java Developers with Oracle WebLogic Server Pieter Humphrey Principal Product Director, Oracle
  • 2.
  • 3. #1 Utilize the Lightweight Server
  • 4.
  • 6.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13. #3 Employ FastSwap for Rapid Develop/Test Cycles
  • 14.
  • 15.
  • 16. FastSwap in Action User Class Foo.class Modified User Class Foo.class Versioned User Class Classloader detects* change and enhances class User class is enhanced by having generic methods and field accessors. This class structure remains the same for the life of the classloader that loaded it. Delegates calls over to the latest version class. Ever time the user class is changed, a new versioned class is created which contains the corresponding method bodies.
  • 17.
  • 18. Enabling FastSwap with Eclipse Configure project to compile into exploded directories Enable wls-fastswap in weblogic-application.xml
  • 19. #4 Leverage WebLogic Server Ant Tasks
  • 20.
  • 21.
  • 22.
  • 23.
  • 24. #5 Make Use of WebLogic Server Tooling
  • 25.
  • 26.
  • 27. #6 Use Smart IDE Features
  • 28. Oracle Enterprise Pack for Eclipse Open Source skill leverage reduces learning curve AppXRay ™ Presentation Component Data Access External Resources Java / Java EE Web Services WebLogic Server Spring, ORM, DB Artifact JSP CSS JSF JSTL HTML Struts Web Services POJO Resource bundles XML schema Java Variable Spring DAO EJB 3 JPA Hibernate OpenJPA Kodo
  • 29.
  • 30.
  • 31. AppXRay: AppXaminer Developers who inherit code or applications developed by others will appreciate AppXaminer. View the relationships between all design time artifacts with a simple right click gesture, then filter out what you don’t want to see. AppXaminer allows navigation through specific instances of dependences as well.
  • 32.
  • 33.
  • 34. #7 Automate Creation of Dev/Test Environments
  • 35.
  • 36.
  • 37.
  • 39.
  • 40.
  • 41. Application Shared Libraries my-web-1.war my-ejb-1.jar my-web-3.war App-1.ear my-web-2.war my-ejb-2.jar App-2.ear my-web-1.war my-ejb-1.jar App-1.ear my-web-3.war my-web-2.war my-ejb-2.jar App-2.ear my-web-3.war App-lib.ear Deployment view Runtime view
  • 42. Web-App Shared Libraries WEB-INF/web.xml WEB-INF/lib/x.jar foo.jsp bar.jsp webapp-1.war WEB-INF/web.xml WEB-INF/lib/y.jar a.jsp b.html webapp-lib.war WEB-INF/web.xml* WEB-INF/lib/x.jar WEB-INF/lib/y.jar foo.jsp bar.jsp a.jsp b.html webapp-1.war Deployment view Runtime view
  • 44.
  • 45.
  • 46.
  • 47.
  • 48.
  • 50.
  • 51.
  • 52.
  • 53.
  • 54.
  • 55.
  • 56. A Q &