15
The End of the Beginning: Deploying Applications to WebLogic Server Using JDeveloper and WLS Console Peter Koletzke Technical Director & Principal Instructor Co-author: Duncan Mills, Oracle 2 Don’t get it right, just get it written. —James Thurber, The Sheep in Wolf’s Clothing; Fables for our Time Moral 3 Agenda • Deployment concepts • JDeveloper support • Deploying from WLS Console The white paper contains hands-on practices (11g). 12c practice on Quovera website. Slides and white paper will be on the UTOUG and Quovera websites. 4 Deployment Concepts Deployment: copying and installing application files to a runtime environment Development, testing, QA, production Occurs multiple times for an app Bug fixes, enhancements, software updates You may be responsible So you, as a developer, need to know this Someone else may be responsible So you need to provide the right files to deploy Testing those files beforehand is useful

The End of the Beginning: Deploying Applications to ...Days... · Deploying Applications to WebLogic Server ... . 12c practice on Quovera ... The End of the Beginning: Deploying Applications

  • Upload
    vonhan

  • View
    228

  • Download
    2

Embed Size (px)

Citation preview

Page 1: The End of the Beginning: Deploying Applications to ...Days... · Deploying Applications to WebLogic Server ... . 12c practice on Quovera ... The End of the Beginning: Deploying Applications

The End of the Beginning:Deploying Applications to

WebLogic Server Using JDeveloper and

WLS ConsolePeter Koletzke

Technical Director & Principal Instructor

Co-author: Duncan Mills, Oracle

2

Don’t get it right, just get it written.

—James Thurber, The Sheep in Wolf’s Clothing;

Fables for our Time

Moral

3

Agenda

• Deployment concepts

• JDeveloper support

• Deploying from WLS Console

The white paper contains hands-on

practices (11g). 12c practice on Quovera

website.

Slides and white paper will be on the

UTOUG and Quovera websites.

4

Deployment Concepts• Deployment: copying and installing application

files to a runtime environment– Development, testing, QA, production– Occurs multiple times for an app

• Bug fixes, enhancements, software updates

• You may be responsible– So you, as a developer, need to know this

• Someone else may be responsible– So you need to provide the

right files to deploy– Testing those files beforehand is useful

Page 2: The End of the Beginning: Deploying Applications to ...Days... · Deploying Applications to WebLogic Server ... . 12c practice on Quovera ... The End of the Beginning: Deploying Applications

5

Preparation for Deployment• Development and testing complete• Required libraries and supporting files are

identified• Application server is available

– Has an appropriate web container (JVM) process• For example, WebLogic Server

– You know the server admin password• Or know someone who knows• Needed to copy files to the server

6

Deployment Objectives• Ensure that all required libraries are available

– Development and deployment library versions should match

• All necessary JDeveloper projects must be deployed– Model, ViewController– ADF Libraries (usually bundled in the EAR)

• Files must be archived into speciallyformatted Java EE JAR files– WAR or EAR (if more than one app)– ADF Library JARs

7

Enterprise Application Archive (EAR)• Contains one or more WAR (application) files

and other libraries that are required• A file you deploy• Copies to the app server directory:

FMW_HOME>\user_projects\domains – App server processes new EAR files when

restarting– Can also process EAR files without restarting

• The app server expands this into its WAR files– Each WAR file goes into a directory

corresponding to its name– Then it expands the WAR files

8

Sample EAR File

• One app (WAR) file in this case• Several XML configuration files

JDeveloper Archive Viewer

Page 3: The End of the Beginning: Deploying Applications to ...Days... · Deploying Applications to WebLogic Server ... . 12c practice on Quovera ... The End of the Beginning: Deploying Applications

9

Web Application Archive (WAR)• Also called, Web Archive• Can alternatively be deployed without

an EAR• Contains all files required for an application• Contains files or directories inside WEB-INF

(the main runtime directory)• Copied to server and expanded

into separate files by the server– Inside a directory named

the same as the WAR file

10

Sample WAR File• App server

extracts files into the ../<app>/ directory– <app> is the

name of the WAR file

11

Deployed Directory Structures• FMW_Home

– Fusion Middleware• Domain

– Created using the Configuration Wizard

• WAR file and app files under this level– App root here

• EAR file here

12

Agenda

• Deployment concepts

• JDeveloper support

• Deploying from WLS Console

Examples use WLS 11g.(12c is different.)

Page 4: The End of the Beginning: Deploying Applications to ...Days... · Deploying Applications to WebLogic Server ... . 12c practice on Quovera ... The End of the Beginning: Deploying Applications

13

However beautiful the strategy,you should occasionally

look at the results.

—Winston Churchill (1874–1965)

Yes, Let’s

14

Two Big Steps1. Prepare the deployment profiles for

the WAR and EAR files– Specify what to deploy

• Model and ViewController projects• Required libraries

2. Deploy using the deployment profile– This creates the WAR and EAR– It also copies the EAR to the

server

15

Testing in Standalone WebLogic• Between running the app in JDeveloper

and deploying to the server run this test• You need to set up the WLS domain

– WLS is part of Oracle Fusion Middleware– Installed with JDeveloper – can be run as a

standalone server• Ensure that the versions

are compatible– WLS version – Application development runtime

16

Deployment Profiles• Embedded in the .jws and .jpr files• Access from Application /

Project properties, or from the New Gallery (context sensitive)

• Default EAR and WAR profiles are pre-created with the Fusion App template

• Create separate deployment profiles for separate purposes – multiple targets, etc.

Demo

Page 5: The End of the Beginning: Deploying Applications to ...Days... · Deploying Applications to WebLogic Server ... . 12c practice on Quovera ... The End of the Beginning: Deploying Applications

17

WAR Deployment Profile

• Also accessible in the Deployment page of Project Properties

• Or in the New Gallery

If this exists,skip to “Application

Menu – Deploy”

Project context menu

18

New Gallery

• Double click “WAR File”

19

Create WAR Deployment Profile

• Enter a name and click OK

20

WAR Deployment Profile Wizard

Change the context root here (or in Project Properties – Java EE Application).

Other defaults should work.

Page 6: The End of the Beginning: Deploying Applications to ...Days... · Deploying Applications to WebLogic Server ... . 12c practice on Quovera ... The End of the Beginning: Deploying Applications

21

Project Properties

New profile

22

EAR Deployment Profile

• Fusion App template and others creates this– For those, skip to “Preparation Steps.”

Application menu

23

New Gallery – EAR File

• Double click “EAR File”24

Create EAR Deployment Profile

• Enter the name and click OK• Defaults OK

Page 7: The End of the Beginning: Deploying Applications to ...Days... · Deploying Applications to WebLogic Server ... . 12c practice on Quovera ... The End of the Beginning: Deploying Applications

25

EAR Deployment Profile Properties

• Application Assembly Page– Select WAR deployment profile

26

Application Properties

• View this later in the Application menu (Application Properties)

New profile

27

Preparation Steps• WLS domain is set up and running

– See hands-on practice for those steps• Application menu | Application Properties |

Deployment | Edit– Application Assembly – Check Model

• For applications with Model projects– Confirm that auto-generation and sync of JDBC

descriptors is set– Application menu | Application Properties |

Deployment \ WebLogic28

JDBC Descriptor Deployment

• Select for JDev deployment• Deselect for WLS console EAR

assembly

Page 8: The End of the Beginning: Deploying Applications to ...Days... · Deploying Applications to WebLogic Server ... . 12c practice on Quovera ... The End of the Beginning: Deploying Applications

29

Deploying From JDeveloper• Application menu | Deploy | <EAR profile>

– Local App Server

Select the EAR deployment profile

30

Deployment Target = Server

31

Select Server

• Click “+” (green plus) to add a connection if needed

32

Define the Server Connection

• Step 2 - password– From the Configuration Wizard

Page 9: The End of the Beginning: Deploying Applications to ...Days... · Deploying Applications to WebLogic Server ... . 12c practice on Quovera ... The End of the Beginning: Deploying Applications

33

Server Details

• Weblogic Domain from the Configuration Wizard

34

Test

• Be sure the server is running• Finish

35

Select the New Connection

• Finish & Test36

What Next?• Wait and watch

– JDeveloper builds the WAR and EAR files in the project directory

– Then it copies the EAR file to the server instance

– Message log window will show progress

Page 10: The End of the Beginning: Deploying Applications to ...Days... · Deploying Applications to WebLogic Server ... . 12c practice on Quovera ... The End of the Beginning: Deploying Applications

37

Deployment Log Window

• The Log window usually appears in the bottom of the JDeveloper IDE window

38

Test the Application

• Close JDeveloper if you are skeptical• In browser, run the application URL

– In this case:http://localhost:7001/tuhra2– This opens the default page

“welcome file” defined in web.xml

• Test the app

39

Application Server Navigator• Lists available servers• Shows deployed apps• Allows new server

creation• You can act on these

using JDeveloper– Undeploy– Start Admin Console for server

Demo40

The Best of Both Worlds • OJDeploy – “Headless” JDev deployments

– Command line utility packaged with JDeveloper – Search for ojdeploy in the Help Center– Automation for pre-defined deployment profiles– Also runnable from Ant

• Manages– Packaging and deployment– JDBC data sources– Security permissions propagation– Deploying users and roles for testing

Page 11: The End of the Beginning: Deploying Applications to ...Days... · Deploying Applications to WebLogic Server ... . 12c practice on Quovera ... The End of the Beginning: Deploying Applications

41

Agenda

• Deployment concepts

• JDeveloper support

• Deploying from WLS Console

42

Deploying From WLS Console• The app server is usually under the control of

the app server administrator– (Be kind to your app server administrator)

• You need to package the EAR file and let them know where it is– Select “Deploy to <app name>” from the

Application menu

• The administrator will deploy the EAR file to a new or existing application node– Setting up the application is a

one-time task– Deploying the app after the setup is

easier than before the setup Demo

43

Configure the App Server• Results in a standalone WLS domain• Windows Start menu

– Start | Programs | Oracle Fusion Middleware 11.1.1.x | WebLogic Server 11g | Tools | Configuration Wizard

• Follow the steps in the white paper– The following assumes this is complete

and the app server is started• Note: Use the following as a guide for

deploying with JDev after 11.1.144

For Apps with Model Projects

• You do not want to deploy a data source

Deselect

Page 12: The End of the Beginning: Deploying Applications to ...Days... · Deploying Applications to WebLogic Server ... . 12c practice on Quovera ... The End of the Beginning: Deploying Applications

45

Start the Deployment

As before, select the EAR deployment

profile.

46

Deployment Target = EAR

47

Log Window

• Similar to before except this only creates the EAR file

48

Deploy EAR to the App Server• You can invoke the console from

– A URL: http://localhost:7001/console– The Application Server Navigator in JDev

• Basic steps in the console:– Drill into “Deployments”– Click the “Install” button– Find EAR file in file system and go!

• Additional common tasks – Define a data source– Deploy permissions

Page 13: The End of the Beginning: Deploying Applications to ...Days... · Deploying Applications to WebLogic Server ... . 12c practice on Quovera ... The End of the Beginning: Deploying Applications

WLS Console - Home Page

50

Data Source• Alternative to JDBC descriptor• Named resource on the server

– User ID, password, host, port, SID• Application references the name• The name is the same on development,

test, QA, and production servers– Deployments use the same EAR file

• Credentials don’t float around with the app files

51

Model Projects Need a Data Source

• One-time step• Left-hand nav bar

– Services \ Data Sourceslink

• This loads the “Summaryof JDBC Data Sources”page

52

Define The Data Source• New | Generic Data Source• Fill out properties

– Name: HR_DB– JNDI Name: jdbc/HR_DBDS– Driver: Oracle Thin XA for service connections– DB name, host, port, username, password– Test the connection; Save; it will appear here

Page 14: The End of the Beginning: Deploying Applications to ...Days... · Deploying Applications to WebLogic Server ... . 12c practice on Quovera ... The End of the Beginning: Deploying Applications

Deployments Page

Install

54

Follow the Screens

• Find the file in the file system– Select it. Click Next

Success!

Next: Open the browser and test.http://127.0.0.1:7001/login/ faces/login.jspx

56

This is not the end. It is not even the beginning

of the end. But it is, perhaps,

the end of the beginning.—Winston Churchill (1874–1965)

We’re Not Done Yet?

Page 15: The End of the Beginning: Deploying Applications to ...Days... · Deploying Applications to WebLogic Server ... . 12c practice on Quovera ... The End of the Beginning: Deploying Applications

57

Other Resources• White paper for this presentation• Oracle Fusion Middleware

Fusion Developer's Guide for Oracle Application Development Framework 11g Release 1 (11.1.1)– PDF at OTN, online in JDev– Chapter 32

• Oracle Fusion MiddlewareSecurity Guide11g Release 1– PDF at OTN

• Oracle Fusion Developer Guide– Nimphius and Munsinger,

McGraw-Hill Professional, Oracle Press (2010)

– Brief mention in Chapter 21

58

Summary• Java EE web applications are deployed to the

app server using EAR files• EAR files contain WAR files• WAR files contain application files and all

required libraries• JDeveloper’s deployment profiles help gather

the files (project level and application level)• Run a utility in JDeveloper to create the EAR

file and deploy to the app server• Alternatively, use WLS Console• Testing deployments is a best practice

59www.kscope15.com

TOPICS | Database Development Essbase Planning Financial Close Application Express Business Intelligence

ADF and Fusion Dev. EPM Business Content EPM Foundations EPM Data Management EPM Reporting

60

DesignerHandbookDesignerHandbook

DeveloperAdvancedForms &Reports

DeveloperAdvancedForms &Reports

JDeveloper 3HandbookJDeveloper 3Handbook

ORACLE9iJDeveloperHandbook

• Founded in 1995 as Millennia Vision Corp.

• Profitable without outside funding• Consultants each have 10+ years

industry experience• Strong High-Tech industry background• 200+ clients/300+ projects• JDeveloper Partner• More technical white papers and

presentations on the web site

http://www.quovera.com

ORACLEJDeveloper 10gHandbook

Please fill out the evals Books co-authored with Dr.

Paul Dorsey, Avrom Roy-Faderman, & Duncan Mills

Ch. 22