This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 90675 - Add Virtual assign support to mapper
Summary: Add Virtual assign support to mapper
Status: RESOLVED INVALID
Alias: None
Product: soa
Classification: Unclassified
Component: BPEL (show other bugs)
Version: 6.x
Hardware: All All
: P2 blocker (vote)
Assignee: Alexey Anjeleevich
URL: http://xdesign-tools.czech.sun.com:80...
Keywords: UI
Depends on:
Blocks: 90087
  Show dependency tree
 
Reported: 2006-12-06 16:03 UTC by Michael Frisino
Modified: 2008-05-06 15:10 UTC (History)
2 users (show)

See Also:
Issue Type: ENHANCEMENT
Exception Reporter:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Michael Frisino 2006-12-06 16:03:51 UTC
Now that runtime is supporting BPEL construct known as virtual assigns, we
should have same support in Design view.

Basically this means adding some properties for FromPart and ToPart virtual
assignments to the various web service activities. 

I will document details in wiki.
Comment 1 Michael Frisino 2006-12-06 16:07:26 UTC
This issue is for tracking the implementation of the virtual assign support that
must be supported by the mapper. 
Comment 2 Michael Frisino 2006-12-07 15:56:58 UTC
I have completed the functional spec for Virtual Assign.

It is ready for peer and useability review.
Comment 3 Michael Frisino 2007-01-24 15:36:04 UTC
OOS for 5.5.1. Too complicated and resources are needed on XSLT effort.
Comment 4 Nikita Krjukov 2007-06-09 16:14:15 UTC
Alexey Anjeleevich is going to implement it
Comment 5 Alexey Anjeleevich 2007-06-22 17:43:55 UTC
Virtual Assign will be implemented as table in custom editors for Invoke, Reply, Receive etc. 
This not mapper feature so I changed subcomponent. 


Comment 6 Alexey Anjeleevich 2007-06-26 14:16:00 UTC
What is Virtual Assign?

BPEL process can send and receive data (messages). 
Message contains one or more parts.
When BPEL process receives message, message is copied to message type variable specified by user (attribute variable of
Receive activity or attribute outputVariable of Invoke). When bpel process sends message, bpel engine gets data from
message type variable.
 
Virtual assign allows to copy parts of message to several variables (element <FromParts>), and allows to assemble
message from several variables (element <ToParts>, one variable for every message part, varaible type shoud be the same
as part type). So virtual assign in fact is map of message_parts-variables.

To implement virtual assign mapping tables were added to custom editors of Invoke, Reply, Receive, Pick/OnMessage. Table 
goes together with variable field and contains two columns (FromVariable/ToPart or FromPart/ToVariable). Also radio
buttons were added they allow to choose what should be used: one variable for message or several variables for every
part (variable text field or table). 

For more details please see section "10.3.1. Mapping WSDL Message Parts" in BPEL specification
http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html

Virtual assign for EventHandlers/OnEvent is not yet implemented


How to specify mapping between variables and parts in Receive?

1. Select Receive activity
2. Invoke receive custom editor by double click on activity or from proprty sheet.
3. Select correct partnerlink and operation.
4. Select FromParts radio button: variable-part mapping table will be enabled and input variable field and corresponding
buttons will be disabled
5. Table in FromParts column contains all parts of input message of selected operation.
6. Click on table row, ToVariable column, or select row and press enter. Variable chooser will be shown. By default 
filter "Show variables of approptiate type only" activated.
7. Choose variable, press ok.
8. Name of selected variable will be shown in "ToVariable" column.
9. Press ok. Custom editor will be closed and changes applyed.
10. Switch to sources: receive contains element FromParts with inner element <FromPart part="..." toVariable="<selected
variable here">, receive will not have varible attribute

Similar scenarios should produce good bpel also for Invoke, Reply (Normal response and fault response), Pick/OnMessage.



Comment 7 Sergey Lunegov 2007-07-13 05:19:03 UTC
This functionality is not implemented on runtime side.
So this feature will be implemented later.
Comment 8 Alexey Anjeleevich 2007-07-18 19:00:30 UTC
Reverted modifications. Virtaul assign UI is removed.
Comment 9 Kirill Sorokin 2008-05-06 15:10:06 UTC
It was decided that mapper will not be used for virtual assigns. A customizer will be implemented to cover this use case.