Olá amigos, eu venho pesquisando (e muito) sobre pool de conexão.
Bom desenvolvi um sistema que utiliza JSF+PRIMEFACES-2.2.1+HIBERNATE.3.2.5+GLASSFISH 3.1 e/ou Tomcat 7.
Porque o Glassfish e/ou Tomcat?
Simples … quero poder rodar minha aplicação nos principais servidores web (claro que quero os outros tambem, mas vamos nos ater aos mais utilizados (ou não))
Pois bem, partindo pelo Netbeans basta eu criar as configurações direto por ele que ele proprio se encarrega de criar/configurar automaticamente.
Agora vamos ao meu problema, e de ante mão já falo, quis apenas testar outras configurações para ver como funcionava, portanto posso dizer que a minha configuração não funciona ok 
Primeiro o Tomcat 7, toda e qualquer configuração que fiz me gera o tal perm gen, portanto nem posso dizer o que fiz de errado.
Segundo, vou colocar aqui os meus arquivos para analise, mas vamos lá pessoal, vamos criar um verdadeiro e real tutorial para todos ok (essa é a minha intensão maior ok amigos).
Segue abaixo a minha configuração que não da nenhum erro, somente não grava no banco ok. (lembrem essa minha configuração é fora do “padrão” ok)
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="br.finan.0PU" transaction-type="JTA">
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<jta-data-source>salao</jta-data-source>
<properties>
<property name="hibernate.hbm2ddl.auto" value="update"/>
<property name="hibernate.transaction.factory_class" value="org.hibernate.transaction.JTATransactionFactory" />
</properties>
</persistence-unit>
</persistence>
glassfish-resources.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE resources PUBLIC "-//GlassFish.org//DTD GlassFish Application Server 3.1 Resource Definitions//EN" "http://glassfish.org/dtds/glassfish-resources_1_5.dtd">
<resources>
<jdbc-connection-pool allow-non-component-callers="false"
associate-with-thread="false"
connection-creation-retry-attempts="0"
connection-creation-retry-interval-in-seconds="10"
connection-leak-reclaim="false"
connection-leak-timeout-in-seconds="0"
[b] connection-validation-method="custom-validation" [/b]
datasource-classname="org.postgresql.ds.PGSimpleDataSource"
fail-all-connections="false"
idle-timeout-in-seconds="300"
is-connection-validation-required="false"
is-isolation-level-guaranteed="true"
lazy-connection-association="false"
lazy-connection-enlistment="false"
match-connections="false"
max-connection-usage-count="0"
max-pool-size="32"
max-wait-time-in-millis="60000"
name="post-gre-sql_salao_salaoPool"
non-transactional-connections="false"
pool-resize-quantity="2"
[b] res-type="java.sql.ConnectionPoolDataSource" [/b]
statement-timeout-in-seconds="-1"
steady-pool-size="8"
validate-atmost-once-period-in-seconds="0"
wrap-jdbc-objects="false">
<property name="serverName" value="localhost"/>
<property name="portNumber" value="5432"/>
<property name="databaseName" value="salao"/>
<property name="User" value="salao"/>
<property name="Password" value="salao"/>
<property name="URL" value="jdbc:postgresql://localhost:5432/salao"/>
<property name="driverClass" value="org.postgresql.Driver"/>
</jdbc-connection-pool>
<jdbc-resource enabled="true" jndi-name="salao" object-type="user" pool-name="post-gre-sql_salao_salaoPool"/>
</resources>
Negritei as duas linhas principais para ver o que acontece, mas é ai que o bicho pega.
Claro que achamos varios tutoriais / ajudas, mas vamos concordar que para quem não conheçe é quase impossivel entender/aprender??
Logico que muitos que já sabem vão falar que bobagem e outros que já resolveram os seus problemas seguer vão dar bola, mas olham para atrás e verão que ontem voces não sabiam isso.
Portanto no intuito de “me ajudar” e tambem “ajudar” os outros, vamos tentar criar um guia definitivo de como criar um pool de conexão para os servidores principais que acho sejam Tomcat,Glassfish,Jboss e WebLogic.
Abraços e fiquem com Deus
Jomello
