100% found this document useful (2 votes)
53 views70 pages

Java EE Development With Eclipse 1st Edition Vohra Deepak - The Latest Ebook Edition With All Chapters Is Now Available

The document provides information about various Java EE development ebooks available for download at textbookfull.com, including titles by authors such as Deepak Vohra and David R. Heffelfinger. It highlights the features of Java EE and Eclipse IDE for enterprise application development. Additionally, it includes details about the authors and reviewers of the books, along with a table of contents for one of the titles.

Uploaded by

moralzjefka
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (2 votes)
53 views70 pages

Java EE Development With Eclipse 1st Edition Vohra Deepak - The Latest Ebook Edition With All Chapters Is Now Available

The document provides information about various Java EE development ebooks available for download at textbookfull.com, including titles by authors such as Deepak Vohra and David R. Heffelfinger. It highlights the features of Java EE and Eclipse IDE for enterprise application development. Additionally, it includes details about the authors and reviewers of the books, along with a table of contents for one of the titles.

Uploaded by

moralzjefka
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 70

Explore the full ebook collection and download it now at textbookfull.

com

Java EE Development with Eclipse 1st Edition Vohra


Deepak

https://textbookfull.com/product/java-ee-development-with-
eclipse-1st-edition-vohra-deepak/

OR CLICK HERE

DOWLOAD EBOOK

Browse and Get More Ebook Downloads Instantly at https://textbookfull.com


Click here to visit textbookfull.com and download textbook now
Your digital treasures (PDF, ePub, MOBI) await
Download instantly and pick your perfect format...

Read anywhere, anytime, on any device!

Java EE Development with Eclipse - Second Edition Ram


Kulkarni

https://textbookfull.com/product/java-ee-development-with-eclipse-
second-edition-ram-kulkarni/

textbookfull.com

Java EE 7 Development with NetBeans 8 1st Edition


Heffelfinger David R

https://textbookfull.com/product/java-ee-7-development-with-
netbeans-8-1st-edition-heffelfinger-david-r/

textbookfull.com

Java EE 7 Development with WildFly 1st Edition Cmil Michal


Matloka Michal Marchioni Francesco

https://textbookfull.com/product/java-ee-7-development-with-
wildfly-1st-edition-cmil-michal-matloka-michal-marchioni-francesco/

textbookfull.com

Kubernetes Management Design Patterns: With Docker, CoreOS


Linux, and Other Platforms 1st Edition Deepak Vohra

https://textbookfull.com/product/kubernetes-management-design-
patterns-with-docker-coreos-linux-and-other-platforms-1st-edition-
deepak-vohra/
textbookfull.com
Building RESTful Web Services with Java EE 8 Create modern
RESTful web services with the Java EE 8 API Mario-Leander
Reimer
https://textbookfull.com/product/building-restful-web-services-with-
java-ee-8-create-modern-restful-web-services-with-the-java-ee-8-api-
mario-leander-reimer/
textbookfull.com

Java EE 6 Pocket Guide A Quick Reference for Simplified


Enterprise Java Development 1st Edition Gupta Arun

https://textbookfull.com/product/java-ee-6-pocket-guide-a-quick-
reference-for-simplified-enterprise-java-development-1st-edition-
gupta-arun/
textbookfull.com

Java EE 6 with GlassFish 3 Application Server 1st Edition


Heffelfinger David

https://textbookfull.com/product/java-ee-6-with-
glassfish-3-application-server-1st-edition-heffelfinger-david/

textbookfull.com

Practical Domain-Driven Design in Enterprise Java - Using


Jakarta EE, Eclipse MicroProfile, Spring Boot, and the
Axon Framework 1st Edition Vijay Nair
https://textbookfull.com/product/practical-domain-driven-design-in-
enterprise-java-using-jakarta-ee-eclipse-microprofile-spring-boot-and-
the-axon-framework-1st-edition-vijay-nair/
textbookfull.com

Introducing Jakarta EE CDI Contexts and Dependency


Injection for Enterprise Java Development 1st Edition
Luqman Saeed
https://textbookfull.com/product/introducing-jakarta-ee-cdi-contexts-
and-dependency-injection-for-enterprise-java-development-1st-edition-
luqman-saeed/
textbookfull.com
Java EE Development with
Eclipse

Develop Java EE applications with Eclipse and


commonly used technologies and frameworks

Deepak Vohra

BIRMINGHAM - MUMBAI
Java EE Development with Eclipse

Copyright © 2012 Packt Publishing

All rights reserved. No part of this book may be reproduced, stored in a retrieval
system, or transmitted in any form or by any means, without the prior written
permission of the publisher, except in the case of brief quotations embedded in
critical articles or reviews.

Every effort has been made in the preparation of this book to ensure the accuracy
of the information presented. However, the information contained in this book is
sold without warranty, either express or implied. Neither the author, nor Packt
Publishing, and its dealers and distributors will be held liable for any damages
caused or alleged to be caused directly or indirectly by this book.

Packt Publishing has endeavored to provide trademark information about all of the
companies and products mentioned in this book by the appropriate use of capitals.
However, Packt Publishing cannot guarantee the accuracy of this information.

First published: December 2012

Production Reference: 1131212

Published by Packt Publishing Ltd.


Livery Place
35 Livery Street
Birmingham B3 2PB, UK.

ISBN 978-1-78216-096-0

www.packtpub.com

Cover Image by Asher Wishkerman ([email protected])


Credits

Author Project Coordinator


Deepak Vohra Amey Sawant

Reviewers Proofreader
Filippo Bosi Maria Gould
Frank Nimphius
Federico Tomassetti Indexer
Tejal R. Soni
Phil Wilkins

Production Coordinator
Acquisition Editors
Conidon Miranda
Mary Nadar
Dhwani Devater
Cover Work
Conidon Miranda
Lead Technical Editors
Sweny M. Sukumaran
Neeshma Ramakrishnan

Technical Editors
Sharvari Baet
Devdutt Kulkarni
About the Author

Deepak Vohra is a consultant and a principal member of the NuBean.com


software company. Deepak is a Sun Certified Java Programmer and Web
Component Developer, and has worked in the fields of XML and Java programming
and J2EE for over five years. Deepak is the co-author of the Apress book, Pro XML
Development with Java Technology, and was the technical reviewer for the O'Reilly
book, WebLogic: The Definitive Guide. Deepak was also the technical reviewer for the
Course Technology PTR book, Ruby Programming for the Absolute Beginner, and the
technical editor for the Manning Publications book, Prototype and Scriptaculous in
Action. Deepak is also the author of the Packt Publishing books, JDBC 4.0 and Oracle
JDeveloper for J2EE Development, Processing XML documents with Oracle JDeveloper 11g,
EJB 3.0 Database Persistence with Oracle Fusion Middleware 11g, and Java 7 JAX-WS
Web Services.
About the Reviewers

Filippo Bosi (Twitter @filippobosi) is currently employed at Imola Informatica


(www.imolinfo.it), an Italian consulting company where he works as Senior
Advisor, managing important projects for banking and insurance companies.

He has been working for more than 25 years in the computer programming
field. He started his career as a freelance consultant and writer for some Italian
computer magazines, while at the same time offering freelance consultancies in
the first years that banking and insurance companies were starting to move away
from mainframes in order to implement their business.

In the last four years, he's been involved in redesigning from scratch the entire
information system of a banking institution in an SOA fashion, in studying ways
to apply Semantic Web technologies to address Enterprise Architecture and
Knowledge Management problems for some Italian large banking and insurance
companies, and an European project (Cloud4SOA – www.cloud4soa.eu) that
attempts, through the use of semantics, to address the portability of applications
and data between different PaaS providers.

He is currently interested in Agile and Lean Management (applied), design of SOA


Architectures, Enterprise Architecture, Cloud Computing, and Semantic Web.

He can be contacted at [email protected].

Frank Nimphius is a Senior Principal Product Manager in the Oracle Application


Development Tools group at Oracle Corporation, specializing in Oracle JDeveloper
and the Oracle Application Development Framework (ADF).
In his current position, Frank represents and evangelizes the Oracle JDeveloper
and Oracle ADF product worldwide as a speaker at user group and technology
conferences, as well as in various publications. Frank runs the ADF Code Corner
website, the OTN Forum Harvest blog, and is the co-author of the Oracle Fusion
Developer Guide book published in 2009 by McGraw Hill.

Federico Tomassetti is a software engineer and a PhD student in computer


engineering. He is interested mainly in model-driven development and domain
specific languages. He has experience as a technical writer, teacher, and consultant
about these technologies.

He is studying at the Politecnico di Torino. He spent a semester in the Universität


Karlsruhe and one at Fortiss, an Institut of the Technische Universität München.

Phil Wilkins has spent nearly 25 years in the software industry working with both
multinationals and software startups. He started out as a developer and has worked
his way up through technical and development management roles. The last 12 years
have been primarily in Java based environments. He now works as an architect with
an enterprise wide technical remit within the IT group for a global optical healthcare
manufacturer and retailer.

Outside of his work commitments, he has contributed his technical capabilities to


supporting others in a wide range of activities from the development of community
websites to providing input and support to people authoring books, and developing
software ideas and businesses.

When not immersed in work and technology, he spends his down time pursing his
passion for music and time with his wife and two boys.

I'd like to take this opportunity to thank my wife Catherine and


our two sons Christopher and Aaron for their tolerance for the
innumerable hours that I spent in front of a computer contributing
to both my employer and the many other IT related activities that
I've supported over the years.
www.PacktPub.com
Support files, eBooks, discount offers and more
You might want to visit www.PacktPub.com for support files and downloads related
to your book.

Did you know that Packt offers eBook versions of every book published, with PDF and ePub
files available? You can upgrade to the eBook version at www.PacktPub.com and as a print
book customer, you are entitled to a discount on the eBook copy. Get in touch with us at
[email protected] for more details.

At www.PacktPub.com, you can also read a collection of free technical articles, sign up
for a range of free newsletters and receive exclusive discounts and offers on Packt books
and eBooks.
TM

http://PacktLib.PacktPub.com

Do you need instant solutions to your IT questions? PacktLib is Packt's online digital book
library. Here, you can access, read and search across Packt's entire library of books.

Why Subscribe?
 Fully searchable across every book published by Packt
 Copy and paste, print and bookmark content
• On demand and accessible via web browser

Free Access for Packt account holders


If you have an account with Packt at www.PacktPub.com, you can use this to access
PacktLib today and view nine entirely free books. Simply use your login credentials
for immediate access.

Instant Updates on New Packt Books


• Get notified! Find out when new books are published by following @
PacktEnterprise on Twitter, or the Packt Enterprise Facebook page..
Table of Contents
Preface 1
Chapter 1: EJB 3.0 Database Persistence 9
Configuring a data source 10
Creating tables in the Oracle database 15
Creating an EJB project 16
Adding the JPA facet 22
Creating entity beans from tables 26
Defining entity relationships 28
Setting cascade 31
Generating default entities 34
Creating the Catalog entity 38
The Catalog entity class 40
Creating the Edition entity 41
The Edition entity class 42
Creating the Section entity 44
The Section entity class 44
Creating the Article entity 46
The Article entity class 46
Creating the JPA persistence configuration file 48
Creating a session bean facade 49
Creating an EntityManager 51
Specifying getter methods 52
Creating test data 52
The session bean class 53
The remote business interface 57
Creating the application.xml descriptor 58
Creating a test client 60
The catalog.jsp file 62
Table of Contents

Packaging and deploying the entity bean application 64


The build script 65
Running the build script 68
Testing the JSP client 70
Summary 71
Chapter 2: O/X Mapping with JAXB 2.x 73
JAXB 2.x advantages 74
Creating a JAXB project 74
Creating an XML Schema 79
Compiling the XML Schema 82
Marshalling an XML document 92
Unmarshalling an XML document 96
Java to XML mapping 100
Summary 108
Chapter 3: Developing a Web Project for JasperReports 109
Setting the environment 110
Creating a Dynamic Web project in Eclipse 112
Creating the configuration file 114
Creating a web application 121
Creating a report design 122
Setting the report title 122
Creating a JDBC connection 123
Generating a PDF report 123
Creating an Excel report 124
Packaging and deploying the web application 126
Running the web application 131
Summary 132
Chapter 4: Creating a JSF Data Table 133
Setting the environment 134
Creating a web project 134
Creating a managed bean 138
Constructing the managed bean class 142
The managed bean class 144
Creating a JSF page 150
Adding components to the JSF page 151
The JSF page 164
Running the JSF page 166
Summary 169

[ ii ]
Table of Contents

Chapter 5: Templating with Facelets 171


Facelets structure 171
Setting the environment 174
Configuring JSF 2.0 support in WLS 175
Creating a Facelets project 179
Creating a managed bean 190
Creating a Facelets template 201
Creating Facelets 204
Creating navigation 207
Running the Facelets application 208
Summary 212
Chapter 6: Creating Apache Trinidad User Interfaces 213
Configuring Trinidad 214
Setting the environment 214
Creating a Trinidad project 215
Creating Trinidad UIs 222
Creating a managed bean 223
Adding Trinidad components 235
Running the Trinidad application 248
Summary 252
Chapter 7: Creating an AJAX Application 253
Setting the environment 254
Creating a Dynamic Web project 255
Creating a web application for AJAX 256
Creating a servlet 258
Developing the AJAX web application 262
Packaging the web application 274
Deploying the web application 277
Running the web application 279
Summary 282
Chapter 8: Creating a JAX-WS Web Service 283
Setting the environment 284
Creating a web service project 285
Creating a WebLogic web service 288
Running the web service on the server 291
Generating a WSDL 294
Testing WSDL in web services explorer 300
Generating a bindings file 302

[ iii ]
Table of Contents

Creating a client class 304


Creating a build file 306
Testing the web service 312
Summary 316
Chapter 9: RESTful Web Services Using the JAX-RS API 317
Setting the environment 318
Creating a web project 319
Creating and running a resource class 327
Creating and running a test client 334
Summary 340
Chapter 10: Spring 341
Setting the environment 344
Creating a web project with Spring facet 344
Method Interception 348
Creating a Spring bean class 348
Creating a bean definition file 353
Creating a method interceptor 366
Creating a Spring client 368
Schema-based aspect definitions 374
Creating a Spring and JSF faceted web project 376
Creating a bean class 381
Creating an AOP JavaBean 384
Creating an applicationContext.xml configuration file 386
Creating a JSF page 394
Running the JSF page 397
Summary 399
Index 401

[ iv ]
Preface
Java Platform, Enterprise Edition (Java EE) 6 is the industry standard for enterprise
Java computing. Eclipse IDE for Java EE developers is the most commonly used Java
IDE for Java EE development. Eclipse IDE for Java EE developers supports Java EE 5
completely and also supports several features from Java EE 6.

The Oracle WebLogic Server product line is the industry's most comprehensive
platform for developing, deploying, and integrating enterprise applications. Oracle
Enterprise Pack for Eclipse provides a set of plugins (project facets) for Eclipse
development with WebLogic Server.

While a number of books are available on Eclipse IDE for Java Developers, none or
very few are available on Eclipse IDE for Java EE Developers. In this book, we shall
discuss Java EE development in Eclipse IDE for Java EE developers. While it is not
feasible to cover all of the more than 30 technologies in the Java EE stack (http://
www.oracle.com/technetwork/java/javaee/tech/index.html), we shall discuss
the most commonly used Java EE technologies, especially the ones Eclipse IDE
for Java EE developers (or Oracle Enterprise Pack for Eclipse) provides Project for
Facets. Oracle Enterprise Pack for Eclipse is just an enhancement of Eclipse IDE for
Java EE developers with integrated support for Oracle WebLogic Server.
Preface

The objective of the book is to discuss how a developer would develop Java EE
applications using commonly used Java EE technologies and frameworks in
Eclipse IDE for Java EE developers. The book covers all aspects of application
development including:

• Setting the environment for an application


• Using the Eclipse IDE wizards and the Component Palette
• Running a sample application

What this book covers


Chapter 1, EJB 3.0 Database Persistence discusses creating an EJB project using the
EJB 3.0 Module project facet. To create an entity bean, we add the JPA project facet.
Subsequently, we generate entity beans from Oracle database tables. We create a
session bean facade for the entity beans; wrapping an entity bean in a session bean
facade is a best practice. We create a JSP client for the EJB application. We package
and deploy the EJB application to Oracle WebLogic Server using an Ant build
script and run the test client on the WebLogic Server.

Chapter 2, O/X Mapping with JAXB 2.x discusses the Object/XML (O/X) bi-directional
mapping provided by the JAXB framework. We discuss the advantages of JAXB 2.x
over JAXB 1.0. We create a JAXB web project using the JAXB project facet. We use
the EclipseLink 2.4 persistence provider. We create an XML Schema and generate
JAXB classes from the XML Schema using JAXB schema compilation. Subsequently,
we marshall an XML document from a Java Document Object Model (DOM)
document object, and also unmarshall an XML document using the compiled Java
classes. We map an annotated Java class to an XML document using the annotations
API. We also demonstrate the support for mapping Java classes to an XML Schema.

Chapter 3, Developing a Web Project for JasperReports demonstrates the use of the
Oracle Enterprise Pack for Eclipse's integrated support for Oracle WebLogic Server
to deploy and run any web application that requires an application server. First, we
configure an Oracle database data source in WebLogic Server. We create and deploy
a web application for JasperReports to the WebLogic Server, and subsequently run
the web application to create PDF and Excel reports.

[2]
Preface

Chapter 4, Creating a JSF Data Table discusses how to use the JavaServer Faces project
facet to create a JSF data table. First, we create a web project. Subsequently, we create
a managed bean, create a JSF page, add a JSF data table to the JSF page, and run the
JSF web application on the integrated WebLogic Server to create a JSF data table.

Chapter 5, Templating with Facelets discusses templating with Facelets.


Templating is the use of a common "template", which is just an XHTML page, in
Facelets' composition pages. Templating makes use of Facelets' header and footer
pages for describing the common sections of Facelets' composition pages. WebLogic
Server includes a shared library for JSF 2.0, which we configure first. We create a
web project for Facelets, and create a managed bean to create a JSF data table. We
add the 2.0 version of the JavaServer Faces project facet to the web project. For
templating, we add a Facelets Template in which we configure the default sections
of a Facelets composition page, a header, a content section, and a footer. We add
Facelets composition pages for an SQL query input and a JSF Data Table output.
We add the implicit navigation, a new feature in JSF 2.0. We run the Facelets
application to demonstrate templating by including the same header and footer
images in the input and output pages.

Chapter 6, Creating Apache Trinidad User Interfaces discusses the Trinidad project
facet. Trinidad was formerly Oracle ADF Faces and provides a set of user interface
components. First, we create a web project and add the Trinidad project facet to it.
Subsequently, we create JSPs to create and find a catalog entry in Oracle database.
We add Trinidad components to the JSP pages. We run the Trinidad application in
the integrated WebLogic Server.

Chapter 7, Creating an AJAX Application discusses how to develop an AJAX


application to send an asynchronous request to the server and receive a response
from the server. The JavaScript project facet is enabled by default in a web project.
The AJAX application is used to create a catalog entry in Oracle database by first
validating the catalog ID using AJAX. The application is packaged, deployed, and
run on the WebLogic Server.

Chapter 8, Creating a JAX-WS Web Service discusses how to use the Java API for XML
web services (JAX-WS) to create a web service. First, we create a web service project,
which has the Oracle WebLogic web service project facet associated with it. We
test the web service on the server and generate a WSDL, which we test in the web
explorer. We create a client class for the web service and package, then deploy and
test the web service on the WebLogic Server.

[3]
Preface

Chapter 9, RESTful Web Services Using the JAX-RS API discusses RESTful web services
using Java API for RESTful web services (JAX-RS), which are specified in the JSR
311 specification. We use the JAX-RS project facet for the RESTful web service. We
create a Resource class, which is exposed as a URI path using the @PATH annotation.
Subsequently, we create a Jersey Client API to test the web service.

Chapter 10, Spring discusses how to create a Spring framework application using
the Spring project facet. We discuss method interception with a method interceptor
and a Spring client. We also discuss Aspect Oriented Programming (AOP) in
combination with JSF. We discuss creating a Spring bean, a bean
definition file, and an AOP JavaBean.

What you need for this book


The book is based on Eclipse IDE for Java EE Developers version 3.7. We use
the Oracle Enterprise Pack for Eclipse packaged Eclipse IDE with integrated
support for Oracle WebLogic Server 12c, which may be downloaded from
http://www.oracle.com/technetwork/middleware/ias/downloads/wls-
main-097127.html. We have used the Oracle Database Express Edition 11g
Release 2, which can be downloaded from http://www.oracle.com/technetwork/
products/express-edition/overview/index.html.

Some other chapter specific software such as JasperReports is also required. We


have used the Windows version, but if you have Linux installed the book may
still be used (though the source code and samples have not been tested with Linux).
Slight modifications may be required with the Linux Install; for example, the
directory paths on Linux would be different than the Windows directory paths
used in the book. You need to install J2SE 5.0 or later.

Who this book is for


The target audience of the book is Java EE application developers who want to
learn about the practical use of Eclipse IDE for application development. This
book is suitable for professional Java EE developers. The book is also suitable
for an intermediate/advanced level course in Java EE development. The target
audience is expected to have prior, albeit beginner's, knowledge about Java EE,
Enterprise JavaBeans (EJB) 3.0, entity and session EJBs, JavaServer Faces (JSF),
ADF Faces, AJAX, web services, and Spring framework. The book also requires
some familiarity with WebLogic Server and Eclipse IDE.

[4]
Preface

Conventions
In this book, you will find a number of styles of text that distinguish between
different kinds of information. Here are some examples of these styles, and an
explanation of their meaning.

Code words in text are shown as follows: "The catalog.xsd Schema gets parsed
and compiled."

A block of code is set as follows:


<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.example.org/catalog"
xmlns:catalog="http://www.example.org/catalog"
elementFormDefault="qualified">
<xsd:element name="catalog" type="catalog:catalogType" />
<xsd:element name="catalogid" type="xsd:int" />
<xsd:complexType name="catalogType"> [default]

When we wish to draw your attention to a particular part of a code block, the
relevant lines or items are set in bold:
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.example.org/catalog"
xmlns:catalog="http://www.example.org/catalog"
elementFormDefault="qualified">
<xsd:element name="catalog" type="catalog:catalogType" />

New terms and important words are shown in bold. Words that you see on the
screen, in menus or dialog boxes for example, appear in the text like this: "clicking
the Next button moves you to the next screen".

Warnings or important notes appear in a box like this.

Tips and tricks appear like this.

[5]
Preface

Reader feedback
Feedback from our readers is always welcome. Let us know what you think about
this book—what you liked or may have disliked. Reader feedback is important for
us to develop titles that you really get the most out of.

To send us general feedback, simply send an e-mail to [email protected],


and mention the book title through the subject of your message.

If there is a topic that you have expertise in and you are interested in either writing
or contributing to a book, see our author guide on www.packtpub.com/authors.

Customer support
Now that you are the proud owner of a Packt book, we have a number of things to
help you to get the most from your purchase.

Downloading the example code


You can download the example code files for all Packt books you have purchased
from your account at http://www.packtpub.com. If you purchased this book
elsewhere, you can visit http://www.packtpub.com/support and register to have
the files e-mailed directly to you.

Errata
Although we have taken every care to ensure the accuracy of our content, mistakes
do happen. If you find a mistake in one of our books—maybe a mistake in the text or
the code—we would be grateful if you would report this to us. By doing so, you can
save other readers from frustration and help us improve subsequent versions of this
book. If you find any errata, please report them by visiting http://www.packtpub.
com/support, selecting your book, clicking on the errata submission form link, and
entering the details of your errata. Once your errata are verified, your submission
will be accepted and the errata will be uploaded to our website, or added to any list
of existing errata, under the Errata section of that title.

[6]
Preface

Piracy
Piracy of copyright material on the Internet is an ongoing problem across all
media. At Packt, we take the protection of our copyright and licenses very
seriously. If you come across any illegal copies of our works, in any form,
on the Internet, please provide us with the location address or website name
immediately so that we can pursue a remedy.

Please contact us at [email protected] with a link to the suspected


pirated material.

We appreciate your help in protecting our authors, and our ability to bring you
valuable content.

Questions
You can contact us at [email protected] if you are having a problem
with any aspect of the book, and we will do our best to address it.

Copyright Credits
Some of the contents of this book were originally published by Oracle Technology
Network and http://home.java.net/. They are republished with the permission
of Oracle Corporation.

[7]
EJB 3.0 Database
Persistence
EJB's entity beans are the most common technology for database persistence.
Developing entity EJBs requires a Java IDE, an application server, and a relational
database. Eclipse 3.7 provides wizards for developing entity beans and session
facades. In this chapter, we shall develop EJB 3.0 entity beans including session
facades. We shall deploy the EJB application to WebLogic Server 12c (12.1.1) and
test database persistence with the Oracle database 11g XE.
In this chapter, we shall learn the following:

• Configuring a data source in WebLogic Server (WLS) with the


Oracle database
• Creating tables in the Oracle database
• Creating an Enterprise JavaBeans (EJB) project
• Adding the Java Persistence API (JPA) project facet
• Generating entity beans from database tables
• Creating a session bean facade
• Creating the application.xml file
• Creating a test client
• Packaging and deploying the entity bean application
• Testing the JavaServer Pages (JSP) client
EJB 3.0 Database Persistence

Configuring a data source


In this section we shall configure a data source in Oracle WebLogic Server 12c.
First, download and install the Oracle WebLogic Server from http://www.oracle.
com/technetwork/middleware/ias/downloads/wls-main-097127.html.
Configure the base_domain structure in the WebLogic Server console. We need
to create a data source so that when we deploy and run the application in the server,
the application has access to the database. Log in to the WebLogic Server
Administration Console server for the base_domain domain using the URL
http://localhost:7001/Console. In the base_domain domain structure, expand
the Services tab and select the Data Sources node. In the Data Sources table, click
on New and select Generic Data Source as shown in the following screenshot:

[ 10 ]
Chapter 1

In Create a New JDBC Data Source, specify a data source name and JNDI Name
(for example, jdbc/OracleDS) for the data source. The database shall be accessed
using JNDI Name lookup in the Creating a session bean facade section. Select
Database Type as Oracle and click on Next as shown in the following screenshot:

[ 11 ]
EJB 3.0 Database Persistence

In JDBC Data Source Properties, select Database Driver as Oracle's Driver (Thin
XA). Another JDBC driver may also be selected based on requirements. Refer to
the Selection of the JDBC Driver document available at http://docs.oracle.com/
cd/E14072_01/java.112/e10590/keyprog.htm#i1005587 for selecting a suitable
JDBC driver. Click on Next as shown in the following screenshot:

By default, an XA JDBC driver supports global transactions and uses the Two-Phase
Commit global transaction protocol. Global transactions are recommended for EJBs
using container managed transactions for relation between the JDBC driver (XA or
non-XA) transactionality and EJB container managed transactions. Click on Next as
shown in the following screenshot. (for more information on global transactions, refer
http://docs.oracle.com/cd/E23943_01/web.1111/e13737/transactions.htm):

[ 12 ]
Chapter 1

Specify Database Name as XE, Host Name as localhost, Port as 1521, Database User
Name and Password as OE, and click on Next as shown in the following screenshot:

[ 13 ]
EJB 3.0 Database Persistence

The Driver Class Name textbox and connection URL textbox get configured. Click
on the Test Configuration button to test the database connection. If a connection gets
established the message Connection test succeeded. gets displayed. Click on Next as
shown in the following screenshot:

In Select targets, select the AdminServer option and click on Finish. A data source
gets added to the data sources table. The data source configuration may be modified
by clicking on the data source link as shown in the following screenshot:

[ 14 ]
Chapter 1

Creating tables in the Oracle database


We need to create database tables for database persistence. Create database tables
CATALOG, EDITION, SECTION, and ARTICLE with the following SQL script; the script
can be run from the SQL command line:
CREATE TABLE CATALOG (id INTEGER PRIMARY KEY NOT NULL,
journal VARCHAR(100));
CREATE TABLE EDITION (id INTEGER PRIMARY KEY NOT NULL,
edition VARCHAR(100));
CREATE TABLE SECTION (id VARCHAR(100) PRIMARY KEY NOT NULL,
sectionName VARCHAR(100));
CREATE TABLE ARTICLE(id INTEGER PRIMARY KEY NOT NULL,
title VARCHAR(100));

As Oracle database does not support the autoincrement of primary keys, we need
to create sequences for autoincrementing, one for each table. Create sequences
CATALOG_SEQ, EDITION_SEQ, SECTION_SEQ, and ARTICLE_SEQ with the following
SQL script.

[ 15 ]
EJB 3.0 Database Persistence

CREATE SEQUENCE CATALOG_SEQ MINVALUE 1 START WITH 1 INCREMENT BY 1


NOCACHE;
CREATE SEQUENCE EDITION_SEQ MINVALUE 1 START WITH 1 INCREMENT BY 1
NOCACHE;
CREATE SEQUENCE SECTION_SEQ MINVALUE 1 START WITH 1 INCREMENT BY 1
NOCACHE;
CREATE SEQUENCE ARTICLE_SEQ MINVALUE 1 START WITH 1 INCREMENT BY 1
NOCACHE;

We also need to create join tables between tables. Create join tables using the
following SQL script:
CREATE TABLE CATALOGEDITIONS(catalogId INTEGER, editionId INTEGER);
CREATE TABLE EditionCatalog(editionId INTEGER, catalogId INTEGER);
CREATE TABLE EditionSections (editionId INTEGER, sectionId INTEGER);
CREATE TABLE SectionEdition (sectionId INTEGER, editionId INTEGER);
CREATE TABLE SectionArticles(sectionId INTEGER, articleId INTEGER);
CREATE TABLE ArticleSection(articleId INTEGER, sectionId INTEGER);

Creating an EJB project


Now, we shall create an EJB project to create entity beans.

In Eclipse, go to File | New | Other to create an EJB project. In the New


wizard, select EJB Project from the EJB folder and click on Next as shown
in the following screenshot:

[ 16 ]
Chapter 1

Specify a Project name and click on New Runtime to configure a target runtime
for Oracle WebLogic Server 12c if not already configured, as shown in the
following screenshot:

In New Server Runtime Environment, select the Oracle WebLogic Server 12c
(12.1.1) server, tick Create a new local server checkbox, and then click on
Next as shown in the following screenshot:

[ 17 ]
Random documents with unrelated
content Scribd suggests to you:
was standing in the stern sheets and steadying himself with the
yoke-lines.

"We've lost them, sir," shouted Captain Stormleigh. "They must


have sunk like stones."

The gust that had blown the Bird of Freedom upon her beam ends
had precipitated Rogers and Payne into the bitterly cold water.
Weighed down by their heavy clothing and sea boots, they had sunk
immediately.

Having made fast the second line, Ranworth hurried below to


acquaint Leslie and Guy with the news of the fatality.

"Do not say a word about the insubordination of those poor


fellows," he warned them. "It will do no good. We are not here to
condemn our fellow-creatures."[31]

He could say no more. The suddenness of the calamity had


temporarily unnerved him.

By this time, Leslie had nearly recovered from the effects of the
Bird of Freedom's attempt to turn turtle, but on the back of his head
a lump the size of a pigeon's egg had already appeared, while his
left hand was grazed from wrist to elbow.

"What luck, sir?" asked Captain Stormleigh, as Ranworth came over


the side. "I fear our efforts have met with failure."

"Your efforts?" inquired Ranworth. "Why, Captain, you must have


done splendidly, fetching Desolation Creek in this time. How did you
manage it?"

It was Captain Stormleigh's turn to look perplexed.

"We stuck hard at it, sir," he replied. "But how did you fare over
there?"
And he pointed in the direction of Observation Camp, where Claude
Ranworth's expedition was supposed to be awaiting relief.

"Now, what do you mean, Captain?" demanded Ranworth. "Are you


dreaming, or am I? We haven't been there yet; we've only just
arrived at Desolation Inlet. If you——"

He broke off. The horrible suspicion which had but recently sprung
up in his mind was becoming more and more pronounced.

"This is Tuesday, isn't it?" he asked.

"No, sir, Thursday," replied Captain Stormleigh.

Like a flash Ranworth understood. The stopping of both


chronometer and watch was accounted for. After their exhausting
experience on the ice barrier, the crew of the Bird of Freedom had
slept solidly—not for twelve hours as they had imagined—but for
forty-eight. Thus, while the sleigh was lying inactive, the Polarity had
contrived to extricate herself from the ice, find a passage[32] through
the great barrier by keeping well to the eastward, and so arriving at
the meeting place four hours before Ranworth and his party.

On the other hand, Captain Stormleigh, finding no trace of the


sleigh, had naturally concluded that Ranworth had arrived before
him, and had pushed on to the relief of the original expedition.
When he saw the sleigh returning, as he thought, from the interior
of Nova Cania, he could only come to the conclusion that nothing
but the dead bodies of Claude Ranworth and his companions had
rewarded the heroism and dash of the rescuers.

"But, man, you are in wireless communication with my brother,"


exclaimed Ranworth.

Captain Stormleigh shook his head.


"Up till the day before yesterday—yes," he replied. "From that time
till now all attempts to communicate have proved in vain."

Ranworth clenched his fists.

"There may yet be time," he said. "Ask for two more volunteers,
Captain. We'll make another start at once."[33]

CHAPTER XIII
THE DASH FOR OBSERVATION CAMP

"How's Aubrey Hawke?" asked Ranworth, without pausing in the


midst of his preparations.

"Still pretty groggy, sir," replied Travers.

"H'm; it's a pity. I'm afraid, Leslie, I must ask for your assistance
once more."

"Only too pleased, sir," replied the lad, his eyes sparkling with
delight.

"It's hard lines after having your skull well-nigh cracked, to say
nothing of other hardships."

"I hardly feel it," declared Leslie. "But how about Guy? Can he
come, too?"

"If he's quite willing," assented Ranworth. "It's well to have a


second substitute; but, on the other hand, don't press him, I can get
Baker or Long to assist you."
"What do you take me for?" demanded Guy, when, a minute later,
Leslie broached the matter to him. "Where you go I jolly well go,
too; so that settles the matter. It's only a matter of forty-four miles,
isn't it? The Bird of Freedom will do that on her head."

"I would vastly prefer her to do it on her runners," laughingly


rejoined Leslie. "Anyhow, we're to make a start as soon as possible.
Do you know that we are a couple of days out? It's Thursday instead
of Tuesday."[34]

"It might be Monday for all I know," said Guy. "This midnight sun
business has muddled me up entirely—not that I am complaining. I
only hope we won't have to put in a six months' night; that must be
horrible."

Within three hours of the Bird of Freedom's arrival at Desolation


Inlet, she set out again for her dash to Observation Camp. This time
Ranworth took only one seaman.

For one reason, there was to be no more sea work; the sleigh's
course—except for the ascent of the inlet—lay across the frozen
plains, snow-clad mountains and treacherous crevasses. For another,
the carrying capacity of the Bird of Freedom was somewhat limited.
It was just possible she could accommodate all the survivors of
Claude Ranworth's party. Failing that, two trips would have to be
made.

The new member of the relief expedition sleigh party was an


Irishman—Mike O'Donovan by name. He was a short, thick-set man,
with a little turned-up nose, a long upper lip and a profusion of
shock hair and bushy side whiskers. He was a thoroughly
trustworthy fellow, although inclined to be impetuous. The ship's
company of the Polarity regretted his departure, from the fact that
he was the life of the fo'c'sle.

For three miles the Bird of Freedom threaded her way up the
tortuous and ever-narrowing creek, until further progress by water
was barred by the abrupt termination of the water-way.

Ahead lay a forbidding-looking defile, enclosed on both sides by tall


cliffs. Through the valley thus formed, a glacier wended its way—a
gigantic river of ice mingled with masses of rock brought down by its
resistless march from the lofty interior of Nova Cania.[35]

The cliffs were curious to behold. For eighty or a hundred feet


above the level of the glacier they were perfectly smooth, having
been polished by the flow of the ice river during countless centuries.
No doubt the size of the glacier was steadily diminishing. Above the
ice-worn portion of the cliffs the granite rocks were rugged and
fantastically shaped.

Cautiously the sleigh approached the end of the glacier. Here the
ice slid gently towards the waters of the inlet. The surmounting of
the glacier would be an easy matter provided the ice would bear, for
the surface, mottled by pieces of rock and small stones, afforded a
good grip to her decapod wheels.

Like a seal dragging itself clear of the water, the Bird of Freedom
began the ascent of the glacial river. Under her weight, the ice
creaked ominously.

Quite a hundred feet from the edge, and twenty feet above the sea
level, the sleigh made its way, till its progress was stopped by a
stretch of clear ice terminating at a ridge of large, smooth boulders
extending from side to side of the ravine.

"We want an aeroplane to surmount this lot," observed Guy. "How


is it these stones are found on the surface of the ice instead of at
the bottom?"

Leslie did not know. He appealed to Ranworth.

"In time, by the process known as regelation, the boulders will sink
through the solid ice," he explained. "What has happened fairly
recently is that an avalanche has toppled these stones upon the ice.
See, they have already sunk deeply into it. Nothing short of a
powerful explosion would shift them. Put her on the runners for
crossing this smooth patch, Leslie. We must find the most likely
place to make an attempt to surmount the ridge."

Almost on the extreme right of the ravine, the line[36] of boulders


was lower than elsewhere, averaging four feet above the
surrounding ice. Even four feet of rock seemed to be a formidable
obstacle.

Here Ranworth brought the sleigh to a standstill by putting her


keen-edged steel plate which served as a rudder hard over until it
was at right angles to the two main runners.

"Let us see what is beyond before we tackle this business," he said.

Leaving Leslie in charge, the rest of the crew alighted, and, with
considerable difficulty, for the cold seemed to cut through their fur
clothing and make their limbs sluggish and almost devoid of feeling,
surmounted the line of boulders. Beyond was a heap of small stones
which had quite recently slipped from the cliffs above.

"Hurrah!" shouted Ranworth. "These stones are priceless to us. Set


to and throw a lot of them over the ridge. In half an hour we can
build up an incline sufficient to allow the decapods to get a grip."

Ranworth worked his two assistants hard, but he did not spare
himself. Within the specified time a sloping rampart of stones had
been packed against the outside face of the barrier.

Then, having regained the sleigh, Ranworth gave the order for the
decapod wheels to be brought into play.

The inclined plane served its purpose. Crunching over the loose
stones, the Bird of Freedom rolled ponderously up the hitherto
formidable obstruction.
Barely had she traversed ten yards beyond the surmounted
obstacle, when, with an appalling crash, the lower portion of the
glacier broke off and tumbled into the waters of Desolation Inlet.
Where the sleigh had[37] been but a few seconds previously a
yawning gulf appeared, while the huge mass of ice, floundering
violently in the agitated water, moved slowly towards the sea.

The crew of the Bird of Freedom had just witnessed Nature's


method of creating an iceberg. But there was no chance of watching
further developments in the career of the floating mountains of ice.

The portion of the glacier adjacent to the newly-formed abyss was


in a state of unrest. Ominous cracks appeared in all directions,
accompanied by weird noises as the ice rasped and settled over the
uneven ground.

The sleigh, rocking violently, was still in danger of being engulfed,


in addition to the peril of being crushed by continual falls of rock and
ice from the cliffs above; till, after five minutes of acute suspense,
the crew found themselves on the still firm ice towards the upper
part of the glacier.

"My word," ejaculated Leslie, as he turned over the runners in


place of the decapod wheels. "That was thick while it lasted."

"Never mind," remarked Ranworth. "The rock barrier has gone. It


won't trouble us on the return journey, and by that time the ice will
have subsided sufficiently to allow an easy descent of the water.
Now, keep her at it for all she's worth. It seems plain sailing now."

The Bird of Freedom was now clear of the ravine. Ahead, the
ground ascended with comparative regularity. All around the land
was covered with a thick deposit of ice and snow.

Two hours later, Guy, who had relieved Ranworth at the steering
wheel, reported a ridge of hills ahead, pierced by two narrow
passes.[38]
"Which one shall I make for, sir?" he asked, Ranworth having
rejoined him.

"I don't think it matters much," was the reply. "Both diverge equally
on either side of our current compass course. Take the right hand
one for choice. Ease her down, Leslie, when we approach the defile.
We don't want to barge into anything if we can help it."

Contrary to Ranworth's expectations, the passage through the line


of hills was a fairly easy one. There were evidences of heavy falls of
snow and débris from the cliffs on either hand, but the centre of the
pass was almost unimpeded.

"What's that, sir?" asked Guy, as the sleigh rounded a gentle curve.

Projecting from a hole in the cliffs, was the largest animal the lad
had ever seen. It resembled an elephant, yet in place of short hair it
was covered with long whitish grey fur. The trunk was extended, and
on either side was a curved tusk fully fifteen feet in length.

"Make straight for it," ordered Ranworth.

Guy obeyed, wondering what his companion intended doing. The


sleigh, strong of build and powerfully engined, was not a fit object
with which to ram a gigantic beast such as this.

"Near enough," directed Ranworth. "It's a pity we can't stop and


examine the thing more closely. There's a fortune in those tusks."

"I thought it was alive, sir," said Guy.

"It was, countless centuries ago," replied Ranworth.

"It's a mammoth, and a unique specimen at that. Evidently this one


has only recently been uncovered by the unusual thawing of the ice.
So far as I could see, it was hardly damaged; no wonder you
thought[39] it was alive. Others have been discovered in Northern
Siberia, but not so well preserved, We must have those tusks if
there's time after we've accomplished our mission. One thing is
pretty certain; my brother's party did not come this way. They made
use of the left-hand pass."

"How do you know that, sir?" asked Guy.

"Because Claude would have discovered the mammoth. He did not,


otherwise he would have sent a wireless report of the great
discovery to the Royal Society."

"Unless," Guy ventured to remark, "the mammoth has only


appeared since your brother's expedition passed."

Before Ranworth could reply, for a difficult piece of ground required


careful handling of the steering gear, a dark object rising clearly
above the waste of snow attracted his attention. It was a tent made
of skins with the fur still adhering to them.

Ordering the motor to be stopped, Ranworth put the balance


rudder hard over. For quite ten yards the hard steel ground itself
edgewise over the ice before the sleigh came to a standstill. All
hands alighted and hurried towards the solitary evidence of human
occupation.

Ranworth untied the carefully secured double flaps and entered the
tent.

It was deserted, and contained only a pile of fur rugs, neatly folded
and corded, and a tin box conspicuously labelled:

"For emergency use only. R.P.E."

"That's part of my brother's equipment," said Ranworth. "The


initials signifying 'Ranworth Polar Expedition' prove that. What else
do you deduce from the evidence before us, Leslie?"[40]
"That the expedition came this way, and not by the left-hand pass;
that they were in no great hurry, and lastly that the mammoth we
have just seen was not exposed to view."

"I don't see how you can state that they were in no great hurry,"
expostulated Guy, "although I agree with you on the other points."

"Well, the tent was pitched carefully, the spare stores and furs
deliberately placed in position, and the flaps properly lashed. Men,
famished and in an exhausted condition, would not, and could not
pitch a tent in that way. It evidently points to the fact that Mr.
Ranworth's brother had planned his line of retreat from Observation
Camp and had placed tents in readiness at certain intervals."

"I quite agree," added Ranworth. "So we are bound to fall in with
the remnants of the expedition, should they decide through shortage
of provisions to make a desperate dash for Desolation Inlet."

Upon returning to the Bird of Freedom, the rescue party resumed


their journey. For another five miles the pass extended, the valley
gradually opening out into a vast, rolling plain, glistening white with
frozen snow.

"We must take precautions against snow-blindness," observed


Ranworth, and, visiting every scuttle in turn, he drew a sliding pane
of tinted glass across the various outlooks.

The sleigh was travelling well now, for the frozen ground made
good going. Leaving a cloud of powdered snow in her wake, like the
dust from a swiftly-travelling motor-car on a dry, chalky road, she
was averaging forty miles an hour.

"Hardly any need for compass work now," remarked Ranworth, as


pole after pole, set at intervals[41] of about a mile, flashed by. "Here
are our finger posts. Do you know what they are?"
The lads shook their heads. At first they had failed to notice the
slender, wand-like objects away on their right, but as the track of the
sleigh and that of the poles gradually converged, they could not help
seeing the solitary landmarks.

"Skis," explained Ranworth. "It proves pretty conclusively that the


party found the ordinary Canadian pattern of snow-shoes more
satisfactory. They took plenty of both, I know; so they utilised the
skis for landmarks to guide them on their return journey. Another
half an hour ought to bring us within sight of Observation Camp.
Steady, Leslie," exclaimed Ranworth a few minutes later. "We're
approaching another difficult patch. Ease her down a bit and stand
by to put her on the decapods."

The warning was necessary, for the Bird of Freedom was about to
cross the track of a former glacier.

Centuries previously, a river of ice wended its slow journey to the


sea; but, possibly owing to a volcanic disturbance, the path of the
glacier was diverted in a different direction. The "scour" could be
seen clearly, while the bed was encumbered with boulders of all
sizes, deposited there with the melting of the cut-off portion of the
glacier.

Fortunately the irregularities between the various sized stones had


been partly filled up with frozen snow, so that, by use of her
decapod wheels, the Bird of Freedom could surmount the rough
ground with but little difficulty.

On the far side, a ridge of gaunt rocks had to be avoided,


necessitating a detour of nearly a quarter of a mile.[42]

This done, Leslie was about to transfer the power to the twin aerial
propellers, when Guy exclaimed:

"Look! There's a snow-squall bearing down ahead."


Even as the approach of a squall at sea can be detected by the
peculiar ruffling of the water, so was the approach of the snowstorm
marked by a darkening of the glistening expanse of white; while, like
a deep-greyish, ill-defined cloud, the forefront of the blizzard whirled
rapidly upon the Bird of Freedom.

Well it was that the sleigh had a firm grip by means of the decapod
wheels. Had she been supported solely by her runners, there was a
great possibility of her being swept at a breakneck speed before the
well-nigh irresistible gusts.

The whole fabric of the sleigh quivered as the snow-squall struck it.
In less than ten seconds the observation scuttles exposed to the
direct force of the wind were completely obscured with snow.

"She's holding," announced Ranworth cheerfully. "But there's no


moving until the blizzard is over. It's much too thick to last long."

His surmise was correct, for almost as suddenly as it had begun,


the stinging torrent of snow ceased, and once more the watery sun
shone in the misty sky.

"We'll have to wait until the snow freezes before we can use the
runners," said Ranworth. "Meanwhile, we must do the best we can
with the decapod wheels. I'll go outside and clear the snow from the
scuttle."

As soon as Ranworth returned after completing his task, Leslie


started the motors, and applied the friction band which transmitted
power to the broad-flanged wheels. Instead of "taking up the load,"
the motors stopped abruptly.[43]

"Bother it! What's up now?" asked Ranworth, in a mild panic; for,


much as he prized Leslie's services as an engineer, he had his doubts
whether the lad would be able to tackle a serious breakdown.
Throwing out the clutch, Leslie restarted the engines. They ran
without a hitch, but the moment the clutch was thrown in they
stopped as suddenly as before.

"It's not the fault of the motors, sir," reported Leslie. "I should think
that something jammed outside."

"It's frozen snow," declared Ranworth, after the crew had alighted.
"The cogs are literally stuffed up. Get a crowbar, Guy, and try to shift
the accumulation. And, O'Donovan, bring a couple of spades with
you and cut away some of the drift in front of us. We couldn't be in
a worse place for starting, although it protected us from the full fury
of the storm."

The effect of the wind upon the fallen snow was most remarkable.
As far as the eye could reach, the aspect resembled a frozen sea,
the snow being piled up in long undulations, like the Atlantic rollers
suddenly petrified. One of these snow waves had accumulated in
front of the Bird of Freedom. Even the decapod wheels would fail to
find support upon the soft, slanting bank of snow. Ranworth and
O'Donovan set to work to cut a passage through the obstruction.

"I'll bear a hand, too," volunteered Leslie, and, returning to the


sleigh for another spade, he surmounted the mound of snow and
vigorously began to attack the barrier.

"It's snowing again," declared Guy, as a few flakes drifted past.

"And the wind has changed," added Ranworth. "It's coming from
almost due south."[44]

"So much the better for us—until we start on the return journey,"
declared Leslie. "If we——"

He paused abruptly, and pointed in the direction of the still invisible


Observation Camp. Trudging laboriously through the snow were two
men.[45]
CHAPTER XIV
GOOD WORK IN THE BLIZZARD

"BE sharp, lads," exclaimed Ranworth excitedly, "they're nearly


done for."

With a leap he alighted upon the ground, and, running with the
drifting snow, made towards the newcomers, Leslie and Guy
following at his heels, and O'Donovan bringing up the rear. Running
hardly describes their progress, for at every step the crew of the Bird
of Freedom sank almost to their knees.

The two strangers gave no sign of having seen their rescuers. They
floundered heavily through the snow, with their shoulders hunched
and their heads sunk on their chests. They were enveloped with
furs, while, as they struggled against the falling snow, the front of
their clothing was plastered white with the frozen flakes. The pair
were trudging side by side, dragging a light sleigh by means of cords
slung over their shoulders.

"Ahoy!" shouted Ranworth.

At the sound of his voice, both men raised their heads. Their faces
were black and almost hidden by thick beards.

One of the men raised his arm and gave vent to a feeble shout
which seemed almost stifled in his throat, and pitched inertly upon
the snow. His companion stood stock still for a few seconds, then
rubbed his eyes vigorously as if unable to credit his sense of vision.
[46] Then, extending both arms, he struggled forward for a few paces
and collapsed in a heap.
Ranworth and Guy raised the man to a sitting position, while Leslie
and O'Donovan directed their attention to the unfortunate individual
who had been the first to collapse.

The former was not unconscious, but almost done up through


sheer exhaustion. He was a great, hulking fellow of more than six
feet in height, and too heavy for even the united efforts of the Bird
of Freedom's crew to carry through the snow.

"Lift him on to the sleigh," ordered Ranworth. "You, Guy, steady


him so that he won't fall off. We'll drag him back to the Bird of
Freedom. The other man is unconscious. A few minutes more won't
hurt him much."

It was an easy matter to drag the light sleigh with its burden, but
the difficulty was to get the heavy man up and through the doorway
in the side of the Bird of Freedom. He was incapable of assisting
himself, and his bulk, rendered additionally great by his thick fur
clothing, afforded little grip. The "entry port" of the motor-sleigh was
not intended for men of his girth.

"Can't we raise him on this, sir?" asked Leslie, indicating the little
sleigh on which the man had been brought alongside the Bird of
Freedom.

"Right-o," assented Ranworth. "Get on board, Leslie, and open the


hatchway. Then lower that rope-ladder from the roof."

This Leslie did, then, descending to the interior of the motor-sleigh,


he "stood by," while by dint of strenuous exertion, his three
companions raised the impromptu stretcher and its burden until one
end rested on the sill of the door. Then Leslie assisted in hauling in
the helpless man until the stretcher was[47] almost balanced, half in
and half out of the Bird of Freedom.

"Can you steady him?" asked Ranworth.


Receiving an affirmative reply from Leslie, his companion ascended
the rope-ladder and gained the cabin of the Bird of Freedom by
means of the hatchway in the roof, since the doorway in the side
was completely blocked by the massive form of the helpless man. It
was then a comparatively easy matter to drag the rest of the
stretcher across the sill and deposit its burden upon the floor.

"See to him, O'Donovan," said Ranworth. "Now then, you fellows,


we'll get the other man in. Sling that sleigh out, Guy, we'll want it."

It was now snowing heavily, so much so that by the time the


rescuers retraced their steps to the place where they had left the
second man, his body was almost hidden in the drift.

"I'd rather drag this thing a yard than a mile," thought Leslie, as
with Guy he seized the cords attached to the sleigh and literally
fought his way through the blinding snow. "I wonder how far those
poor chaps have come?"

The second of the two rescued men was short in stature, but of a
massive build, and it took almost as much exertion to get him on
board the Bird of Freedom as it had done to deal with his
companion.

"Attend to this poor chap, Guy," said Ranworth. "Leslie, will you
start the motors? If we don't get a move on pretty smartly, we'll be
snowed in."

"How about this, sir?" asked Leslie, indicating the sleigh which the
two men had been dragging.

"Sling it overboard. It won't be wanted now, I fancy. Cut adrift that


bundle and see what it contains before you get rid of the sleigh."[48]

Leslie did so. The contents of the package told their own tale, for
wrapped up in a piece of fur were two lumps of raw seal's flesh and
some broken bits of mouldy biscuits.
"Starvation rations," commented Ranworth. "Now, Leslie, start her
up; we've no time to lose."

Under the action of the decapod wheels, since the runners were no
longer of any use in the soft snow, the Bird of Freedom resumed her
slow crawl, five miles an hour being the maximum speed under such
adverse conditions.

Meanwhile Guy, following O'Donovan's example, had divested his


patient of most of his clothing, and was rubbing his chest and
forehead with snow. Both men were nearly worn to skeletons. Their
ribs stood out sharply under their skin, which was almost black with
grime, soot, and oil.

Presently the tall man, who had never actually lost consciousness,
feebly made signs that he wanted food.

O'Donovan had already opened a tin of soup and had put the
contents to simmer over a spirit stove. A few spoonfuls revived the
man considerably.

"Where did you leave the rest of the Ranworth Expedition?" asked
Guy.

The man looked at him wonderingly, then shook his head.

Guy repeated the question, receiving in reply some words which he


could not understand.

"It's my opinion, Master Guy," said O'Donovan, "that this chap's


something he ought not to be."

"What do you mean?" asked the lad.

"He is a foreigner, an', bedad, ne'er a foreigner belonged to Mr.


Ranworth's party. They were British to a man, not excepting the few
that belonged to Ould Oireland."[49]
Guy, having seen his patient warmly wrapped up, went to
Ranworth, who was at the steering-wheel.

"One of those men is a foreigner, sir," he reported.

"Never!" ejaculated Ranworth, incredulously; then he added: "It's a


rotten business if he is. Here, Guy, take the wheel a few minutes.
Shout if you want me."

Leaving Guy in charge of the helm, Ranworth approached the


rescued man.

"Feeling better?" he asked.

The patient shook his head and replied in a guttural and


unintelligible language. It bore no resemblance to English. It
certainly was not German, which Ranworth knew fairly well.

"Dansk? Norge? Sverige? Russe?" inquired Ranworth, naming the


northern kingdoms of Europe.

"Yes, I am a Russian," replied the man, speaking in excellent


French. "My name is Ivan Petrovitch, and I am a captain in the
Imperial Guard. My companion there is Dmitri Rapoulin, of the
Moscow University. To whom are we indebted for saving our lives?"

"Members of the Ranworth Relief Expedition," was the reply. "You


have possibly fallen in with the Polar Exploration party under the
direction of my brother, Claude Ranworth?"

The Russian shook his head.

"We knew not that there were others in Nova Cania," he replied.
"We were wrecked three weeks ago."

"Wrecked?" echoed Ranworth in unbelief. "Then how comes it that


we found you so far inland?"
Petrovitch smiled feebly, for he was still very weak, although
steadily regaining his vitality.

"There are other ways of being wrecked than on the seashore,


monsieur," he said. "We were cast upon the barren land from an
airship, in which we were making a[50] scientific voyage. The blizzard
brought us down like a stone. Pouf! In one second all was gone; our
provisions, stores, instruments, in short, everything we possessed
except what we stood upright in, although later on we recovered
several things which had been blown far across the snow.

"We were stranded, and on the verge of starvation, sixty miles


from the coast and without means of communicating with any
wireless station."

"Without provisions—then how did you exist?" asked Ranworth,

"We found a tin of biscuits which had by a miracle escaped


destruction," answered Ivan Petrovitch. "Two days later we fell in
with a flock of seals. Then came the great blizzard."

"The same that played havoc with my brother's resources."

"Undoubtedly," agreed the Russian. "It was frightful. Even we


Russians, accustomed to the cold, were on the point of death. Finally
my friend Dmitri and I resolved to make a dash for the harbour you
English call Desolation Inlet, hoping against hope to find a chance
whaler anchoring there. For days we have eaten nothing but seals'
flesh and pieces of rotten biscuit. Our comrades are in a worse
plight, I fear."

"How many of you are there altogether?" asked Ranworth.

"Ten."

The Russian stretched out his hand for more soup. Ranworth was
silent. He was thinking deeply. The obligations of the relief party
were increased twofold. In the name of humanity he must proceed
to the rescue of the luckless crew of the destroyed airship. At the
most the Bird of Freedom could accommodate sixteen persons only,
including her original complement.[51]

"It will mean two trips," he soliloquised. "The question is: whose
necessity is greater—my brother's or this man's comrades? Dash it!
Of all the intricate problems, this is the stiffest I have had to face."

Finally Ranworth resolved to defer his decision until the Bird of


Freedom arrived at Observation Camp. It would obviously be a kind
of wild-goose chase to penetrate fifteen or twenty miles farther
inland, until the two rescued Russians could give clear and concise
directions as to how to reach the spot where they had left their
unfortunate comrades.

His thoughts were interrupted by a gradually increasing grinding


noise. The snow had been freezing rapidly, and the decapod wheels,
instead of noiselessly gripping the powdery ground, were now
encountering ice strong enough to support the runners.

Accordingly the weight of the sleigh was transferred from the


wheels to the steel runners, the air-propellers were brought into
action, and once more the Bird of Freedom settled down to a steady
pace of forty miles an hour.

"I'll take her, Guy," said Ranworth, relieving the lad at the steering-
wheel. "We ought not to be far off now."

Ten minutes later Leslie received the order to switch off, and the
sleigh, gradually losing way, came to a standstill within ten feet of
the nearest of a cluster of snow huts.

The rescue party had arrived at Observation Camp.[52]


CHAPTER XV
JUST IN TIME

THE spirit of desolation appeared to hover over the camp. There


were no signs of life. The recently fallen snow, now frozen hard,
showed no footprints. Two or three boxes, a pile of fur packages,
and the remains of three dog sleighs were visible, although partly
covered in snow.

On the windward side of the huts, dome-shaped after the


Esquimaux fashion, the snow had drifted almost level with the tops.
The entrances, just wide enough for a man to crawl through, were
curtained with furs.

Guarding against the possibility of the Bird of Freedom being


carried away by a gust, by the simple expedient of putting the
balanced rudder over, Ranworth alighted, and, followed by Leslie and
Guy, made his way to the nearest hut.

On his hands and knees Ranworth crawled through the tunnel-like


entrance and thrust aside the curtain. The interior was in utter
darkness, for his bulk effectively prevented any light from coming in
through the opening.

Fumbling in the pocket of his fur coat, he produced an electric


torch. The light revealed the fact that the hut was deserted. There
were furs and implements lying in confusion. From the roof hung an
oil lamp. Ranworth shook it. The reservoir was empty.[53]

"No good here," he announced with bitter disappointment in his


voice; and, without waiting for his companions to enter, he backed
into the open air.
The second hut, upon examination, proved to be equally
unsatisfactory. It contained only a few seals' skins, frozen as stiff as
a board. The skins had been hurriedly taken from the animals, for
pieces of frozen flesh still adhered to them. Nor had the seals been
killed for the sake of their fur, for the skins were cut into irregular
pieces.

It was quite evident that, like the unfortunate Russians, Claude


Ranworth's party had had to exist on raw seals' flesh; yet the fact
that they had contrived to find these amphibians forty or fifty miles
from the sea was somewhat perplexing.

The third hut had a double curtain. The approach tunnel, too, was
larger. The inner curtain, unlike those in the other huts, was secured.

As Ranworth fumbled to find the lashings, he heard a feeble voice


exclaim:

"There's a bear, Tom; get your rifle, sharp."

"Hold on!" shouted Ranworth.

The curtain was torn aside. A cloud of oil-smelling smoke wafted


out, causing Ranworth to cough and his eyes to fill with water.
Literally gasping for breath, and unable to see, he waited, hunched
upon his hands and knees.

"Hullo, Jack. You've come at last!" exclaimed a drowsy voice.

It was Claude Ranworth's greeting to his brother.

"Yes, old man, we're here," replied John Ranworth, and emerging
from the tunnel he drew himself erect within the hut, while Leslie
and Guy followed.

The sole illumination was derived from a piece of lighted cotton rag
floating in a shallow bowl of oil and[54] tallow. It revealed seven
men, lying close together for mutual warmth and muffled in furs.
Three of them were fast asleep, the others seemed more or less
torpid.

Their gaunt faces, black with smoke from the lamp, betrayed
extreme emaciation. Their rugged, unkempt beards made them look
like decrepit old men.

One of them babbled incoherently, until Ranworth understood that


he was begging for tea.

The scene appalled Leslie and Guy. If this were what Polar research
meant, was the game worth the candle?

"Where are the others?" asked Ranworth.

"Done in—scurvy," was the reply. Then, "We're starving," he added


huskily.

"Come out, all of you," ordered Ranworth.

It was necessary to speak sharply, for the luckless explorers were


too listless to take much interest in anything. Unless they were
promptly moved from the vile atmosphere, and given wholesome
food, they would never reach Desolation Inlet again, much less the
shores of Old England.

One by one the four men who were awake were assisted out and
taken on board the Bird of Freedom. The remaining three, still in the
deep sleep of utter weakness and exhaustion, had to be dragged
into the open air and across the intervening stretch of frozen snow.

Fortunately O'Donovan had plenty of water boiling on the two spirit


stoves, and meat extract and vegetable soup were soon
forthcoming. So quickly did the rescued men wolf the food that they
had to be restrained forcibly.
"Leslie," said Ranworth. "I'm in a regular hole. You see, we are only
just in time here, yet fifteen or twenty miles from us are eight poor
Russians in perhaps a worse plight. Now, if you were in my position,
what would you do?"[55]

"Run your brother's party back to Desolation Inlet; put them on


board the Polarity, and return for the others, sir."

Ranworth shook his head.

"Won't do," he said. "For one thing, there's valuable time lost in
going over the same ground twice. For another, I doubt whether the
motors will hold out without recharging the storage batteries. Of
course, it is highly desirable to get my brother and his comrades
back on board, but I think, with fresh provisions and attendance,
they ought to exist another twenty-four hours."

"I'll remain with them if you like, sir," suggested Leslie.

"I'd rather you came with me," declared Ranworth. "Of course, it is
optional with you, but although I think I could manage to run the
motors, I shouldn't feel equal to the occasion in the event of a
breakdown. Guy, I suppose, would want to go with you; that leaves
only O'Donovan, who, I feel sure, would be quite capable of looking
after our eight patients."

"Eight?" queried Leslie.

"Yes, we must leave the Russian Dmitri. The other one will have to
come with us, both as guide and interpreter, in the unlikely event of
none of the others speaking French. Most Russian officers do, I
know, but I prefer to take no unnecessary chances." O'Donovan,
upon the subject being broached, willingly fell in with his chief's
plans. While the rescued men were resting and regaining strength
after their meal, the sailor busied himself with clearing out one of
the huts. Into this he carried the spare spirit stove, a lamp, oil, and a
supply of provisions sufficient to last a week.
"Look here, Claude," said his brother. "We'll have[56] to leave you
for a little longer. There is a party of Russians stranded over there
somewhere——"

"Russians!" exclaimed Claude Ranworth. "Russians in Nova Cania?


What for?"

"Don't be alarmed, old man," said his brother reassuringly. "They


are not rivals. It is the force of circumstances. At any rate, one
would think that you'd had your fair share of Nova Cania."

Claude gripped his brother's arm.

"Look here," he whispered eagerly. "In that hut where you found
us is a lump of metal wrapped up in a sealskin. It doesn't look very
big, but it's worth a fortune—it's pure platinum. Over yonder the
place swarms with it."

"Hardly worth the risk," declared the matter-of-fact John Ranworth.


"But we must see about getting a move on. You won't hurt for
another few hours. We ought not to be very long. I'll just ask
Petrovitch a few questions. He's quite fit to give lucid information
now."

"North-north-east, I believe, monsieur," said the Russian, in reply


to Ranworth's question as to the approximate position of his
stranded comrades. "I think I could follow our course from the place
where you found us, but from this place—no."

"I don't like retracing our course," declared Ranworth, "but I


suppose we must do it, to avoid a wild-goose chase. Of course, you
know that your tracks must be wiped out by the blizzard?"

"There are peculiar hummocks which I can recognise," said the


Russian.

Suddenly an inspiration flashed across Ranworth's mind.


"I say, Claude," he exclaimed. "Did you happen to notice a cloud of
black smoke away to the nor'-nor'-east about three weeks ago?"[57]

"Yes," replied his brother. "But you weren't anywhere in the vicinity
of Nova Cania at that time?"

"No," replied John Ranworth. "But what was it like? In what


direction did it appear?"

"I can remember it well," continued Claude Ranworth. "It was


about three o'clock in the morning. The sun was obscured, and
overhead was a bank of heavy clouds. I saw a vivid flash reflected
on the underside of the clouds, followed by a dull report. The
interval between the flash and the report was seventy seconds
according to my calculation, for I had no watch available."

"You were always pretty good at counting seconds," remarked


Ranworth. "Then what happened?"

"A heavy cloud of smoke drifted in this direction. It hung about for
nearly two hours before it finally dispersed."

"Can you indicate the actual direction of the flash?"

"Yes," replied Claude. "Do you see that hummock with a peculiar
double crown? If you stand in front of the second hut from here, the
crest of the hummock is practically in line with the place from which
the flash emanated. But why are you so interested, Jack?"

"Because," said John Ranworth, "I have every reason to believe


that the flash you saw was the explosion of the airship in which
these Russians had been travelling."

Claude Ranworth made a gesture of annoyance.

"I thought I had observed an unusual seismic disturbance," he


cried. "In fact, I immediately entered a detailed description of a
supposed volcanic eruption in my log, meaning to send a report to
the Royal Society. By the bye, that reminds me; if anything should
happen to me during your absence, my scientific documents—I'm
afraid I haven't kept them up-to-date[58] —are under my sleeping
bag. But I'm awfully sorry it wasn't an earthquake."

"So am I," agreed Ranworth. "It might have saved me a long


journey."

He snatched up a piece of paper lying on the cabin table and


worked out a short sum. Seventy seconds was the time given by
Claude as having elapsed between the flash and the detonation.
Allowing sound to travel at 365 yards a second, the distance worked
out at just over fourteen miles.

His next step was to take a prismatic compass and set it in position
outside the hut his brother had indicated. By taking a bearing of the
twin-peaked hummock, he was able to fix the direction of the scene
of the disaster to the Russian airship.

O'Donovan having reported that his preparations were complete,


the seven surviving members of Claude Ranworth's party, and the
Russian Dmitri, were taken off the sleigh and placed in the snow
hut.

Without further delay, the Bird of Freedom set off on her fourteen-
mile journey to the rescue of the stranded aviators.

It was as well that Ranworth had thought to question his brother


on the subject of the explosion. By so doing he saved himself the
trouble and loss of valuable time in retracing his course until
Petrovitch could pick up his trail. He also knew that the Russian had
greatly overrated the distance.

Instead of being sixty miles from Desolation Inlet, the wrecked


airship was about fifty miles from that harbour and fourteen from
Observation Camp.
Before the sleigh had put half a mile between itself and the camp,
the arm of a wide creek was passed on the left hand. The water was
frozen over, except here and there where the ice had broken under
its own[59] pressure, and had piled itself up into irregular hummocks.
Around these holes thousands of seals were congregated. The
mystery of how Claude Ranworth's party obtained their seals was
now solved.

"What a pity we didn't know of this before, sir," remarked Leslie.


"The Polarity could have approached much nearer the camp."

"The ice is too thick for that," replied Ranworth. "For another
reason, the creek apparently opens into the sea on the northern
coast of Nova Cania. You must recollect that the southern and the
greater portion of the eastern and western sides of this vast island
have been explored with fair accuracy."

Three times during the next ten miles the decapod wheels had to
be brought into action owing to the rough nature of the ground.

Suddenly Ranworth gave the steering-wheel a vicious turn, which


had the effect of making the Bird of Freedom describe a sharp semi-
circle.

"Stop her!" he ordered.

Leslie obeyed instantly. Although anxious to know the reason of his


chief's apparent eccentricity, he refrained from asking questions.

"Get out a coil of two-inch rope, Guy," said Ranworth. "Unless I am


much mistaken, there is rotten ice ahead. It wants testing badly."

Guy produced the rope. Making a bowline at one end, Ranworth


slipped the loop over his head and shoulders.

"Now," he continued, "I want all hands to pay this out. Keep a
slight strain upon it, and, if I shout, haul away instantly."
Having repeated the instructions in French to Petrovitch, Ranworth
began to walk towards the supposedly dangerous ground, its
position denoted by a difference[60] in colour and a decided dip.
North-west and south-east, as far as the eye could see, these
characteristics were apparent. To avoid the suspected danger, a long
detour would be necessary.

Ranworth proceeded slowly, probing the ground with a crowbar.


Once or twice he stopped and prodded vigorously, until, satisfied
that the ice was capable of bearing a tremendous weight, he
resumed his way.

"The rope's all paid out, sir," reported Guy.

"Very good, you can come this way for another fifty yards. It's
sound enough," was the reply.

Just then Ranworth gave a warning shout, but before the three
helpers could haul in the slack they saw to their horror the ice giving
way all around their isolated comrade.

Throwing up his arms in a vain attempt to recover his balance,


Ranworth disappeared in the newly-formed abyss.

The sudden jerk well-nigh capsized the rest of the party, for the
smooth ice afforded but little foothold. The strain, too, caused the
rope to "render" through their thickly-gloved hands, and had not the
Russian taken the precaution of knotting his end round his waist, the
coil with Ranworth at the end would have been lost for ever. As it
was, the luckless man was dangling fifty feet over the brink of an
unfathomable abyss.

The two lads and their Russian comrade began to haul away. Foot
after foot of rope came home, till Ranworth's voice was heard feebly
shouting to hold on.
The order was instantly obeyed. It was good to hear his voice, for
it seemed marvellous that, after falling fifty feet and being brought
up with a jerk, Ranworth's back had not been broken by the sudden
strain on the rope.[61]

As a matter of fact, his fall was less abrupt than it seemed, judging
by the way in which the ice suddenly gave way all around him.

It was a terrific strain, nevertheless, but, owing to the thickness of


Ranworth's fur coat, the bight of the rope, instead of cutting deeply
into his body, merely jammed against his ribs. It was sufficient to
deprive him of speech temporarily, and it was not until he was
hauled up to within five feet of the brink of the crevasse that he
found speech to warn his rescuers of the new peril that beset him.

"The rope is stranding," he shouted. "Belay if you can, and throw


another rope to me. I may be able to grasp it; if not——"

The unfinished sentence told its own tale.

"We can take the strain, Guy," said Leslie hurriedly. "Cut off and
bring another length of rope—thicker stuff if you can find it; and a
crowbar," he added as an afterthought.

Guy was off as fast as the slippery nature of the ice would permit.
Soon he was back with the required articles.

Deftly the lad hurled the length of rope. It fell short. Another and
yet another cast did he make, but without success. The rope was too
heavy and stiff to be thrown sufficiently far.

Again Ranworth's voice was heard.

"Be quick," he exclaimed. "The edge of the ice is chafing the rope
badly. It won't hold much longer."
"Leslie," said Guy earnestly, "I'm going to take this rope to the
edge and drop it over. There's enough slack in your rope to carry
back to the sleigh. Be sharp!"

Leslie obeyed without protest. Signing to the Russian, the three


walked backwards, slowly letting the[62] damaged rope slip through
their hands as they did so. There was just sufficient to allow a turn
to be taken round one of the brackets supporting the nearmost
runner of the Bird of Freedom.

As soon as this was done, Leslie and Petrovitch were able to assist
Guy. Two bowlines on the bight were made in the new rope; one at
the end, the other ten feet from it. Slipping through the latter, Guy
began to walk towards the abyss, his comrades paying out as he
went.

At about twenty feet from the crevasse Guy threw himself flat upon
the ice. It creaked, but held. Cautiously he wriggled onwards,
pushing the unused bight of the rope before him.

Right to the edge he made his way. Still the ice held. He could see
Ranworth dangling inertly at the end of the first rope. More, he saw
how badly the rope had chafed on the edge of the sharp ice. It
seemed marvellous how the remaining strand could support a man
of Ranworth's weight.

Fortunately the rope was no longer chafing. It had sunk into the ice
and thus had formed a fairly smooth bed for itself, but any attempt
to increase the strain would have been fatal.

Skilfully angling with the disengaged bight of the rope, Guy


succeeded in getting it within reach of Ranworth's legs. Then slowly
hauling up, he had the satisfaction of seeing the rope encircle the
unfortunate man's chest.

"Haul away!" shouted Guy.


Leslie and the Russian did so, till Guy felt the strain transferred
from the stranded rope to the one with which he, too, was secured.

"Stand by!" shouted Guy, then boldly slipping out of his bowline he
commenced to crawl towards his comp- [63] anions, keeping within
arm's length of the rope in case of the ice giving way again.
"All together!" was the cry, when the intrepid lad added his
strength to that of Leslie and Petrovitch on the rope.

Slowly Ranworth's head and shoulders appeared above the brink of


the crevasse, then helpless as a log, the leader of the expedition was
unceremoniously dragged over the edge and across the ice to safety.

Nearly frozen, and sorely bruised, Ranworth was assisted back to


the sleigh. For the time being he was incapable of taking charge.
Upon Guy as helmsman and Leslie as engineer depended the
navigation of the Bird of Freedom, and between them and the object
of their unexpected expedition lay the dreaded and seemingly
impassable crevasse.[64]

CHAPTER XVI
THE CREVASSE

"Look here!" exclaimed Leslie. "Petrovitch must either have crossed


or missed this crevasse somewhere. We're converging upon the
route which he took previous to our finding him. Why not ask him if
he recognises any of the landmarks?"

In very halting, schoolboy French the lads questioned the stalwart


Russian. Petrovitch replied that, so far as he was aware, he crossed
no crevasse, but if the sleigh kept parallel with the dangerous
stretch of ice for a few miles, he might be able to identify his former
route.
"Let her rip, old man!" exclaimed Guy, as he took up his position at
the steering wheel.

Almost at right angles to her previous course, the Bird of Freedom


glided rapidly over the smooth, firm ice, Guy keeping a sharp look-
out, especially towards the sinister, concealed crevasse on his left.

Suddenly Petrovitch grasped the lad by the shoulder.

"Here is our route!" he exclaimed. "I recognise that rock shaped


like a dog's head."

"Then you must have crossed the crevasse without knowing it,"
declared Guy. "See, it still continues in this direction."

The Russian shrugged his shoulders.

"Perhaps," he said. "But in any case it bore my weight, so what did


it matter, then?"[65]

"I'm afraid it matters now," rejoined Guy. "It's pretty evident that it
won't bear the weight of the sleigh and its crew. What do you
propose?"

"We are not two versts from my companions' temporary


habitation," said Petrovitch. "You have a rifle, I see. Why not fire a
few shots to let them know we are close?"

"That won't help us much," objected Leslie, who, having stopped


the motors, had joined in the council.

"If I could walk across, they can do the same," declared the
Russian. "Therefore, let us fire signal guns."

Half a dozen rounds were fired at regular intervals, but no


answering signal came from the direction of the wrecked airship.
Petrovitch, nothing daunted at the failure of his plan, smiled broadly.
Welcome to our website – the ideal destination for book lovers and
knowledge seekers. With a mission to inspire endlessly, we offer a
vast collection of books, ranging from classic literary works to
specialized publications, self-development books, and children's
literature. Each book is a new journey of discovery, expanding
knowledge and enriching the soul of the reade

Our website is not just a platform for buying books, but a bridge
connecting readers to the timeless values of culture and wisdom. With
an elegant, user-friendly interface and an intelligent search system,
we are committed to providing a quick and convenient shopping
experience. Additionally, our special promotions and home delivery
services ensure that you save time and fully enjoy the joy of reading.

Let us accompany you on the journey of exploring knowledge and


personal growth!

textbookfull.com

You might also like