Errata

Mastering Corda

Errata for Mastering Corda

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.

The following errata were submitted by our customers and have not yet been approved or disproved by the author or editor. They solely represent the opinion of the customer.

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

Version Location Description Submitted by Date submitted
ePub Page Chapter 02
Digital Certificates - figure 2-43

In figure 2-41, the numbering of the steps is wrong, the step from Sally to Bob should be numbered step #5 (instead of step #3).

Roger Rached  Aug 21, 2022 
ePub Page Chapter 02
The X.509 Digital Certificate Structure - code snippet fig 2-45

CertificateFactory certFactory = CertificateFactory.getInstance("X509");
String caCert =
"[...]www.geotrust.com/resources/root_certificates/certificates/" +
"GeoTrust_Primary_CA.pem";

should read:
CertificateFactory certFactory = CertificateFactory.getInstance("X509");
String caCert =
"[...]cacerts.digicert.com/GeoTrustPCA.crt.pem";

// seems that I am not allowed to include URLs in the description
// as GeoTrust is now DigiCert.

Roger Rached  Aug 21, 2022 
ePub Page Chapter 02 - Merkle Trees
fig 2-47

The letters f the leaves should be A -> H, instead the letter G is duplicated.

Roger Rached  Aug 22, 2022 
Printed Page 76
Last Paragraph

Corda GitHub repository at https://oreil.ly/GOX5s points to https://github.com/corda/cordapp-template-java. The template example has been refactored to bind initiator and responder into one file and now exchanges signedTransaction.

The example code matching the book is available at https://github.com/masteringcorda/masteringcorda

masteringcorda.com is no longer available.

Michael Shearer  Jan 03, 2022 
Printed Page 83
Last Paragraph

change @InitiatedBy (Initiator.java) to @InitiatedBy (EchoInitiatorFlow.java)

should be:

change @InitiatedBy (Initiator.class) to @InitiatedBy (EchoInitiatorFlow.class)

Michael Shearer  Jan 03, 2022 
Printed Page 253
Code Block

Transaction must contain at least one command

Suggest adding DummyToDoCommand as per page 192

Michael Shearer  Jan 19, 2022 
Printed Page 281
Last paragraph

application of DLT technology

Michael Shearer  Jan 16, 2022 
Printed Page 296
First code block

Val bob = stableCoins …

Instead of

Val bobsCoin = stableCoins …

To align with subsequent print statement

Michael Shearer  Jan 16, 2022 
Printed Page 326
General Note at top of page

Unable to locate the instrumented version of the Prime Oracle example in Github repository https://oreil.ly/HE2Q2

Michael Shearer  Jan 22, 2022 
Printed Page 348
First code block

partyA.get_node_names_identities

should be:

partyA.get_node_named_identities

To loop assign:

names = partyA.get_node_named_identities()['NAME']

Michael Shearer  Jan 22, 2022 
Printed Page 357
First command

Obligation cordapp has been refactored so net.corda.examples.obligation.Obligation is now net.corda.samples.obligation.states.IOUState

Michael Shearer  Jan 23, 2022 
Printed Page 364
Last command

Typo: partyA.send_api_request_get should be partyA.send_api_get_request

The obligation code @ https://github.com/corda/samples-java/tree/master/Advanced/obligation-cordapp has been refactored so the url should now be:

partyA.send_api_get_request('/api/iou/issue-iou?amount=9525&currency=USD&party=''O=ParticipantC,L=Paris,C=FR''')

note use of double ' to enclose the Corda X500 Name

The obligation code now specifies a PUT rather than GET request for issue-iou.

Either change pycorda core.py file to offer a put method or obligation file

samples-java/Advanced/obligation-cordapp/clients/src/main/java/net/corda/samples/obligation/server/MainController.java

to accept a GET request instead of PUT.

Michael Shearer  Jan 23, 2022