简体   繁体   中英

How to share wsdl and xsd files between different projects?

We use C# project as a server for soap web service and java project as a client.

Could you tell me what is the best way to share WSDL and XSD files between these two projects? so we don't have to make a local copy of them in our java client every time these files change in C# project.

I thought about creating maven project with only WSDL and XSD files in the resources folder, wrap it to the jar file and publish it to Artifactory or maven shared repo. But I don't know if it's the right way, cause C# doesn't support jars.

Thanks

Could you tell me what is the best way to share WSDL and XSD files between these two projects?

It's not necessary to place these files in a project at all because WSDL+XSD exists independant of any programming language or project and can be edited directly via tools such as Stylus Studio (which doesn't have a dependency on Java or .NET). This is important for schema-first methodologies.

Create a common folder in source control repo into which to place the WSDL and XSD. The repo can then house both C# and Java code and refer by whatever means to the common WSDL/XSD folder.

eg repo folder layout

bin
docs
schemas         <--- place here
src
|-- common
    |-- schemas <--- or perhaps here
|-- cpp
|-- java

The exact layout is not important so long as:

  1. there is only ever one copy of the WSDL and XSDs (the source of truth )
  2. there is an easy way for your code to get to the models

That or create a second repo just for WSDL definitions

For more great SOA ideas check out this book - SOA Design Patterns by Thomas Erl.

在此处输入图像描述

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM