Search icon CANCEL
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Jakarta EE Application Development
Jakarta EE Application Development

Jakarta EE Application Development: Build enterprise applications with Jakarta CDI, RESTful web services, JSON Binding, persistence, and security , Second Edition

eBook
€15.99 €23.99
Paperback
€29.99
Subscription
Free Trial
Renews at €18.99p/m

What do you get with Print?

Product feature icon Instant access to your digital eBook copy whilst your Print order is Shipped
Product feature icon Paperback book shipped to your preferred address
Product feature icon Download this book in EPUB and PDF formats
Product feature icon Access this title in our online reader with advanced features
Product feature icon DRM FREE - Read whenever, wherever and however you want
Product feature icon AI Assistant (beta) to help accelerate your learning
Table of content icon View table of contents Preview book icon Preview Book

Jakarta EE Application Development

Introduction to Jakarta EE

Jakarta EE consists of a set of Application Programming Interface (API) specifications used to develop server-side enterprise Java applications. Most chapters in this book will cover a single Jakarta EE specification, such as Contexts and Dependency Injection (CDI), which is used to integrate different parts of an application, or Jakarta RESTful Web Services, which is used to develop RESTful web services. We also cover Jakarta EE APIs for processing data in JSON format, as well as Jakarta Faces, which is used to develop web-based user interfaces. We also delve into how to interact with relational databases, implementing two-way communication between clients and servers in web applications, security, and messaging.

In this chapter, we will cover the following topics:

  • Introduction to Jakarta EE
  • Jakarta EE, Java EE, J2EE, and the Spring Framework

Introduction to Jakarta EE

Jakarta EE is a collection of API specifications designed to work together when developing server-side enterprise Java applications. Jakarta EE is a standard for which there are multiple implementations. This fact prevents vendor lock-in since code developed against the Jakarta EE specification can be deployed in any Jakarta EE-compliant implementation.

Jakarta EE is an Eclipse Software Foundation project. Since the Jakarta EE specification is open source, any organization or individual wishing to contribute is free to do so.

Contributing to Jakarta EE

There are many ways of contributing, including participating in discussions and providing suggestions for future versions of Jakarta EE. To do so, one simply needs to subscribe to the appropriate mailing list, which can be done by visiting https://jakarta.ee/connect/mailing-lists/.

In order to subscribe to the mailing list, you need to create a free Eclipse.org account at https://accounts.eclipse.org/user/register.

To go beyond participating in discussions and actually contribute code or documentation, the Eclipse Contributor Agreement must be signed. The Eclipse Contributor Agreement can be found at https://www.eclipse.org/legal/ECA.php.

Jakarta EE APIs

As previously mentioned, Jakarta EE is a collection of API specifications designed to work together when developing server-side enterprise Java applications.

In addition to the full Jakarta EE platform, there are two Jakarta EE profiles that contain a subset of the specifications and APIs included in the full platform. The Jakarta EE Web Profile contains a subset of specifications and APIs suitable for developing web applications. The Jakarta EE Core Profile contains an even smaller subset of specifications and APIs more suitable for developing microservices.

The Jakarta EE core profile APIs include the following:

  • Jakarta Context and Dependency Injection Lite (CDI Lite)
  • Jakarta RESTful Web Services
  • Jakarta JSON Processing
  • Jakarta JSON Binding

The version of Contexts and Dependency Injection API included in the core profile is a subset of the full specification. The Jakarta EE Web Profile APIs include the full CDI specification instead of CDI Lite, plus all other specifications and APIs in the core profile, along with some additional ones:

  • Jakarta Context and Dependency Injection
  • Jakarta Faces
  • Jakarta Persistence
  • Jakarta WebSocket
  • Jakarta Security
  • Jakarta Servlet
  • Jakarta Enterprise Beans Lite

The version of Jakarta Enterprise Beans included in the Web Profile is a subset of the full enterprise beans specification.

The full Jakarta EE Platform includes the full Jakarta Enterprise Beans spec, plus all other specifications and APIs included in the Web Profile, along with some additional ones:

  • Jakarta Enterprise Beans
  • Jakarta Messaging
  • Jakarta Enterprise Web Services

Full list of Jakarta EE APIs

The preceding list is not exhaustive, and only lists some of the most popular Jakarta EE APIs. For an exhaustive list of Jakarta EE APIs, please refer to https://jakarta.ee/specifications/.

Application server vendors or the open-source community need to provide compatible implementations for each Jakarta EE API specification in the preceding list.

One standard, multiple implementations

At its core, Jakarta EE is a specification, a piece of paper, if you will. Implementations of Jakarta EE specifications need to be developed so that application developers can actually develop server-side enterprise Java applications against the Jakarta EE standard.

Each Jakarta EE API can have multiple implementations. The popular Hibernate Object-Relational Mapping tool, for example, is an implementation of Jakarta Persistence, but it is by no means the only one. Other Jakarta Persistence implementations include EclipseLink and Open JPA. Similarly, there are multiple implementations of every single Jakarta EE specification.

Jakarta EE applications are typically deployed to an application server. Some popular application servers include JBoss, Websphere, Weblogic, and GlassFish. Each application server is considered to be a Jakarta EE implementation. Application server vendors either develop their own implementations of the several Jakarta EE specifications or choose to include an existing implementation.

Application developers benefit from the Jakarta EE standard by not being tied to a specific Jakarta EE implementation. As long as an application is developed against the standard Jakarta EE APIs, it should be very portable across application server vendors.

Application server vendors then bundle a set of Jakarta EE API implementations together as part of their application server offerings. Since each implementation is compliant with the corresponding Jakarta EE specification, code developed against one implementation can run unmodified against any other implementation, avoiding a vendor lock-in.

The following table lists some popular Jakarta EE implementations:

Jakarta EE Implementation

Vendor

License

URL

Apache Tomee

Tomitribe

Apache License, Version 2.0

https://tomee.apache.org/

Eclipse GlassFish

Eclipse Foundation

Eclipse Public License - v 2.0

https://glassfish.org/

IBM Websphere Liberty

IBM

Commercial

https://www.ibm.com/products/websphere-liberty

JBoss Enterprise Application Platform

Red Hat

Commercial

https://www.redhat.com/en/technologies/jboss-middleware/application-platform

Open Liberty

IBM

Eclipse Public License 2.0

https://openliberty.io/

Payara Server Community

Payara Services Ltd

Dual licensed :CDDL 1.1 / GPL v2 + Classpath Exception

https://www.payara.fish/products/payara-platform-community/

Payara Server Enterprise

Payara Services Ltd

Commercial

https://www.payara.fish/products/payara-platform-community/

Wildfly

Red Hat

LGPL v2.1

https://www.wildfly.org/

Table 1.1 – Popular Jakarta EE Implementations

Note

For the full list of Jakarta EE-compatible implementations, please refer to https://jakarta.ee/compatibility/.

For most examples in this book, we will be using GlassFish as our Jakarta EE runtime. This is because it is a high-quality, up-to-date, open-source implementation not tied to any particular vendor; all examples should be deployable to any Jakarta EE-compliant implementation.

Jakarta EE, Java EE, J2EE, and the Spring Framework

In 2017, Oracle donated Java EE to the Eclipse Foundation and as part of the process, Java EE was renamed Jakarta EE. The donation to the Eclipse Foundation meant that the Jakarta EE specification became truly vendor-neutral, with no single vendor having control over the specifications.

Java EE, in turn, was introduced back in 2006 by Sun Microsystems. The first version of Java EE was Java EE 5. Java EE replaced J2EE; the last version of J2EE was J2EE 1.4, released back in 2003. Even though J2EE can be considered obsolete technology, having been superseded by Java EE several years ago and then renamed Jakarta EE, the term J2EE refuses to die. Many individuals to this day still refer to Jakarta EE as J2EE and many companies advertise on their websites and job boards that they are looking for “J2EE developers”, seemingly unaware that they are referring to a technology that has been obsolete for several years. The current correct term for the technology is Jakarta EE.

Additionally, the term J2EE has become a “catch-all” term for any server-side Java technology; frequently Spring applications are referred to as J2EE applications. Spring is not and never has been J2EE. As a matter of fact, Spring was created by Rod Johnson as an alternative to J2EE back in 2002. Just as with Jakarta EE, Spring applications are frequently erroneously referred to as J2EE applications.

Summary

In this chapter, we provided an introduction to Jakarta EE, outlining a list of several technologies and APIs included with Jakarta EE:

  • We covered how Jakarta EE is openly developed both by software vendors and the Java community at large via the Eclipse Software Foundation
  • We explained how there are multiple implementations of Jakarta EE, a fact that avoids vendor lock-in and allows us to easily migrate our Jakarta EE applications from one implementation to another
  • We cleared up the confusion between Jakarta EE, Java EE, J2EE, and Spring, explaining how Jakarta EE and Spring applications are frequently referred to as J2EE applications, even though J2EE has been obsolete for several years

Now that we’ve had a general overview of Jakarta EE, we are ready to start learning how to use Jakarta EE to develop our applications.

Left arrow icon Right arrow icon
Download code icon Download Code

Key benefits

  • Craft microservices using standard Jakarta EE technologies such as Jakarta RESTful Web Services, JSON Processing, and JSON Binding
  • Design web-based applications with Jakarta Faces
  • Harness Jakarta EE technologies such as Jakarta Enterprise Beans and Jakarta Messaging to build enterprise applications
  • Purchase of the print or Kindle book includes a free PDF eBook

Description

Jakarta EE stands as a robust standard with multiple implementations, presenting developers with a versatile toolkit for building enterprise applications. However, despite the advantages of enterprise application development, vendor lock-in remains a concern for many developers, limiting flexibility and interoperability across diverse environments. This Jakarta EE application development guide addresses the challenge of vendor lock-in by offering comprehensive coverage of the major Jakarta EE APIs and goes beyond the basics to help you develop applications deployable on any Jakarta EE compliant runtime. This book introduces you to JSON Processing and JSON Binding and shows you how the Model API and the Streaming API are used to process JSON data. You’ll then explore additional Jakarta EE APIs, such as WebSocket and Messaging, for loosely coupled, asynchronous communication and discover ways to secure applications with the Jakarta EE Security API. Finally, you'll learn about Jakarta RESTful web service development and techniques to develop cloud-ready microservices in Jakarta EE. By the end of this book, you'll have developed the skills to craft secure, scalable, and cloud-native microservices that solve modern enterprise challenges.

Who is this book for?

This book is for Java developers looking to learn Jakarta EE and expand their skill set. You’ll also find this book useful if you are familiar with Java EE and want to stay abreast of the latest version of the Jakarta EE specification. Knowledge of core Java concepts such as OOP, data types, control flow, and basic collections will be beneficial.

What you will learn

  • Design microservices architectures with a clear separation of concerns
  • Understand the contexts and dependency injection (CDI) specification to develop Java EE applications
  • Use Jakarta Faces to create interactive web applications using component-based development
  • Understand the steps involved in handling JSON data with Jakarta JSON Processing and Binding
  • Design secure RESTful web services using server-sent events (SSE) for real-time data updates
  • Secure your applications with the Jakarta Security API
  • Build message-driven applications with Jakarta Messaging
Estimated delivery fee Deliver to Luxembourg

Premium delivery 7 - 10 business days

€17.95
(Includes tracking information)

Product Details

Country selected
Publication date, Length, Edition, Language, ISBN-13
Publication date : Feb 29, 2024
Length: 316 pages
Edition : 2nd
Language : English
ISBN-13 : 9781835085264
Category :
Languages :
Tools :

What do you get with Print?

Product feature icon Instant access to your digital eBook copy whilst your Print order is Shipped
Product feature icon Paperback book shipped to your preferred address
Product feature icon Download this book in EPUB and PDF formats
Product feature icon Access this title in our online reader with advanced features
Product feature icon DRM FREE - Read whenever, wherever and however you want
Product feature icon AI Assistant (beta) to help accelerate your learning
Estimated delivery fee Deliver to Luxembourg

Premium delivery 7 - 10 business days

€17.95
(Includes tracking information)

Product Details

Publication date : Feb 29, 2024
Length: 316 pages
Edition : 2nd
Language : English
ISBN-13 : 9781835085264
Category :
Languages :
Tools :

Packt Subscriptions

See our plans and pricing
Modal Close icon
€18.99 billed monthly
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Simple pricing, no contract
€189.99 billed annually
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just €5 each
Feature tick icon Exclusive print discounts
€264.99 billed in 18 months
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just €5 each
Feature tick icon Exclusive print discounts

Frequently bought together


Stars icon
Total 93.97
Mastering the Java Virtual Machine
€29.99
Jakarta EE Application Development
€29.99
Microservices with Spring Boot 3 and Spring Cloud, Third Edition
€33.99
Total 93.97 Stars icon

Table of Contents

17 Chapters
Chapter 1: Introduction to Jakarta EE Chevron down icon Chevron up icon
Chapter 2: Contexts and Dependency Injection Chevron down icon Chevron up icon
Chapter 3: Jakarta RESTful Web Services Chevron down icon Chevron up icon
Chapter 4: JSON Processing and JSON Binding Chevron down icon Chevron up icon
Chapter 5: Microservices Development with Jakarta EE Chevron down icon Chevron up icon
Chapter 6: Jakarta Faces Chevron down icon Chevron up icon
Chapter 7: Additional Jakarta Faces Features Chevron down icon Chevron up icon
Chapter 8: Object Relational Mapping with Jakarta Persistence Chevron down icon Chevron up icon
Chapter 9: WebSockets Chevron down icon Chevron up icon
Chapter 10: Securing Jakarta EE Applications Chevron down icon Chevron up icon
Chapter 11: Servlet Development and Deployment Chevron down icon Chevron up icon
Chapter 12: Jakarta Enterprise Beans Chevron down icon Chevron up icon
Chapter 13: Jakarta Messaging Chevron down icon Chevron up icon
Chapter 14: Web Services with Jakarta XML Web Services Chevron down icon Chevron up icon
Chapter 15: Putting it All Together Chevron down icon Chevron up icon
Index Chevron down icon Chevron up icon
Other Books You May Enjoy Chevron down icon Chevron up icon

Customer reviews

Rating distribution
Full star icon Full star icon Full star icon Full star icon Full star icon 5
(2 Ratings)
5 star 100%
4 star 0%
3 star 0%
2 star 0%
1 star 0%
David K Jun 24, 2024
Full star icon Full star icon Full star icon Full star icon Full star icon 5
As an experienced developer who has navigated the evolving landscape of enterprise Java, I wholeheartedly recommend this book to budding and seasoned professionals. This book is an essential guide for anyone looking to master the Jakarta EE platform and develop robust, scalable enterprise applications.
Amazon Verified review Amazon
Amol Gote Jul 08, 2024
Full star icon Full star icon Full star icon Full star icon Full star icon 5
My name is Amol Gote, and I have extensive experience building microservices in .NET and Java. "Jakarta Application Development - Second Edition" is a must-read for any Java developer eager to master Jakarta EE or update their Java EE skills. This book comprehensively covers the latest Jakarta EE specifications, such as Jakarta Faces, Jakarta Persistence, and Jakarta Enterprise JavaBeans. The chapters are well-organized, starting with an introduction to Jakarta EE and progressively tackling more complex topics like CDI, JSON Processing, and RESTful Web Services. Each section is packed with practical examples, ensuring readers can see how to apply the concepts in real-world scenarios.What sets this book apart is its clarity and depth. Each chapter delves deeply into its subject matter, providing a robust understanding of foundational and advanced topics. For instance, the chapters on microservices development and securing Jakarta EE applications are particularly insightful, offering valuable frameworks and best practices for modern application development. The authors have done an excellent job updating the content to reflect the latest advancements in Jakarta EE, making this book an indispensable resource for staying current in the field.This book caters to various Java developers, from newcomers to experienced professionals. Those new to Jakarta EE will find the clear explanations and structured learning path particularly helpful, while experienced Java EE developers will appreciate the detailed updates and advanced features. Whether you're developing cloud or traditional applications, this book equips you with the tools and knowledge needed to excel in Jakarta EE development. I highly recommend it for its thoroughness, practical insights, and up-to-date content.
Amazon Verified review Amazon
Get free access to Packt library with over 7500+ books and video courses for 7 days!
Start Free Trial

FAQs

What is the delivery time and cost of print book? Chevron down icon Chevron up icon

Shipping Details

USA:

'

Economy: Delivery to most addresses in the US within 10-15 business days

Premium: Trackable Delivery to most addresses in the US within 3-8 business days

UK:

Economy: Delivery to most addresses in the U.K. within 7-9 business days.
Shipments are not trackable

Premium: Trackable delivery to most addresses in the U.K. within 3-4 business days!
Add one extra business day for deliveries to Northern Ireland and Scottish Highlands and islands

EU:

Premium: Trackable delivery to most EU destinations within 4-9 business days.

Australia:

Economy: Can deliver to P. O. Boxes and private residences.
Trackable service with delivery to addresses in Australia only.
Delivery time ranges from 7-9 business days for VIC and 8-10 business days for Interstate metro
Delivery time is up to 15 business days for remote areas of WA, NT & QLD.

Premium: Delivery to addresses in Australia only
Trackable delivery to most P. O. Boxes and private residences in Australia within 4-5 days based on the distance to a destination following dispatch.

India:

Premium: Delivery to most Indian addresses within 5-6 business days

Rest of the World:

Premium: Countries in the American continent: Trackable delivery to most countries within 4-7 business days

Asia:

Premium: Delivery to most Asian addresses within 5-9 business days

Disclaimer:
All orders received before 5 PM U.K time would start printing from the next business day. So the estimated delivery times start from the next day as well. Orders received after 5 PM U.K time (in our internal systems) on a business day or anytime on the weekend will begin printing the second to next business day. For example, an order placed at 11 AM today will begin printing tomorrow, whereas an order placed at 9 PM tonight will begin printing the day after tomorrow.


Unfortunately, due to several restrictions, we are unable to ship to the following countries:

  1. Afghanistan
  2. American Samoa
  3. Belarus
  4. Brunei Darussalam
  5. Central African Republic
  6. The Democratic Republic of Congo
  7. Eritrea
  8. Guinea-bissau
  9. Iran
  10. Lebanon
  11. Libiya Arab Jamahriya
  12. Somalia
  13. Sudan
  14. Russian Federation
  15. Syrian Arab Republic
  16. Ukraine
  17. Venezuela
What is custom duty/charge? Chevron down icon Chevron up icon

Customs duty are charges levied on goods when they cross international borders. It is a tax that is imposed on imported goods. These duties are charged by special authorities and bodies created by local governments and are meant to protect local industries, economies, and businesses.

Do I have to pay customs charges for the print book order? Chevron down icon Chevron up icon

The orders shipped to the countries that are listed under EU27 will not bear custom charges. They are paid by Packt as part of the order.

List of EU27 countries: www.gov.uk/eu-eea:

A custom duty or localized taxes may be applicable on the shipment and would be charged by the recipient country outside of the EU27 which should be paid by the customer and these duties are not included in the shipping charges been charged on the order.

How do I know my custom duty charges? Chevron down icon Chevron up icon

The amount of duty payable varies greatly depending on the imported goods, the country of origin and several other factors like the total invoice amount or dimensions like weight, and other such criteria applicable in your country.

For example:

  • If you live in Mexico, and the declared value of your ordered items is over $ 50, for you to receive a package, you will have to pay additional import tax of 19% which will be $ 9.50 to the courier service.
  • Whereas if you live in Turkey, and the declared value of your ordered items is over € 22, for you to receive a package, you will have to pay additional import tax of 18% which will be € 3.96 to the courier service.
How can I cancel my order? Chevron down icon Chevron up icon

Cancellation Policy for Published Printed Books:

You can cancel any order within 1 hour of placing the order. Simply contact customercare@packt.com with your order details or payment transaction id. If your order has already started the shipment process, we will do our best to stop it. However, if it is already on the way to you then when you receive it, you can contact us at customercare@packt.com using the returns and refund process.

Please understand that Packt Publishing cannot provide refunds or cancel any order except for the cases described in our Return Policy (i.e. Packt Publishing agrees to replace your printed book because it arrives damaged or material defect in book), Packt Publishing will not accept returns.

What is your returns and refunds policy? Chevron down icon Chevron up icon

Return Policy:

We want you to be happy with your purchase from Packtpub.com. We will not hassle you with returning print books to us. If the print book you receive from us is incorrect, damaged, doesn't work or is unacceptably late, please contact Customer Relations Team on customercare@packt.com with the order number and issue details as explained below:

  1. If you ordered (eBook, Video or Print Book) incorrectly or accidentally, please contact Customer Relations Team on customercare@packt.com within one hour of placing the order and we will replace/refund you the item cost.
  2. Sadly, if your eBook or Video file is faulty or a fault occurs during the eBook or Video being made available to you, i.e. during download then you should contact Customer Relations Team within 14 days of purchase on customercare@packt.com who will be able to resolve this issue for you.
  3. You will have a choice of replacement or refund of the problem items.(damaged, defective or incorrect)
  4. Once Customer Care Team confirms that you will be refunded, you should receive the refund within 10 to 12 working days.
  5. If you are only requesting a refund of one book from a multiple order, then we will refund you the appropriate single item.
  6. Where the items were shipped under a free shipping offer, there will be no shipping costs to refund.

On the off chance your printed book arrives damaged, with book material defect, contact our Customer Relation Team on customercare@packt.com within 14 days of receipt of the book with appropriate evidence of damage and we will work with you to secure a replacement copy, if necessary. Please note that each printed book you order from us is individually made by Packt's professional book-printing partner which is on a print-on-demand basis.

What tax is charged? Chevron down icon Chevron up icon

Currently, no tax is charged on the purchase of any print book (subject to change based on the laws and regulations). A localized VAT fee is charged only to our European and UK customers on eBooks, Video and subscriptions that they buy. GST is charged to Indian customers for eBooks and video purchases.

What payment methods can I use? Chevron down icon Chevron up icon

You can pay with the following card types:

  1. Visa Debit
  2. Visa Credit
  3. MasterCard
  4. PayPal
What is the delivery time and cost of print books? Chevron down icon Chevron up icon

Shipping Details

USA:

'

Economy: Delivery to most addresses in the US within 10-15 business days

Premium: Trackable Delivery to most addresses in the US within 3-8 business days

UK:

Economy: Delivery to most addresses in the U.K. within 7-9 business days.
Shipments are not trackable

Premium: Trackable delivery to most addresses in the U.K. within 3-4 business days!
Add one extra business day for deliveries to Northern Ireland and Scottish Highlands and islands

EU:

Premium: Trackable delivery to most EU destinations within 4-9 business days.

Australia:

Economy: Can deliver to P. O. Boxes and private residences.
Trackable service with delivery to addresses in Australia only.
Delivery time ranges from 7-9 business days for VIC and 8-10 business days for Interstate metro
Delivery time is up to 15 business days for remote areas of WA, NT & QLD.

Premium: Delivery to addresses in Australia only
Trackable delivery to most P. O. Boxes and private residences in Australia within 4-5 days based on the distance to a destination following dispatch.

India:

Premium: Delivery to most Indian addresses within 5-6 business days

Rest of the World:

Premium: Countries in the American continent: Trackable delivery to most countries within 4-7 business days

Asia:

Premium: Delivery to most Asian addresses within 5-9 business days

Disclaimer:
All orders received before 5 PM U.K time would start printing from the next business day. So the estimated delivery times start from the next day as well. Orders received after 5 PM U.K time (in our internal systems) on a business day or anytime on the weekend will begin printing the second to next business day. For example, an order placed at 11 AM today will begin printing tomorrow, whereas an order placed at 9 PM tonight will begin printing the day after tomorrow.


Unfortunately, due to several restrictions, we are unable to ship to the following countries:

  1. Afghanistan
  2. American Samoa
  3. Belarus
  4. Brunei Darussalam
  5. Central African Republic
  6. The Democratic Republic of Congo
  7. Eritrea
  8. Guinea-bissau
  9. Iran
  10. Lebanon
  11. Libiya Arab Jamahriya
  12. Somalia
  13. Sudan
  14. Russian Federation
  15. Syrian Arab Republic
  16. Ukraine
  17. Venezuela