Random BPEL process generation using selected components from existing wsdl files

7 views
Skip to first unread message

Nariman Ammar

unread,
Dec 16, 2015, 6:38:05 PM12/16/15
to BPELUnit
Hello,
I would like to generate x bpel processes randomly such that the following objects are randomly added from a pool of wsdl files (e.g., the QWS dataset):
- a set of service names as partner links 
- a set of variables from the same  set of services above
- a set of operations from the same set of services above

That should create a composition in which the selected services collaborate 

I would like to generate a couple of processes then use those as input to my analysis

Is there a sample code to do that?

I was thinking of using the Import object: 

IProcess p = BpelFactory.createProcess();

p.setName("Process" + no);

p.setTargetNamespace("ProcessNamespace");

String wsdlNamespace = "http://www.example.org/service";


IImport imp = p.addImport();

imp.setImportType(IImport.IMPORTTYPE_WSDL);

imp.setLocation("testSimpleProcessSequence.wsdl");

imp.setNamespace(wsdlNamespace);


List<IDocumentation> d = (List<IDocumentation>) imp.getDocumentation();

for (IDocumentation dd:d){

List<Node> nn = dd.getDocumentationElements();

for(Node n: nn){

//TODO: get operation, variable, etc. elements

}

}

Antonio García Domínguez

unread,
Dec 17, 2015, 5:58:19 AM12/17/15
to bpel...@googlegroups.com
Hi Narimar,

As far as I know, BPELUnit doesn't have anything for random generation of BPEL processes: the BPEL model we have is pretty much "read-only".

Kind regards,
Antonio

--
Sie erhalten diese Nachricht, weil Sie in Google Groups E-Mails von der Gruppe "BPELUnit" abonniert haben.
Wenn Sie sich von dieser Gruppe abmelden und keine E-Mails mehr von dieser Gruppe erhalten möchten, senden Sie eine E-Mail an bpelunit+u...@googlegroups.com.
Weitere Optionen finden Sie unter https://groups.google.com/d/optout.

Nariman Ammar

unread,
Dec 17, 2015, 9:25:12 AM12/17/15
to BPELUnit
I was actually referring to BPELUnit/net.bpelunit.model.bpel project in particular. The code snippets below are from the test files in that project. So, I believe it is not read only. 
It just seems to me that you cannot link an invoke for example to an operation that belongs to a partner link. In other words it is not a hierarchy. You just add bpel objects without associating them with the right parent. 

Daniel Lübke

unread,
Dec 18, 2015, 12:40:40 PM12/18/15
to BPELUnit
Hi,

the model has some write capabilities as demonstrated by the unit tests. These were necessary for adding coverage instrumentation code.

You need to
a) set the operation, partnerlink etc. in the invoke activity, (should be doable with the BPEL model)
b) add a partner link in the BPEL process, (should be doable with the BPEL model)
c) add a partnerlinktype to the WSDL (not doable with the BPEL model because it is in the WSDL).

Daniel

Nariman Ammar

unread,
Dec 23, 2015, 11:56:03 PM12/23/15
to bpel...@googlegroups.com
I'm not sure I understood the last point. Shouldn't the type be already defined in the wsdl and used in the Bpel? Could you please a
Give a simple  example of what you meant?
Thank you
Sie erhalten diese Nachricht, weil Sie in Google Groups ein Thema der Gruppe "BPELUnit" abonniert haben.
Wenn Sie sich von diesem Thema abmelden möchten, rufen Sie https://groups.google.com/d/topic/bpelunit/r3nAcHjzhG8/unsubscribe auf.
Wenn Sie sich von dieser Gruppe und allen Themen dieser Gruppe abmelden möchten, senden Sie eine E-Mail an bpelunit+u...@googlegroups.com.

Daniel Lübke

unread,
Dec 24, 2015, 4:37:10 AM12/24/15
to BPELUnit
Hi,

if you have the partner link type already in the WSDL, that's no problem. If you want to have a automatic generation chain from e.g. some Java code, you need to add this yourself because JAX-WS does not generate partner link types.

Daniel
Reply all
Reply to author
Forward
0 new messages