type=page
status=published
title={productName} Application Development Guide, Release 7
next=preface.html
prev=lot.html
~~~~~~

= {productName} Application Development Guide, Release 7

[[eclipse-glassfish-server]]
== {productName}

Application Development Guide

Release 7

Contributed 2018 - 2022

This Application Development Guide describes how to create and run Java
Platform, Enterprise Edition (Jakarta EE platform) applications that follow
the open Java standards model for Jakarta EE components and APIs in the
{productName} environment. Topics include
developer tools, security, and debugging. This book is intended for use
by software developers who create, assemble, and deploy Jakarta EE
applications using Oracle servers and software.

[[sthref1]]

'''''

{productName} Application Development Guide,
Release 7

Copyright © 2013, 2019 Oracle and/or its affiliates. All rights reserved.

This program and the accompanying materials are made available under the
terms of the Eclipse Public License v. 2.0, which is available at
http://www.eclipse.org/legal/epl-2.0.

SPDX-License-Identifier: EPL-2.0

Oracle and Java are registered trademarks of Oracle and/or its
affiliates. Other names may be trademarks of their respective owners.

Intel and Intel Xeon are trademarks or registered trademarks of Intel
Corporation. All SPARC trademarks are used under license and are
trademarks or registered trademarks of SPARC International, Inc. AMD,
Opteron, the AMD logo, and the AMD Opteron logo are trademarks or
registered trademarks of Advanced Micro Devices. UNIX is a registered
trademark of The Open Group.

image:img/eclipse_foundation_logo_tiny.png["Eclipse Logo"]
