I am trying to make one composite call another via the request delayed response message exchange pattern.
The composite is a providor ABCS.
I have created a WSDL with
- Two message types (one request one response)
- Two Port types (again req and response)
- Two partnerLinkType (one request and one response)
The request message is going to be from one schema (It's an EBM)
The response message is going to be from another (It's an ABM)
I have imported both the schemas in the top of the WSDL document in the types tag:
I have created the request composites and they work and run fine.
I am now trying to execute the response messages.
I think I have created an invalid schema because I am getting error messages in JDeveloper.
The error comes up in a number of places, one of which is:
In the transport which needs to call back the ABCS with a response
Define a new schema,
select element and press torch
Goto Partner link types and select the partnet link for the response
select it's wsdl
goto Inline Schemas,
It then displays the message Exception: Error occured reading inline schemas.
I can click on show detailed node information and it gives more detail of the message.
Basically it is a lot of messages like:
Duplicated definition for: ‘EndpointReference’
Duplicated definition for: ‘EndpointReferenceType’
You can see this error https://code.metcarob.com/node/123
This problem also occurs when I try and setup Coroleation Sets, and when I create test suites.
I have traced the error to the face that I import two seperate xsd files into my wsdl,
one for the ABM and one for the EBM.
Both these files (via lots of imports) end up linking to the same file in order to provide common types,
in this case it is WS-Addressing.xsd
since this file is linked twice I have duplicate definitions.
The problem is that both files need to link to this xsd because they need to reference types inside it.
Can anyone point me in the right direction.
Are you using AIAServiceConstructor to construct the Prov ABCS. If we use the tool i don't see the possibility of any mismatch in schemas.
Even after using AIAServiceConstrutor, you get this error. Its better to check the schema definition.
These are my thought process.
Yes we are using the AIA Service Constructor to create this ABCS.
When I was creating the ABM I imported DataTypes.xsd and WS-Addressing.xsd from the common files so that my ABM could refer to them.
I think this is what had caused the problem.
I have copied these files to a new location and changed the namespace. This stops the issue.
I don't understand why it is not valid for two different messages to import the same schema file. This must be required all the time.