JNDI Datasource não encontrado. [Not binding factory to JNDI, no JNDI]

Olá pessoal, to precisando de uma big ajuda…

Estou desenvolvendo um aplicação Web, dividida em 2 projetos, o primeiro é um JPA Project denominado MeuProjetoRegras, e o segundo é um JSF Project denominado MeuProjetoWeb

Uso JBoss 5.0 como servidor de aplicação;

As referência entre ambos estão funcionando.

Meu problema é o seguinte, eu não estou conseguindo Instanciar a EnityManagerFactory.

meu arquivos estão assim:

MeuProjetoRegras\src\META-INF\persistence.xml

[color=green]<?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=“MeuProjetoRegras” transaction-type=“JTA”>

	&lt;provider&gt;org.hibernate.ejb.HibernatePersistence&lt;/provider&gt; 
	&lt;jta-data-source&gt;java:/MeuProjetoWebDS&lt;/jta-data-source&gt;
	
	&lt;properties&gt;
	  &lt;property name="hibernate.archive.autodetection" value="class, hbm"/&gt;
	  &lt;property name="hibernate.hbm2ddl.auto" value="none" /&gt; 
	  &lt;property name="hibernate.show_sql" value="true"/&gt;
	  &lt;property name="hibernate.format_sql" value="true" /&gt; 
	  &lt;property name="hibernate.dialect" value="org.hibernate.dialect.OracleDialect" /&gt; 
	  &lt;property name="hibernate.connection.driver_class" value="oracle.jdbc.driver.OracleDriver" /&gt; 
	  &lt;property name="hibernate.connection.url" value="jdbc:oracle:thin:@localhost:DB" /&gt; 
	  &lt;property name="hibernate.connection.username" value="x" /&gt; 
	  &lt;property name="hibernate.connection.password" value="y" /&gt; 
	&lt;/properties&gt;

&lt;/persistence-unit&gt;

</persistence>[/color]

MeuProjetoWeb\WebContent\META-INF\MeuProjetoWeb-ds.xml

[color=green][color=#444444]<?xml version="1.0" encoding="UTF-8"?>

<datasources>

<local-tx-datasource>
<jndi-name>MeuProjetoWebDS</jndi-name>
<connection-url>jdbc:oracle:thin:@localhost:DB</connection-url>
<driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
<user-name>x</user-name>
<password>y</password>

</local-tx-datasource>

</datasources>[/color][/color]

MeuProjetoRegras\src\utils\PersistenceUtil.java

[color=darkblue]public final class PersistenceUtil {
private static final String UNIT_NAME = “MeuProjetoRegras”;

private static EntityManagerFactory FACTORY;  
  
public static final ThreadLocal&lt;EntityManager&gt; SESSION = new ThreadLocal&lt;EntityManager&gt;();  
  
public static EntityManager currentEntityManager() {  
    EntityManager manager = (EntityManager) SESSION.get();  
    if (manager == null) {    
        loadInstance();  
        manager = FACTORY.createEntityManager();  
        SESSION.set(manager);  
    }  
    return manager;  
}  
  
public static void closeEntityManager() {  
    EntityManager manager = (EntityManager) SESSION.get();  
    if (manager != null) {  
        manager.close();  
    }  
    SESSION.set(null);  
}  

private static synchronized void loadInstance() {  
    if (FACTORY == null) {  
        FACTORY = Persistence.createEntityManagerFactory(UNIT_NAME);
    }  
}  

}[/color]

O Jboss sobe direito sem dar nenhum erro ou Warnning, porem quando eu executo essa linha aki:

FACTORY = Persistence.createEntityManagerFactory(UNIT_NAME);

é lançada a seguinte excessão:

[color=red]16:34:49,632 INFO [SessionFactoryImpl] building session factory
16:34:49,866 INFO [SessionFactoryObjectFactory] Not binding factory to JNDI, no JNDI name configured
16:35:30,945 ERROR [application] java.lang.ExceptionInInitializerError
javax.faces.el.EvaluationException: java.lang.ExceptionInInitializerError
at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:102)
at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:102)
at javax.faces.component.UICommand.broadcast(UICommand.java:387)
at org.ajax4jsf.component.AjaxActionComponent.broadcast(AjaxActionComponent.java:55)
at org.ajax4jsf.component.AjaxViewRoot.processEvents(AjaxViewRoot.java:321)
at org.ajax4jsf.component.AjaxViewRoot.broadcastEvents(AjaxViewRoot.java:296)
at org.ajax4jsf.component.AjaxViewRoot.processPhase(AjaxViewRoot.java:253)
at org.ajax4jsf.component.AjaxViewRoot.processApplication(AjaxViewRoot.java:466)
at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:82)
at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)
at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:177)
at org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:267)
at org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:380)
at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:507)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:235)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:189)
at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:91)
at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:92)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:325)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:828)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:601)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:619)
Caused by: java.lang.ExceptionInInitializerError
at br.gov.infraero.tecaplus.view.EmbalagemFlow.salvar(EmbalagemFlow.java:21)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.el.parser.AstValue.invoke(AstValue.java:170)
at org.apache.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:276)
at org.apache.jasper.el.JspMethodExpression.invoke(JspMethodExpression.java:68)
at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:88)
… 36 more
Caused by: javax.persistence.PersistenceException: [PersistenceUnit: TecaplusRegras] Unable to build EntityManagerFactory
at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:677)
at org.hibernate.ejb.HibernatePersistence.createEntityManagerFactory(HibernatePersistence.java:126)
at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:52)
at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:34)
at utils.PersistenceUtil.loadInstance(PersistenceUtil.java:36)
at utils.PersistenceUtil.currentEntityManager(PersistenceUtil.java:19)
at dao.EmbalagemDao.<init>(EmbalagemDao.java:13)
at dao.EmbalagemDao.<clinit>(EmbalagemDao.java:14)
… 45 more
Caused by: org.hibernate.HibernateException: The chosen transaction strategy requires access to the JTA TransactionManager
at org.hibernate.impl.SessionFactoryImpl.<init>(SessionFactoryImpl.java:361)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1327)
at org.hibernate.cfg.AnnotationConfiguration.buildSessionFactory(AnnotationConfiguration.java:867)
at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:669)
… 52 more[/color]

E preciso de ajuda pois estou com esse erro a alguns dias…

Detalhe o persistence.xml e o PersistenceUtil.java estão funcionando, pq os testei em contexto Desktop sem o <jta-data-source> e funcionou tudo certinho

Então deduzo que seja erro de JNDI, mas não sei o por que

se puderem me ajudar eu agradeço muito

Abraço a todos