Я думаю, что есть ряд проблем.
Во-первых, файл persistence.xml выглядит немного странно, я бы ожидал что-то вроде этого:
<?xml version="1.0" encoding="UTF-8"?>
<persistence version="1.0" xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd">
<persistence-unit name="JPAProject2" transaction-type="JTA">
<provider>oracle.toplink.essentials.PersistenceProvider</provider>
<jta-data-source>jdbc/sample</jta-data-source>
<class>model.Customer</class>
</persistence-unit>
</persistence>
То есть поле провайдера и поля, необходимые для указания того, что вы работаете на сервере (jta-data-source). Конечно, jta-data-source должен ссылаться на источник данных, который вы настроили в Glassfish.
Далее, я думаю, довольно странно, что ваше приложение работает на портах 4848, обычно это административный приемник Glassfish, и я ожидаю, что там будет работать только консоль администратора. Вы перенастроили порты вашего Glassfish?
Одна вещь, которая озадачивает меня, это то, как вы продвинулись так далеко с такой конфигурацией: похоже, что Toplink считает, что должен связаться с Derby, работающим на localhost (порт 1527 является стандартным для Derby), поэтому, возможно, есть еще какой-то другой файл persistence.xml плавать вокруг? Пожалуйста, проверьте это.
Об учебных пособиях: я часто использую Glassfish, но всегда с NetBeans. Вот несколько ссылок на учебники с сайта Netbeans, они могут вам помочь.
Может быть, проще всего установить Netbeans, следовать учебным курсам и просмотреть все файлы, которые генерируются, Netbeans автоматизирует создание многих этих вещей, и я не знаю, какую степень помощи Eclipse дает вам эти файлы.
Вот довольно полное руководство на основе Eclipse: http://wiki.eclipse.org/EclipseLink/Examples/JPA/GlassFishV2_Web_Tutorial
Последнее: учебник по GF3 должен помочь вам освоить GF2, по крайней мере, для этих технологий (сервлет и JPA). Хорошо, GF3 поставляется с Eclipselink вместо Toplink Essentials, но эти два совсем не отличаются.
Редактировать: когда я увидел, что TLE пытается подключиться к Derby на localhost, я забыл часть о MySQL. Это было исправлено - ссылки на то, как начать Дерби, были удалены.