BPEL Development with ActiveBPEL - PowerPoint PPT Presentation

1 / 30
About This Presentation
Title:

BPEL Development with ActiveBPEL

Description:

... wizard instructions, creating a new WSDL file in ... http://www-128.ibm.com/developerworks/library/specification/ws-bpel/ More on BPEL: next Tuesday in class ... – PowerPoint PPT presentation

Number of Views:135
Avg rating:3.0/5.0
Slides: 31
Provided by: Bren195
Category:

less

Transcript and Presenter's Notes

Title: BPEL Development with ActiveBPEL


1
BPEL Development with ActiveBPEL
  • Brendan Tansey

2
What is BPEL?
  • Business Process Execution Language for Web
    Services (BPEL4WS)
  • Web service orchestration language
  • Simple arithmetic and logical operators
  • Lecture on Oct 26th!

3
BPEL Development
  • Requires
  • BPEL Engine
  • BPEL Developer (or text editor, for the
    masochistic)
  • BPEL Engine
  • Executes BPEL processes
  • IBM BPWS4J
  • ActiveBPEL Engine
  • Installation notes on Wiki

4
BPEL Developer
  • Oracle BPEL Designer
  • Oracle BPEL Process Manager (OC4J, JBOSS, BEA
    WebLogic)
  • Eclipse BPEL Project
  • Parasoft BPEL Maestro
  • Intalio Designer
  • Many others

5
ActiveBPEL Designer
  • Construct graphical workflows
  • Assist with WSDL creation
  • Simulate workflow execution
  • Prepare service for deployment
  • Deploy service to ActiveBPEL server
  • Eclipse-based
  • Makes your life easier

6
ActiveBPEL Designer Cons
  • Windows-only
  • Windows lab in CSC 1-67
  • Go to CSC 1-43 to get an account
  • Install onto network drive
  • Make workspace on network drive
  • Quirky
  • Hence, presentation

7
ActiveBPEL Designer Demo
  • Create a simple web service that adds 4 input
    numbers
  • Uses an existing web service
  • Takes 4 numbers as input a,b,c,d
  • Returns two sums as output ab, cd
  • Create client for service

8
Live Demo! (with slides)
Using an external web service to add four numbers
9
Create project/BPEL
Add external web references
10
Create sequence
  • Drag Sequence from palette
  • In sequence, insert Operation Wizard
  • Follow wizard instructions, creating a new WSDL
    file in your current project
  • Refresh project so new WSDL is visible

11
Create service instance
  • Force first element of sequence to create a new
    instance

12
Using external services
  • Add WSDLs as imports

13
Using external services
  • Create input and output variables for services

14
Create assignment activity
  • Assign our services input to input for other
    service

15
Invoke web service
  • Create invoke activity with Operation Wizard
  • Select local copy of remote WSDL (cant use
    remote copy buggy)
  • Choose port type and operation
  • Create new PLT
  • Add to existing WSDL (buggy)

16
Assign service output
  • Use built-in arithmetic operator

17
Simulating execution
18
Providing sample input
19
Error!
  • Need to initialize complex types before using
  • Initialize with literals.

ltin0 xmlns"" xmlnsdef"http//siffleur.cs.ualber
ta.ca9999/axis/services/AddFunction1Service"
xmlnsxsi"http//www.w3.org/2001/XMLSchema-instan
ce" xsitype"defComplex"gt lti
xmlnstns"Sum4WSDL" xmlnsxsd"http//www.w3.org/
2001/XMLSchema" xmlnsxsi"http//www.w3.org/2001/
XMLSchema-instance" xsitype"xsddouble"gt0.0lt/igt
ltr xmlnstns"Sum4WSDL" xmlnsxsd"http//www
.w3.org/2001/XMLSchema" xmlnsxsi"http//www.w3.o
rg/2001/XMLSchema-instance" xsitype"xsddouble"gt
0.0lt/rgt lt/in0gt
  • Red Invoked services namespace
  • Green Your services namespace
  • Yellow Variable type element types
  • Magenta Variable structure

20
Creating complex responses
lt?xml version"1.0" encoding"UTF-8"?gt ltns1addCom
plexReturn xmlnsns1"urnBeanService"gt ltigt4.2lt/i
gt ltrgt5.7lt/rgt lt/ns1addComplexReturngt
21
Successful simulation
Can now examine output variable
22
Deploying your service
  • The ActiveBPEL Engine requires that all services
    are packaged into .bpr files.
  • These packages need deployment descriptors and
    manifests
  • These files need to be placed in the Tomcat/bpr
    directory
  • Or, deployed through ActiveBPEL Designer (easiest)

23
Creating a Deployment Descriptor
24
Finish deployment
Change Deployment URL to Match ActiveBPEL Engine
installation
Binding must be set to RPC Encoded
25
Creating a client
  • See sample code on Wiki
  • String endpoint URL of service
  • URL can be found in Axis servlet
  • call.setOperationName(new QName(,ltprocessNamegt
    )
  • ltprocessNamegt from BPEL Admin Console

26
Engine admin client
  • http//siffleur.cs.ualberta.ca9999/active-bpel/
  • Can conflict with other Tomcat applications.
    Errors in the admin client are likely caused by
    this.
  • Can view process graph for deployed services
    online

27
Tips
  • If working from home, authenticate to
    access.cs.ualberta.ca to access non-standard
    remote ports.
  • When creating an invoke activity, copy remote
    WSDL to local project in order to use it. Local
    copy also needs to be added to web references.

28
More tips
  • Invoke creation wizard is buggy. If you cant
    select your WSDL, click Create new then back
    to Use existing .
  • Remember the when creating static endpoints.
  • There is more than one way to accomplish most
    things in ActiveBPEL.

29
Yet more tips
  • If an import isnt being read correctly, remove
    it and re-add it.
  • If properties give errors when they should work,
    check imports, then re-select each value

30
References
  • ActiveBPEL documentation http//www.activebpel.or
    g/docs/index.html
  • BPEL v1.1 Specifications http//www-128.ibm.com/d
    eveloperworks/library/specification/ws-bpel/
  • More on BPEL next Tuesday in class
Write a Comment
User Comments (0)
About PowerShow.com