Errata

Programming Web  Services with SOAP

Errata for Programming Web Services with SOAP

Submit your own errata for this product.

The errata list is a list of errors and their corrections that were found after the product was released. If the error was corrected in a later version or reprint the date of the correction will be displayed in the column titled "Date Corrected".

The following errata were submitted by our customers and approved as valid errors by the author or editor.

Color key: Serious technical mistake Minor technical mistake Language or formatting error Typo Question Note Update

Version Location Description Submitted By Date submitted Date corrected
Printed
Page xiii
Subheading "Paul" should read "Pavel"



Anonymous   
Printed
Page 12
first paragraph of "RPC and EDI"

"Electronic Document Interchange (EDI) is basis"
should be
"Electronic Document Interchange (EDI) is the basis".

Anonymous   
Printed
Page 24
Example 2-12

B.com should be b.com
C.com should be c.com

[paul] it may or may not be. Host names in URLs are case insensitive,
but we can make them lowercase just to be consistent.

See RFC 2396 [http://www.ietf.org/rfc/rfc2396.txt], URI Normalization
and Equivalence

Anonymous   
Printed
Page 24
Example 2-17

missing /> at end of the address elements with href attributes

[paul] yes

Anonymous   
Printed
Page 28
Example 2-17

missing /> at end of the address elements with href attributes

[paul] yes

Anonymous   
Printed
Page 33
Example 2.28

Shouldn't the 2 in "SOAP-ENC:offset="[2]" be 3?

[paul] yes. Should be SOAP-ENC:offset="[3]"

Anonymous   
Printed
Page 40
Example 3-6. hw_client.pl

if the example should work with the hello server
line 8 and 9 must be

-> uri('urn:Demo')
-> proxy('http://localhost/cgi-bin/hello.cgi')

[paul] actually it must be:

-> uri('urn:Hello')
-> proxy('http://localhost/cgi-bin/hello.cgi')

There also must be additional newline in result:
code uses two new lines ("

"), but result shows only one.

Anonymous   
Printed
Page 42
Perl demo

It would seem that the uri in
the perl example client should correspond with the name of the pm, as
opposed to urn:Example1. It didn't work until I changed it to
urn:Hello,
then it was fine. The vbscript example
on page 43 is also affected.

[paul] yes. Same as above. VB examples are also affected.
Code in appendix must be updated as well.

Anonymous   
Printed
Page 45-46
"Installing Apache SOAP" section

The text says
"...Or, in the Unix Bourne shell (/bin/sh):

CLASSPATH = $CLASSPATH;$SOAP_LIB/soap.jar
CLASSPATH = $CLASSPATH;$SOAP_LIB/mail.jar
CLASSPATH = $CLASSPATH;$SOAP_LIB/activation.jar
"

There should be no spaces around the equals signs and the semicolons
have to be colons
instead. As written, the statements produce errors and the CLASSPATH
environment
variable can't be properly set.

Ironically, a few paragraphs later the text says

"The vast majority of problems encountered by new Apache SOAP users
are related to
incorrect classpaths. If you encounter problems writing web services
with Apache SOAP,
be sure to start your debugging by checking your classpath!"

[paul] yes. should be changed to:

CLASSPATH=$CLASSPATH:$SOAP_LIB/soap.jar
CLASSPATH=$CLASSPATH:$SOAP_LIB/mail.jar
CLASSPATH=$CLASSPATH:$SOAP_LIB/activation.jar

Anonymous   
Printed
Page 49
Hello Client Code List

The line reading:

call.setEncodingStyleURI(Constants.NS_URI_SOAP_ENC;);

should read:

call.setEncodingStyleURI(Constants.NS_URI_SOAP_ENC);

(remove the first semicolon or the java compiler will complain)

[paul] yes

Anonymous   
Printed
Page 50
example 3-16. hw_jclient.pl

->proxy('....router James')

must be

->proxy('....router')

URL with 'James' in the end generates an error.

Anonymous   
Printed
Page 63
2nd paragraph

It says
"in Chapter 5, we will discuss several much more secure and robust security mechanisms for web services."
it should be:
"in Chapter 7, we will discuss several much more secure and robust security mechanisms for web services."

Anonymous   
Printed
Page 88, 183
all

The telephone number example is US specific!

My work number has the following format 020 123 1234, and my home
number 01234 123456, both of which will not fit into the schema d
efined. Also many country codes exceed 2 digits, and it is common to
prefix the code with '+'.

This raises an important point about XML schemas and the use of XML
within SOAP which the book does not address at all, viz. how do
you handle i18n / l10n ?

Ideally XML schemas would permit a specification to define different
formats for different locales (ie. using a 'switch' type const
ruct). An alternative might be to use the locale information of the
sender to define an appropriate schema to be incorporated into
any WDSL file returned (eg. <telephoneNumber-us>,
<telephoneNumber-de>)[this then raises the issue of support for i18n
by the various SOAP toolkits as message validation would need to use the correct
handler for the sender's locale].

(It is suprising how many web sites still require US telephone
numbers, postal addresses, etc so this topic is of high importance i
f web services are to enable global commerce).

[paul] I would agree with that, but I don't think i18n is applicable
here. It's more about schema definition/usage rather than
globalization issue.

Anonymous   
Printed
Page 100
1st paragraph in "The Publisher Interface

Says "defines sixteen operations" but only eleven are listed after
that.

[paul] yes. Change sixteen to eleven?

Anonymous   
Printed
Page 102
The Inquiry Interface

find_ltservice should be find_service

[paul] yes.

Anonymous   
Printed
Page 106
last line of code

<name>O'reilly and Associates</name>

Should be - "O'Reilly"

[paul] yes.

Anonymous   
Printed
Page 120
5th paragraph

JAXP is the Java API for XML Processing
(http://xml.apache.org/xercesj).

It's actually "xerces-j" at the end of this web address.

[paul] yes. I also prefer to use trailing slash if URL ends with a
directory:

http://xml.apache.org/xerces-j/

(Chapter 3 Examples)

Both Example 3-5 and 3-6 reference to the WRONG proxy and have the
WRONG uri value
(uri== urn:Example1 this should be urn:Hello) and the proxy address
should be
http://localhost/cgi-bin/hello.cgi helloworld.cgi is never discussed
in this chapter!

The URI error continues throughout the chapter, example 3-10, 3-15,
3-16.

[paul] yes. was mentioned before (pp40, 42)

Anonymous   
Printed
Page 158
second paragraph

Currently, only IBMs Web Services ToolKit and Microsofts .NET web
services impl
ementations include support for digitally signing and encrypting SOAP
messages.

"IBM's Web Services Toolkit" and "Microsoft's .NET web services"

[paul] yes.

Anonymous   
Printed
Page 183
Complex Types

A complex type is a collection of other data types. It's not
restricted to
"primitive data types" as the text reads.

[paul] yes.

Anonymous