diff --git a/src/docbkx/common.xml b/src/docbkx/common.xml
index 67d98f42..af017834 100644
--- a/src/docbkx/common.xml
+++ b/src/docbkx/common.xml
@@ -157,9 +157,6 @@
Handling XML With XPath
-
- One of the best ways to handle XML is to use XPath. Quoting , item 35:
- What is XPath?
@@ -169,6 +166,9 @@
XPath tutorial
+
+ One of the best ways to handle XML is to use XPath. Quoting , item 35:
+
XPath is a fourth generation declarative language that allows you to specify which nodes you want to
diff --git a/src/docbkx/server.xml b/src/docbkx/server.xml
index c9de2f7d..8ed13fe2 100644
--- a/src/docbkx/server.xml
+++ b/src/docbkx/server.xml
@@ -358,7 +358,7 @@ public class MarshallingOrderEndpoint extends AbstractMarshallingPayloadEndpoint
- @Endpoint
+ @Endpoint
The previous two programming models were based on inheritance, and handled individual XML mesages.
Spring Web Services offer another endpoint with which you aggregate multiple handling into one
@@ -427,6 +427,59 @@ public class AnnotationOrderEndpoint {
PayloadRootAnnotationMethodEndpointMapping is the mapping that detects and
handles the @PayloadRoot annotations.
+
+ As an alternative to using marshalling, we could have used XPath to
+ extract the information out of the incoming XML request. Spring-WS offers another annotation for
+ this purpose: @XPathParam. You simply annotate a method paramters
+ with this annotation, and it will be bound with the evaluation of that annotation.
+ Here is an example:
+
+
+
+
+
+
+
+
+
+
+
+
+
+]]>
+
+ Using the @XPathParam, you can bind to all the data types supported by
+ XPath:
+
+ boolean or Boolean
+ double or Double
+ String
+ Node
+ NodeList
+
+