diff --git a/src/docbkx/server.xml b/src/docbkx/server.xml
index d5a38345..c2dc519e 100644
--- a/src/docbkx/server.xml
+++ b/src/docbkx/server.xml
@@ -175,6 +175,15 @@
servlet context path as appropriate).
+
+
+ All WsdlDefinition bean definitions are exposed by the
+ MessageDispatcherServlet under their bean id (or bean id) with the
+ suffix .wsdl. So if the bean id is echo, the host name
+ is "server", and the Servlet context (war name) is "spring-ws", the WSDL can be
+ obtained via http://server/spring-ws/echo.wsdl
+
+
Another cool feature of the MessageDispatcherServlet (or more correctly the
WsdlDefinitionHandlerAdapter) is that it is able to
@@ -214,28 +223,25 @@
The next application context snippet shows how to create such a dynamic WSDL file:
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
]]>
- The DynamicWsdl11Definition uses a
- Wsdl11DefinitionBuilder implementation
- to generate a WSDL the first time it is requested.
- Typically, we use a XsdBasedSoap11Wsdl4jDefinitionBuilder, which builds
- a WSDL from a XSD schema. This builder iterates over all element elements
- found in the schema, and creates a message for elements that end with the
+ The DefaultWsdl11Definition which builds
+ a WSDL from a XSD schema. This definition iterates over all element elements
+ found in the schema, and creates a message for all elements. Next, it creates
+ WSDL operation for all messages that end with the
defined request or response suffix. The default request suffix is Request;
the default response suffix is Response, though these can be changed by
setting the requestSuffix and responseSuffix
properties, respectively.
- Next, the builder combines the request and response messages into a WSDL
- operations, and builds a portType based on the operations.
+ It also builds a portType, binding, and service based on the operations.
For instance, if our Orders.xsd schema defines the
@@ -244,6 +250,38 @@
GetOrdersRequest and GetOrdersResponse message, and a
GetOrders operation, which is put in a Orders port type.
+
+ If you want to use multiple schemas, either by includes or imports, you might want to use the
+ CommonsXsdSchemaCollection, and refer to that from the
+ DefaultWsdl11Definition, like so:
+
+
+
+ This bean wrap the messages.xsd (which imports types.xsd), and inlines them as a one.
+
+
+
+ /WEB-INF/xsds/Orders.xsd
+ /WEB-INF/xsds/Customers.xsd
+
+
+
+]]>
+
+ When the inline property is enabled, it folows all XSD imports and includes,
+ and inlines them in the WSDL. This greatly simplifies the deloyment of the schemas, which still
+ making it possible to edit them separately.
+
+
+ The DefaultWsdl11Definition uses WSDL providers in the
+ org.springframework.ws.wsdl.wsdl11.provider package and the
+ ProviderBasedWsdl4jDefinition
+ to generate a WSDL the first time it is requested.
+ Refer to the class-level Javadoc of these classes to see how you can extend this mechanism,
+ if necessary.
+
+