zee
zee

Reputation: 109

Using spring-ws with already existing WSDL

I am new to spring-ws. what ever tutorial i see starts with xsd and at the end generates a wsdl. What is the approach when we have already an existing wsdl.

Also i was having a doubt on contract first approach which is already discussed (though am not getting convinced with the answer)

spring-ws and contract-first approach

My assignment is to use spring-ws with an existing wsdl. can you please provide me an approach for this.

As per my understanding. In the process of contract first approach, I got the contract already so how to proceed further is not shown in any tutorial.

Upvotes: 8

Views: 12286

Answers (2)

zee
zee

Reputation: 109

Actually spring does support both static and dynamic wsdl. But each comes with different challenges. As from what i have seen, spring works on a notion of pattern matching when comes to generating a wsdl dynamically from a xsd. Like "Request" string which says input and "Response" means output. Now here is a problem where the spring generates a wsdl with synchronous responses. If our requirement is to have asynchronous response then the dynamic wsdl wont work.

To overcome this, we can use the static wsdl and let spring know not to generate wsdl dynamically.

Upvotes: 0

CodeNotFound
CodeNotFound

Reputation: 1081

When developing a web service using Java you can use one of two approaches:

  • Contract-first: start with an WSDL that defines the web service operations and their input/output messages. Then generate the corresponding Java objects to implement the service.
  • Contract last: Start with the implementation of one or more methods in Java and generate the WSDL files based on these methods and the Java objects that they use.

Spring-WS, as you already mentioned, only supports the contract first approach. This means that you cannot develop a web service using Spring-WS without first having a WSDL or XSD that describes the input/output messages.

You should be able to create a service using Spring-WS using any valid WSDL file. For a concrete example let me point you to a blog post that I created that illustrates how you can develop a web service using Spring-WS starting from a WSDL file.

Upvotes: 11

Related Questions