Mike Edwards wrote:
Folks,
The problem seems to be with the testcase itself, in my opinion, but
before I go and hack the testcase, I'm posting to the list to see if
anyone knows why the sample is the way it is.
Look at the BPEL process - helloworld.bpel
It contains an import for the WSDL referenced by the process. This
import uses a quite extraordinary namespace:
namespace="file:///home/mriou/dev/projects/ode/distro-axis2/src/examples/HelloWorld2/HelloWorld2.wsdl"
This is bizarre and bears no relationship to the actual WSDL used, which
has the more expected namespace of:
targetNamespace="http://tuscany.apache.org/implementation/bpel/example/helloworld.wsdl"
....my first step is going to be to correct the namespace (the BPEL
processing code needs a fix too - this error should be flagged much
earlier than is the case currently)
- HOWEVER - am I being dim and have I missed something here?
Yours, puzzled, Mike.
PS The reason this never caused a problem before is that I believe that
NO-ONE was using the import statement !! The componentType file was
overriding everything, including this.
Well, more investigating allowed me to get the test working correctly, with the
following changes:
a) Change the namespace in the <import.../> statement in the BPEL process, to match the actual
namespace of the WSDL document (as above)
b) Change the name of the service identified in the componentType file. The name originally in
there - "HelloService" violates the SCA BPEL specification which clearly states that the name of the
service for a BPEL partnerLink is the name of the partnerLink (and it can't be overridden). So I
updated the componentType file to use the name "helloPartnerLink".
I am considering stiffening the handling of the componentType information from the side file to
PREVENT the use of services or refernences that do not match the services and references found from
introspection of the BPEL process, since the effect of not matching is to imply that there are more
services/references than are actually present in the BPEL process implementation.
Yours, Mike.