Ajuda com jpa - wildfly

Ola Pessoal, estou precisando da ajuda de alguém, ou alguém que possa tirar uma dúvida para mim. Estou estudando vraptor 4 e estou usando ele no wildfly 8.2.0. Bom a minha dúvida é a seguinte, sempre que vou utilizar jpa no wildfly eu sou obrigado a utilizar/criar o datasource??? pois quando utilizo o primeiro persistence.xml ele funciona, porém quando utilizo o segundo ele não dá erro algum, porém o resultado da consulta é vazio… Alguem poderia me esclarecer por favor???
Funciona:

	<provider>org.hibernate.ejb.HibernatePersistence</provider>
	
	<jta-data-source>java:/vraptor</jta-data-source>
	<class>goodbuy.modelo.Produto</class>


	<properties>
		<property name="hibernate.dialect" value="org.hibernate.dialect.MySQL5InnoDBDialect" />
		<property name="hibernate.show_sql" value="true" />
		<property name="hibernate.format_sql" value="true" />
		<property name="hibernate.hbm2ddl.auto" value="update" />
	</properties>


</persistence-unit>

02:50:57,718 INFO [org.jboss.as] (Controller Boot Thread) JBAS015874: WildFly 8.2.0.Final “Tweek” started in 92359ms - Started 724 of 835 services (175 services are lazy, passive or on-demand)
02:51:02,828 INFO [br.com.caelum.vraptor.core.DefaultConverters] (default task-1) Registering bundled converters
02:51:02,921 INFO [br.com.caelum.vraptor.core.DefaultConverters] (default task-1) Registering bundled converters
02:51:03,421 INFO [br.com.caelum.vraptor.http.route.DefaultRouteBuilder] (default task-1) /produtos/lista [GET] -> public java.util.List goodbuy.controller.ProdutosController.lista()
02:51:03,578 INFO [br.com.caelum.vraptor.http.route.DefaultRouteBuilder] (default task-1) /mundo/paises [ALL] -> public java.util.List goodbuy.controller.MundoController.paises()
02:51:03,593 INFO [br.com.caelum.vraptor.http.route.DefaultRouteBuilder] (default task-1) /mundo/boasVindas [ALL] -> public java.lang.String goodbuy.controller.MundoController.boasVindas()
02:51:03,781 INFO [br.com.caelum.vraptor.VRaptor] (default task-1) VRaptor 4.2.0-RC3 successfuly initialized
02:51:05,093 INFO [stdout] (default task-1) Hibernate:
02:51:05,093 INFO [stdout] (default task-1) select
02:51:05,093 INFO [stdout] (default task-1) produto0_.id as id1_0_,
02:51:05,109 INFO [stdout] (default task-1) produto0_.descricao as descrica2_0_,
02:51:05,109 INFO [stdout] (default task-1) produto0_.nome as nome3_0_,
02:51:05,109 INFO [stdout] (default task-1) produto0_.preco as preco4_0_
02:51:05,109 INFO [stdout] (default task-1) from
02:51:05,109 INFO [stdout] (default task-1) Produto produto0_

02:51:05,484 INFO [stdout] (default task-1) Funcionou = 5

Não Funciona, lembrando que não da erro algum:

	<provider>org.hibernate.ejb.HibernatePersistence</provider>

	<class>goodbuy.modelo.Produto</class>


	<properties>
		<property name="javax.persistence.jdbc.Driver" value="com.mysql.jdbc.Driver" />
		<property name="javax.persistence.jdbc.url" value="jdbc:mysql://localhost/vraptor" />
		<property name="javax.persistence.jdbc.user" value="root" />
		<property name="javax.persistence.jdbc.password" value="" />
		<property name="hibernate.dialect" value="org.hibernate.dialect.MySQL5InnoDBDialect" />
		<property name="hibernate.show_sql" value="true" />
		<property name="hibernate.format_sql" value="true" />
		<property name="hibernate.hbm2ddl.auto" value="update" />
	</properties>


</persistence-unit>

Resultado, sem erro:
03:10:54,421 INFO [org.jboss.as] (Controller Boot Thread) JBAS015874: WildFly 8.2.0.Final “Tweek” started in 201422ms - Started 718 of 770 services (105 services are lazy, passive or on-demand)
03:11:00,265 INFO [br.com.caelum.vraptor.core.DefaultConverters] (default task-1) Registering bundled converters
03:11:00,312 INFO [br.com.caelum.vraptor.core.DefaultConverters] (default task-1) Registering bundled converters
03:11:00,656 INFO [br.com.caelum.vraptor.http.route.DefaultRouteBuilder] (default task-1) /produtos/lista [GET] -> public java.util.List goodbuy.controller.ProdutosController.lista()
03:11:00,796 INFO [br.com.caelum.vraptor.http.route.DefaultRouteBuilder] (default task-1) /mundo/paises [ALL] -> public java.util.List goodbuy.controller.MundoController.paises()
03:11:00,796 INFO [br.com.caelum.vraptor.http.route.DefaultRouteBuilder] (default task-1) /mundo/boasVindas [ALL] -> public java.lang.String goodbuy.controller.MundoController.boasVindas()
03:11:00,953 INFO [br.com.caelum.vraptor.VRaptor] (default task-1) VRaptor 4.2.0-RC3 successfuly initialized
03:11:02,468 INFO [stdout] (default task-1) Hibernate:
03:11:02,468 INFO [stdout] (default task-1) select
03:11:02,468 INFO [stdout] (default task-1) produto0_.id as id1_0_,
03:11:02,468 INFO [stdout] (default task-1) produto0_.descricao as descrica2_0_,
03:11:02,468 INFO [stdout] (default task-1) produto0_.nome as nome3_0_,
03:11:02,468 INFO [stdout] (default task-1) produto0_.preco as preco4_0_
03:11:02,468 INFO [stdout] (default task-1) from
03:11:02,468 INFO [stdout] (default task-1) Produto produto0_

03:11:02,609 INFO [stdout] (default task-1) Funcionou = 0

Bem, pelo que vi além da informação do datasource existem estas properties a mais no segundo persistence:

Já experimentou testar sem elas ? Caso não funcione da mesma forma, muito provavelmente a declaração do datasource é mesmo necessária.

No link http://wiki.eclipse.org/EclipseLink/Examples/JPA/Tomcat_Web_Tutorial tem os exemplos que precisa.

O ponto chave é a definição se usará
transaction-type="JTA"
ou
transaction-type="RESOURCE_LOCAL"

Aqui nesse link tem uma resposta minha sobre como configurar o datasource no jboss/wildfly , veja o link e vê se tem algo errado em suas configurações.

Valeu pela resposta Fabio, porém não é isso não… outro detalhe que nao mencionei é que isto ocorre apenas quando faço a inversão de controle, ou seja, ele só esta funcionando se eu utilizar o datasource, caso eu tente configurar apenas o persistence.xml sem utilizar o datasource ele não funciona, porém não da erro algum, lembrando que no resultado aparece que a consulta foi realizada, porem o retorno é zero!!!

Valeu Daniel… porem o datasource ja esta configurado e funcionando… o que eu queria fazer é ele funcionar sem utilizar o datasource, ou seja, utilizando as configurações no persistece.xml, porem ele não da erro algum, aparece que a consulta foi efetuada, porem o tamanho da lista na saida é zero!!! já com o datasource o resultado é 5, correto… ou seja, a minha duvida na verdade é, quando eu utilizo a inversão de controle(IoC) eu sou obrigado a utilizar o datasource???