[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
[bpel-dev] resolveBPELPartnerLinkType() trouble
|
Hi all,
Working on improving the generation of deployment descriptors for the
ActiveBPEL runtime integration, I have been stuck for a few days trying to
figure out what might be a bug (?).
Here's the setup:
We have a simple BPEL process with two partnerLinks. One partnerLink refers
to a PLT defined in the automatically generated *Artifacts.wsdl file, which
in turn imports the <processName>.wsdl file to resolve the portType referred
to in its PLT. This PLT will be represented by EMF as a proxy.
Here's what we are trying to do:
During PDD generation, we need to getPartnerLinkType().getID() or getName(),
etc. The first getter tries to resolve the proxy and return a
PartnerLinkType, but that's where the trouble starts.
Here's the problem:
The getter makes use of
org.eclipse.bpel.model.util.WSDLUtil.resolveBPELPartnerLinkType(). As we are
dealing with a proxy object, this method decides to inspect the imports.
Problem is (or seems to be), it encounters a bpws:import with a no location
attribute (null), which is represented in our BPEL file by the following
line:
<bpws:import importType="http://schemas.xmlsoap.org/wsdl/"
namespace="http://test.comArtifacts"/>
which, in the BPEL, is followed by:
<bpws:import importType="http://schemas.xmlsoap.org/wsdl/"
location="ArtifactsServiceProcessArtifacts.wsdl"
namespace="http://test.comArtifacts"/>
Now, my understanding is that trying to import the definition indicated by
the first bpws:import above, we encounter a NPE caused by trying to create a
URI on a null location. The effect is that the resolveBPELPartnerLinkType()
method never gets to look at the second import and it all fails miserably.
Can someone please tell me:
a) is this a known limitation of the code?
b) why does our BPEL feature this import with no location attribute?
c) is there something I am missing here? Is there maybe something the PDD
generation should do before trying to resolve a proxy and I am just being
ignorant?
This is driving me nuts (there is some nice recursion going on - forgot to
mention) and keeping me from making any progress. So please, if anyone could
lend me a few minutes of brainpower, it would be greatly appreciated.
-- Bruno
______________________________________________
Bruno Wassermann
Research Fellow
University College London Tel: +44 (0)20 7679 0369 (Direct Dial)
Dept. of Computer Science Fax: +44 (0)20 7387 1397
Gower Street
London WC1E 6BT http://www.cs.ucl.ac.uk/staff/B.Wassermann
United Kingdom
______________________________________________