Migrate to Oracle WebLogic Server 11g<br />Lukasz Romaszewski<br />ISV Migration Consultant<br />Oracle<br />
ISV Migration Center Team<br />Who we Are   ISV Migration Center Team  is a team of senior technical consultants based in ...
Agenda<br />Introduction to the Oracle WebLogic Server 11g<br />Migration Process overview<br />Migrating from iAS 10g<br ...
Agenda<br />Introduction to the Oracle WebLogic Server 11g<br />Migration Process overview<br />Migrating from iAS 10g<br ...
Oracle Fusion Middleware<br />Application Server, TP – Monitor, Java VM, Grid<br />
Oracle Fusion MiddlewareRuns on the WebLogic Suite<br />Content<br />Management<br />Suite<br />Identity<br />Management<b...
Java Standard                  	Support<br />          6.0<br />Java SE<br />          5.0<br />Java EE<br />JDBC 4.0   √<...
Identity<br />Management<br />Suite<br />Business<br />Intelligence<br />Suite<br />Content<br />Management<br />Suite<br ...
WebLogic Cluster<br />JMS Server<br />JMS Server<br />JMS Server<br />JMS Server<br />WebLogic JMS ExtensionsDesigned to S...
Running on the World’s Fastest Java VM<br />Complete implementation of Java <br />100% compatible with the Java SE and ”bu...
With Near Zero Application Pause TimesJRockit Real Time<br />Traditional Java VM – Stop the World Pauses<br />Guaranteed m...
Device<br />View<br />Controller<br />Model<br />Application Development FrameworkMVC Development Framework<br /><ul><li>D...
JSF Components
Ajax & DHTML
Flash
JSF Page Flow
JSR 227 Data Binding
O-R Mapping
EJB 3, JPA</li></li></ul><li>WebLogic Server Diagnostics<br />WebLogic Diagnostics Framework<br />Built into the server<br...
Web services<br />Web services<br />Oracle Coherence Data Grid<br />Provides a reliable data tier with a single, consisten...
C++, .NET, Word, Excel, Visual Basic …<br />App Machines<br />Java Applications<br />Java/JEE Container<br />Application<b...
Agenda<br />Introduction to the Oracle WebLogic Server 11g<br />Migration Process overview<br />Migrating from iAS 10g<br ...
Migration To Oracle WebLogic Server 11g<br />First make sure you understand the WebLogic Server architecture and topology<...
Oracle WebLogic Server 11g Topology<br />Admin Server<br />config.xml<br />Managed Servers<br />Admin Console<br />
Some important facts about WebLogic topology...<br />A Weblogic Server instance is always part of a Weblogic Server Domain...
Agenda<br />Introduction to the Oracle WebLogic Server 11g<br />Migration Process overview<br />Migrating from iAS 10g<br ...
Oracle Strategy for custom Java EE Applications<br />Comprehensive Documentation<br />OC4J to WLS Upgrade White Paper – Av...
Identity<br />Management<br />Suite<br />Business<br />Intelligence<br />Suite<br />Content<br />Management<br />Suite<br ...
Custom Java EE Application Upgrade<br />Oracle Documentation<br />WebLogic SmartUpgrade<br />
OC4J vs WebLogic - Topology Comparison<br />
Agenda<br />Introduction to the Oracle WebLogic Server 11g<br />Migration Process overview<br />Migrating from iAS 10g<br ...
WebLogic SmartUpgrade Design<br />JDeveloper Interface<br />- Enhanced Findings Management<br />Command Line Interface<br ...
WebLogic SmartUpgrade MethodologyApplication Level<br />2. Compare metrics <br />against previous runstrack to project ben...
WebLogic SmartUpgrade Knowledge Base - Categories<br /><ul><li>api
Application code is importing APIs which fall within any of the following categories
Public Oracle APIs
Private Oracle APIs
Known 3rd Party APIs
classloading, cluster, data-source, ejb, jca, jms, jmx, jndi, jsp, jta, rmi, security, web, web-services
Application and OC4J instance configuration targeted knowledge</li></li></ul><li>SmartUpgrade JDeveloper Interface<br />
Agenda<br />Introduction to the Oracle WebLogic Server 11g<br />Migration Process overview<br />Migrating from iAS 10g<br ...
SmartUpgrade Demo<br />
Agenda<br />Introduction to the Oracle WebLogic Server 11g<br />Migration Process overview<br />Migrating from iAS 10g<br ...
Migrating JEE application to WebLogic<br />Analize your application<br />uses EJBs, what version?<br />uses JMS, MDBs?<br ...
Agenda<br />Introduction to the Oracle WebLogic Server 11g<br />Migration Process overview<br />Migrating from iAS 10g<br ...
Migrating JEE application to WebLogicthings to remember <br />Always make EAR archive – you gain much more configuration o...
Migrating JEE application to WebLogicthings to remember cont.<br />If you encounter NullPointerException related to <br />...
Agenda<br />Introduction to the Oracle WebLogic Server 11g<br />Migration Process overview<br />Migrating from iAS 10g<br ...
How Java loads classes<br />
Class Loading in JEE <br />Applications e.g. .ear’s run each have their own Class Loaders which are usually children of th...
Example of classloader hierarchy in WebLogic Server<br />System Class Loader<br />WebLogic Server<br />App1<br />App2<br /...
Does not load classes. Prevents classes from being loaded from system if they match the filter-list<br />Filtering<br />(f...
WEB-INF/classes/**.class, <br />WEB-INF/lib/*.jar<br />MANIFEST Classpath<br />Web Application<br />(webapp & webapp-libra...
Filtering Classloader<br />Load classes from application first (changes the delegation)<br />Works as a barrier. <br />Doe...
Filtering Classloader - configuration<br /><Application archive>.ear<br />META-INF<br />application.xml<br />weblogic-appl...
Upcoming SlideShare
Loading in...5
×

Partner Webcast - Migration to Weblogic Server 11g

5,556

Published on

Published in: Technology
0 Comments
4 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
5,556
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
375
Comments
0
Likes
4
Embeds 0
No embeds

No notes for slide
  • Let’s go quickly through the agenda for today’s webinar
  • Let’s start with Oracle Weblogic Server overview and quickly go through it’s most important features
  • Let’s move to the real migration topic. We start with migration from Oracle Application Server
  • Partner Webcast - Migration to Weblogic Server 11g

    1. 1. Migrate to Oracle WebLogic Server 11g<br />Lukasz Romaszewski<br />ISV Migration Consultant<br />Oracle<br />
    2. 2. ISV Migration Center Team<br />Who we Are   ISV Migration Center Team is a team of senior technical consultants based in Eastern and Central Europe and represents Oracle's technical investment for partners. <br />Mission Statement   Enable partners to rapidly and successfully adopt and implement Oracle latest technology<br />What do we Offer  Whether you are selling Oracle technology, building business solutions, including hosted Internet solutions or providing system integration and implementation services for Oracle technology, IMC Team can help you succeed.  <br />How can we assist We offer a wide range of free services for partners such as one2one assistance, webinars, seminars and hands-on workshops.<br /> For more information, visit the IMC website.<br />Contact: Ruxandra Radulescu, ruxandra.radulescu@oracle.com<br />ISV Migration Center Manager, Eastern & Central Europe and CIS<br />
    3. 3. Agenda<br />Introduction to the Oracle WebLogic Server 11g<br />Migration Process overview<br />Migrating from iAS 10g<br />SmartUpgrade utility introduction<br />SmartUpgrade Demo<br />Migrating from other JEE application servers<br />Understanding potential caveats<br />Using WebLogic classloader mechanism to isolate application<br />Shared libraries overview<br />Migrating Oracle Fusion Middleware components (Forms&Reports, ADF, SOA etc)<br />Summary<br />Q&A<br />
    4. 4. Agenda<br />Introduction to the Oracle WebLogic Server 11g<br />Migration Process overview<br />Migrating from iAS 10g<br />SmartUpgrade utility introduction<br />SmartUpgrade Demo<br />Migrating from other JEE application servers<br />Understanding potential caveats<br />Using WebLogic classloader mechanism to isolate application<br />Shared libraries overview<br />Migrating Oracle Fusion Middleware components (Forms&Reports, ADF, SOA etc)<br />Summary<br />Q&A<br />
    5. 5. Oracle Fusion Middleware<br />Application Server, TP – Monitor, Java VM, Grid<br />
    6. 6. Oracle Fusion MiddlewareRuns on the WebLogic Suite<br />Content<br />Management<br />Suite<br />Identity<br />Management<br />Suite<br />Business<br />Intelligence<br />Suite<br />SOA<br />Suite<br />WebCenterSuite<br />Java EE/ISVApps<br />WebLogic Suite<br />WebLogic Server<br />Java EE: Reliability, Availability, Scalability & Performance<br />Enterprise Manager<br />Development Tools<br />Coherence EE<br />Admin and Operations<br />Jdeveloper/Eclipse<br />High Performance, Reliable, Scale Out for Java, C++ and .NET<br />JRockit Real Time<br />High Performance JVM with Extreme Low Latency<br />Cost, Power, Hardware Efficient<br />Risk-free Scale-up and Scale-out<br />Higher performance and reliability<br />
    7. 7. Java Standard Support<br /> 6.0<br />Java SE<br /> 5.0<br />Java EE<br />JDBC 4.0 √<br /> √<br />WebLogic Server Java EE 5.0 and Java SE 6.0<br />Standards Compliant<br />Certified JEE 5.0 Compatible<br />Latest version: JPA 2.0 & JSF 2.0 compliant<br />High Performance<br />Advanced Security <br />Enterprise Messaging<br />Web Services<br />Integrated Operations & Administration<br />Integrated, Productive Development Tools<br />Open Source Certified<br /> √<br />JSP 2.1<br /> √<br />JSF 1.2, 2.0<br /> √<br />Servlet 2.5<br /> √<br />EJB 3.0<br /> √<br />JAX-WS 2.1<br /> √<br />JMS 1.1<br /> √<br />JNDI 1.2<br /> √<br />JCA 1.5<br /> √<br />JTA 1.1<br /> √<br />JMX 1.2<br /> √<br />Java EE Deployment 1.2<br /> √<br />Java EE Management 1.1 <br />
    8. 8. Identity<br />Management<br />Suite<br />Business<br />Intelligence<br />Suite<br />Content<br />Management<br />Suite<br />SOA<br />Suite<br />WebCenterSuite<br />Java EE/ISVApps<br />Web<br />Services<br />EJB<br />Business<br />Logic<br />POJO<br />JSF/Servlet<br />Web 2.0<br />JMS<br />Messaging<br />JCA<br />Connectivity<br />WorkloadManagement<br />PersistenceInfrastructure<br />Protocol<br />Handling<br />Security<br />Connection<br />Pooling<br />Transactions<br />WebLogic Server InfrastructureJava EE 5, Persistence, Messaging and Web Services<br />Oracle Fusion Middleware and Oracle Applications<br />WebLogic Kernel – Reliability, Availability, Scalability, Performance<br />WebLogic Server<br />Middleware Administration Server<br />
    9. 9. WebLogic Cluster<br />JMS Server<br />JMS Server<br />JMS Server<br />JMS Server<br />WebLogic JMS ExtensionsDesigned to Scale to the Most Complex SOA Integrations<br />Messages red and grey have separate UOO<br />Unit of Order<br />Messages tagged with same Unit of Order (UOO) are processed in order<br />Stronger ordering semantics than the JMS specification<br />Unit of Work<br />Messages are grouped with a group identifier<br />Messages at final destination become available only when entire group arrives<br />Store and Forward Messaging<br />Store messages on local server and forward to remote server when available<br />Store and forward for clients to server and server to server<br />Distributed Destinations<br />All queues and topics in a cluster appear as a single logical destination to clients<br />Provides high availability and scalability; parallel processing and load balancing<br />1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />MDB 2<br />MDB 3<br />MDB 1<br />Message 3/4 not processed until 1/2 processed<br />MDB 1<br />1<br />MDB 3<br />Producer<br />2<br />2<br />3<br />1<br />MDB 2<br />3<br />WebLogic<br />WebLogic<br />Forward when Target Available<br />JMS Server<br />JMS Server<br />Client<br />Logical<br />Destination<br />
    10. 10. Running on the World’s Fastest Java VM<br />Complete implementation of Java <br />100% compatible with the Java SE and ”bug compatible” with the Sun Java implementation<br />Underpins Oracle Fusion Middleware product stack<br />One-stop shop for support issues<br />Optimized stack<br />Architected and optimized for server-side Java<br />High Performance<br />Typical benefit is ~20% over Sun Java VM based on benchmarking<br />Customer feedback & surveys<br />* Oracle JRockit has been used for all world record SPECjbb2005 publications since Q2 2006. Best results based on Sun, JRockit and IBM as of September 8, 2008 are (bops/bops per JVM): Sun Fire E25K (2105264/29240), SGI Altix 4700 (5180451/80945), IBM Power 595 (3435485/107359). For full details see http://wws.spec.org. SPEC and SPECjbb2005 are trademarks of Standard Performance Evaluation Corporation.<br />
    11. 11. With Near Zero Application Pause TimesJRockit Real Time<br />Traditional Java VM – Stop the World Pauses<br />Guaranteed maximum response times<br />Java EE applications consistently under 100ms pause times<br />Java SE tuned can be single-digit ms pause times<br />Deterministic QoS under heavy load<br />No code re-writes<br />Remove weeks of tuning with simple declarative setting<br />Deterministic setting<br />Pause time target<br />JRockit - < 10 ms Pause<br />
    12. 12. Device<br />View<br />Controller<br />Model<br />Application Development FrameworkMVC Development Framework<br /><ul><li>Device & Browser Adaptation
    13. 13. JSF Components
    14. 14. Ajax & DHTML
    15. 15. Flash
    16. 16. JSF Page Flow
    17. 17. JSR 227 Data Binding
    18. 18. O-R Mapping
    19. 19. EJB 3, JPA</li></li></ul><li>WebLogic Server Diagnostics<br />WebLogic Diagnostics Framework<br />Built into the server<br />Real time diagnostisics for administrators<br />Generate diagnostics dumps when thresholds exceeded<br />Rich client-side UI (JFC/Swing)‏<br />JRockit Mission Control<br />JVM diagnostics for JRockit JVM<br />Targeted at production environments for developers<br />Application Diagnostics for Java<br />Diagnostics for non-JRockit JVMs<br />Targeted at production environments for developers and administrators<br />
    20. 20. Web services<br />Web services<br />Oracle Coherence Data Grid<br />Provides a reliable data tier with a single, consistent view of data<br />Independent of yet integrated with database and application server<br />Enables dynamic data capacity including fault tolerance and load balancing<br />Ensures that data capacity scales with processing capacity<br />Enterprise Applications<br />Real Time Clients<br />Data Services<br />Oracle CoherenceData Grid<br />Mainframes<br />Databases<br />
    21. 21. C++, .NET, Word, Excel, Visual Basic …<br />App Machines<br />Java Applications<br />Java/JEE Container<br />Application<br />Coherence Client<br />Coherence (Java)‏<br />Coherence (Java)‏<br />Named Cache<br />Named Cache<br />Scaling WebLogic with CoherenceArbritrary Clients – Java, .NET, C++<br />WebLogic Machines<br />App Machines<br />WebLogic Cluster<br />Applications<br />Managed WLS<br />Managed WLS<br />.NET, C++<br />Application<br />Application<br />Application<br />Coherence Client<br />Coherence Client<br />Coherence Extend<br />Coherence (Java)‏<br />Coherence (Java)‏<br />Coherence (Java)‏<br />Named Cache<br />Named Cache<br />Named Cache<br />Cache Store<br />Cache Store<br />Cache Store<br />Cache Store<br />Cache Store<br />Cluster Service<br />Synchronous/Asynchronous<br />Synchronous/Asynchronous<br />
    22. 22. Agenda<br />Introduction to the Oracle WebLogic Server 11g<br />Migration Process overview<br />Migrating from iAS 10g<br />SmartUpgrade utility introduction<br />SmartUpgrade Demo<br />Migrating from other JEE application servers<br />Understanding potential caveats<br />Using WebLogic classloader mechanism to isolate application<br />Shared libraries overview<br />Migrating Oracle Fusion Middleware components (Forms&Reports, ADF, SOA etc)<br />Summary<br />Q&A<br />
    23. 23. Migration To Oracle WebLogic Server 11g<br />First make sure you understand the WebLogic Server architecture and topology<br />Analyze your current installation and create target WebLogic environment (domain(s), instances, clusters, datasources etc.)<br />Migrate your application<br />Deploy the application on WebLogic Server<br />Test, tune, make necessary adjustments... <br />
    24. 24. Oracle WebLogic Server 11g Topology<br />Admin Server<br />config.xml<br />Managed Servers<br />Admin Console<br />
    25. 25. Some important facts about WebLogic topology...<br />A Weblogic Server instance is always part of a Weblogic Server Domain (no standalone instances)<br />A Weblogic Server Domain is managed, configured, and monitored by an Administration Server<br />A Weblogic Server installation can be used to configure multiple domains<br />A Weblogic Server instance always runs as a single Java VM process<br />A Weblogic Server instance by default uses only one single port (7001) for all type of requests<br />A Weblogic Server instance does not support AJP, only pure HTTP<br />
    26. 26. Agenda<br />Introduction to the Oracle WebLogic Server 11g<br />Migration Process overview<br />Migrating from iAS 10g<br />SmartUpgrade utility introduction<br />SmartUpgrade Demo<br />Migrating from other JEE application servers<br />Understanding potential caveats<br />Using WebLogic classloader mechanism to isolate application<br />Shared libraries overview<br />Migrating Oracle Fusion Middleware components (Forms&Reports, ADF, SOA etc)<br />Summary<br />Q&A<br />
    27. 27. Oracle Strategy for custom Java EE Applications<br />Comprehensive Documentation<br />OC4J to WLS Upgrade White Paper – Available under NDA<br />Upgrade Guide for Java EE – With OFM 11gR1 release<br />WebLogic SmartUpgrade<br />Enables OC4J customers to systematically upgrade their custom Java EE applications to WebLogic Server<br />Professional Services Offerings<br />ISV Migration Center<br />Oracle Consulting<br />Oracle Partners<br />
    28. 28. Identity<br />Management<br />Suite<br />Business<br />Intelligence<br />Suite<br />Content<br />Management<br />Suite<br />SOA<br />Suite<br />WebCenterSuite<br />Java EE/ISVApps<br />Security<br />Diagnostics<br />MDS<br />TopLink<br />ADF<br />JMX Framewrk<br />…<br />Java Required Files<br />OC4J Features available in WebLogicJava Required Files<br />Oracle Fusion Middleware and Oracle Applications<br />WebLogic Server/WebSphere/JBoss<br />
    29. 29. Custom Java EE Application Upgrade<br />Oracle Documentation<br />WebLogic SmartUpgrade<br />
    30. 30. OC4J vs WebLogic - Topology Comparison<br />
    31. 31. Agenda<br />Introduction to the Oracle WebLogic Server 11g<br />Migration Process overview<br />Migrating from iAS 10g<br />SmartUpgrade utility introduction<br />SmartUpgrade Demo<br />Migrating from other JEE application servers<br />Understanding potential caveats<br />Using WebLogic classloader mechanism to isolate application<br />Shared libraries overview<br />Migrating Oracle Fusion Middleware components (Forms&Reports, ADF, SOA etc)<br />Summary<br />Q&A<br />
    32. 32. WebLogic SmartUpgrade Design<br />JDeveloper Interface<br />- Enhanced Findings Management<br />Command Line Interface<br />Application Artifacts<br />Report<br /> - Findings<br /> - Scoping Metrics<br />JDev Project<br />JDev Project<br />Generates<br />Input To<br />Analysis Engine<br />Code Analysis<br /> - JSP<br /> - Java<br />Container Config. Analysis<br />PDD Analysis<br />JAR, WAR, or EAR<br />Generates<br />WebLogic PDDs<br />Source Directory<br />Uses<br />Knowledge Base<br />Container Configuration<br />PDD Rules<br />Code Rules<br />Container Config. Rules<br />OC4J JEE Instances<br />
    33. 33. WebLogic SmartUpgrade MethodologyApplication Level<br />2. Compare metrics <br />against previous runstrack to project benchmarks<br />1. (Re-) Run findings report<br />3. Analyze findings <br />Iterative<br />upgrade<br />methodology<br />managed<br />by upgrade<br />metrics<br />OC4J Application & OC4J Container Configuration<br />WebLogic Applicationand WebLogic Configuration<br />6. Take action onnon-automatedfindings andupdate project<br />4. Archive findings for<br />comparison afterchanges applied<br />5 Accept findings<br />code/PDD/script<br />generation<br />
    34. 34. WebLogic SmartUpgrade Knowledge Base - Categories<br /><ul><li>api
    35. 35. Application code is importing APIs which fall within any of the following categories
    36. 36. Public Oracle APIs
    37. 37. Private Oracle APIs
    38. 38. Known 3rd Party APIs
    39. 39. classloading, cluster, data-source, ejb, jca, jms, jmx, jndi, jsp, jta, rmi, security, web, web-services
    40. 40. Application and OC4J instance configuration targeted knowledge</li></li></ul><li>SmartUpgrade JDeveloper Interface<br />
    41. 41. Agenda<br />Introduction to the Oracle WebLogic Server 11g<br />Migration Process overview<br />Migrating from iAS 10g<br />SmartUpgrade utility introduction<br />SmartUpgrade Demo<br />Migrating from other JEE application servers<br />Understanding potential caveats<br />Using WebLogic classloader mechanism to isolate application<br />Shared libraries overview<br />Migrating Oracle Fusion Middleware components (Forms&Reports, ADF, SOA etc)<br />Summary<br />Q&A<br />
    42. 42. SmartUpgrade Demo<br />
    43. 43. Agenda<br />Introduction to the Oracle WebLogic Server 11g<br />Migration Process overview<br />Migrating from iAS 10g<br />SmartUpgrade utility introduction<br />SmartUpgrade Demo<br />Migrating from other JEE application servers<br />Understanding potential caveats<br />Using WebLogic classloader mechanism to isolate application<br />Shared libraries overview<br />Migrating Oracle Fusion Middleware components (Forms&Reports, ADF, SOA etc)<br />Summary<br />Q&A<br />
    44. 44. Migrating JEE application to WebLogic<br />Analize your application<br />uses EJBs, what version?<br />uses JMS, MDBs?<br />uses third-party libraries (e.g. Hibernate, Spring, etc.)?<br />uses vendor-specific APIs (e.g. JBoss Cache)?<br />Create WebLogic-specific deployment descriptors:<br />weblogic.xml<br />weblogic-ejb-jar.xml<br />weblogic-ra.xml<br />weblogic-application.xml<br />Try deploying your application...<br />
    45. 45. Agenda<br />Introduction to the Oracle WebLogic Server 11g<br />Migration Process overview<br />Migrating from iAS 10g<br />SmartUpgrade utility introduction<br />SmartUpgrade Demo<br />Migrating from other JEE application servers<br />Understanding potential caveats<br />Using WebLogic classloader mechanism to isolate application<br />Shared libraries overview<br />Migrating Oracle Fusion Middleware components (Forms&Reports, ADF, SOA etc)<br />Summary<br />Q&A<br />
    46. 46. Migrating JEE application to WebLogicthings to remember <br />Always make EAR archive – you gain much more configuration options<br />Identify any third-party libraries and package them into the EAR archive (/lib or /APP-INF/lib)...<br />... or deploy them as shared libraries and reference from your application<br />Set filtering classloader to isolate your application classes (solves most of the ClassNotFoundException problems)<br />
    47. 47. Migrating JEE application to WebLogicthings to remember cont.<br />If you encounter NullPointerException related to <br />getServletContext().getRealPath(<resource>)<br />set the following option:<br /><Web module>.war<br />WEB-INF<br />weblogic.xml<br /> <container-descriptor><br /> <show-archived-real-path-enabled>true</show-archived-real-path-enabled><br /> </container-descriptor><br />
    48. 48. Agenda<br />Introduction to the Oracle WebLogic Server 11g<br />Migration Process overview<br />Migrating from iAS 10g<br />SmartUpgrade utility introduction<br />SmartUpgrade Demo<br />Migrating from other JEE application servers<br />Understanding potential caveats<br />Using WebLogic classloader mechanism to isolate application<br />Shared libraries overview<br />Migrating Oracle Fusion Middleware components (Forms&Reports, ADF, SOA etc)<br />Summary<br />Q&A<br />
    49. 49. How Java loads classes<br />
    50. 50. Class Loading in JEE <br />Applications e.g. .ear’s run each have their own Class Loaders which are usually children of the System Class Loaders<br />Closely related to deployment architecture<br />Why? Among the many reasons:<br />Needed to support dynamic redeployment<br />Application isolation e.g. different version of Log4J in app1.ear and app2.ear<br />
    51. 51. Example of classloader hierarchy in WebLogic Server<br />System Class Loader<br />WebLogic Server<br />App1<br />App2<br />myejb1.jar myeb2.jar<br />myejb3.jar <br />mywar1.war<br />mywar2.war<br />mywar3.war<br />
    52. 52. Does not load classes. Prevents classes from being loaded from system if they match the filter-list<br />Filtering<br />(filter-list barrier)<br />Loads classes in EARs and any libraries referenced by the EAR<br />lib/*.jar, <br />APP-INF/classes/**.class, <br />APP-INF/lib/*.jar<br />MANIFEST classpath<br />Application<br />(EAR application & EAR library classes )<br />Module <br /> Loader <br />Module <br /> Loader <br />Module <br /> Loader <br />...<br />
    53. 53. WEB-INF/classes/**.class, <br />WEB-INF/lib/*.jar<br />MANIFEST Classpath<br />Web Application<br />(webapp & webapp-library classes )<br />All tag files are loaded in their own classloader to enable refresh<br />Tag<br />(tag files – WEB-INF/tags/*.tag etc.)<br />Each JSP is loaded in its own classloader to enable refresh<br />JSP <br />JSP <br />JSP <br />
    54. 54. Filtering Classloader<br />Load classes from application first (changes the delegation)<br />Works as a barrier. <br />Does not load classes itself.<br />prefer-application-packages can be configured at the application level.<br />Can be used in scenarios where application needs to use a different version of a framework already bundled with the server (e.g. log4j, spring, xml parsers etc)<br />
    55. 55. Filtering Classloader - configuration<br /><Application archive>.ear<br />META-INF<br />application.xml<br />weblogic-application.xml:<br /><prefer-application-packages><br /> <package-name>org.apache.log4j.*</package-name><br /> <package-name>org.aspectj.*</package-name><br /> <package-name>org.springframework.*</package-name><br /> <package-name>org.apache.commons.*</package-name><br /> <package-name>antlr.*</package-name> <br /> </prefer-application-packages><br />
    56. 56. Agenda<br />Introduction to the Oracle WebLogic Server 11g<br />Migration Process overview<br />Migrating from iAS 10g<br />SmartUpgrade utility introduction<br />SmartUpgrade Demo<br />Migrating from other JEE application servers<br />Understanding potential caveats<br />Using WebLogic classloader mechanism to isolate application<br />Shared libraries overview<br />Migrating Oracle Fusion Middleware components (Forms&Reports, ADF, SOA etc)<br />Summary<br />Q&A<br />
    57. 57. Now for Some Complexity…<br />Shared Libraries used extensively by Oracle Applications<br />JRF, ADF, APPLCORE, etc<br />Reuse Classpath definitions and jar files<br />Includes a version scheme<br />E.g. Log4J 1.0.4<br />Applications explicitly declare a dependency on shared libraries<br />Understanding Shared Libraries is critical to avoiding Class Loader related issues<br />
    58. 58. Major Differences Between WLS and OC4J Shared Libraries<br />WLS does not offer a hierarchical deployment model<br />OC4J Shared Libraries run in their OWN Class Loaders<br />Reduced footprint<br />Only JARs supported<br />Classes in Shared Libraries resolved via search policy<br />WLS Shared Libraries EXPORTS the classpath to the importing application<br />Supports .ear, .wars and .jars<br />Merges Deployment Descriptors into the importing application<br />Scope is controlled by the scope of the reference<br />weblogic-application.xml vs weblogic.xml<br />
    59. 59. Application shared libraries<br />App-lib.ear<br />App-1.ear<br />App-2.ear<br />my-web-1.war<br />my-web-3.war<br />my-web-2.war<br />my-ejb-1.jar<br />my-ejb-2.jar<br />Deployment view<br />Runtime view<br />App-1.ear<br />App-2.ear<br />my-web-1.war<br />my-web-2.war<br />my-ejb-1.jar<br />my-ejb-2.jar<br />my-web-3.war<br />my-web-3.war<br />
    60. 60. Webapp shared libraries<br />webapp-1.war<br />WEB-INF/web.xml<br />WEB-INF/lib/x.jar<br />foo.jsp<br />bar.jsp<br />webapp-1.war<br />WEB-INF/web.xml*<br />WEB-INF/lib/x.jar<br />WEB-INF/lib/y.jar<br />foo.jsp<br />bar.jsp<br />a.jsp<br />b.html<br />WEB-INF/web.xml<br />WEB-INF/lib/y.jar<br />a.jsp<br />b.html<br />Runtime view<br />Deployment view<br />webapp-lib.war<br />
    61. 61. Jar libraries<br />App-1.ear<br />my-web-1.war<br />library.jar<br />my-web-2.war<br />my-ejb-1.jar<br />Jar files and Jar libraries can be referenced from applications (EAR, WAR, JAR) via MANIFEST classpath or descriptors.<br />
    62. 62. Shared library - configuration<br /><Application archive>.ear<br />META-INF<br />application.xml<br />weblogic-application.xml:<br /> ...<br /> <library-ref><br /> <library-name>adf.oracle.domain</library-name><br /> <specification-version>11.1.1.2</specification-version><br /> </library-ref><br />...<br />
    63. 63. Agenda<br />Introduction to the Oracle WebLogic Server 11g<br />Migration Process overview<br />Migrating from iAS 10g<br />SmartUpgrade utility introduction<br />SmartUpgrade Demo<br />Migrating from other JEE application servers<br />Understanding potential caveats<br />Using WebLogic classloader mechanism to isolate application<br />Shared libraries overview<br />Migrating Oracle Fusion Middleware components (Forms&Reports, ADF, SOA etc)<br />Summary<br />Q&A<br />
    64. 64. JDeveloper Upgrade Wizards forSOA, WebCenter, and ADF Application Upgrades<br />Oracle FMW Upgrade Tools <br />WebLogic SmartUpgradefor Upgrade of OC4J Java Applications and Environments to WebLogic Server<br />Upgrade Assistant forSOA, IDM, Forms, Reports, Discoverer, and Portal Environment Upgrades<br />
    65. 65. Questions & Answers<br />
    66. 66. Please don’t hesitate to contact me<br />or Ruxandra Radulescu for any questions<br />regarding migration projects<br />lukasz.romaszewski@oracle.com<br />ruxandra.radulescu@oracle.com<br />
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×