1. java
  2. android
  3. c#
  4. .net
  5. javascript
  6. php
  7. jquery
  8. html
  9. sql

Jboss com Eclipse e Hibernate

No meu servidor Jboss já configurei o meu dataSource e está funcionando pois quando entro no console de administração e dou um test connection funciona normal e também quando eu starto meu servidor ele cria as instâncias das tabelas certinho.

O problema é que quando eu não adiciono a linha:

<jta-data-source>java:jboss/datasources/insg</jta-data-source>

no meu persistence.xml, dá o seguinte erro:

exception

org.apache.jasper.JasperException: java.lang.UnsupportedOperationException: The application must supply JDBC connections
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:413)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:326)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:253)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
    com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:546)
    com.sun.faces.application.view.JspViewHandlingStrategy.executePageToBuildView(JspViewHandlingStrategy.java:364)
    com.sun.faces.application.view.JspViewHandlingStrategy.buildView(JspViewHandlingStrategy.java:154)
    com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:100)
    com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
    com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
    javax.faces.webapp.FacesServlet.service(FacesServlet.java:594)
root cause

java.lang.UnsupportedOperationException: The application must supply JDBC connections
    org.hibernate.service.jdbc.connections.internal.UserSuppliedConnectionProviderImpl.getConnection(UserSuppliedConnectionProviderImpl.java:62)
    org.hibernate.internal.AbstractSessionImpl$NonContextualJdbcConnectionAccess.obtainConnection(AbstractSessionImpl.java:276)
    org.hibernate.engine.jdbc.internal.LogicalConnectionImpl.obtainConnection(LogicalConnectionImpl.java:297)
    org.hibernate.engine.jdbc.internal.LogicalConnectionImpl.getConnection(LogicalConnectionImpl.java:169)
    org.hibernate.engine.transaction.internal.jdbc.JdbcTransaction.doBegin(JdbcTransaction.java:67)
    org.hibernate.engine.transaction.spi.AbstractTransactionImpl.begin(AbstractTransactionImpl.java:160)
    org.hibernate.internal.SessionImpl.beginTransaction(SessionImpl.java:1263)
    org.hibernate.ejb.TransactionImpl.begin(TransactionImpl.java:57)
    src.Modelo.DAO.DaoResource.save(DaoResource.java:65)
    src.Modelo.DAO.LocalDao.saveLocal(LocalDao.java:23)
    org.apache.jsp.teste_jsp._jspService(teste_jsp.java:72)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:369)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:326)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:253)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
    com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:546)
    com.sun.faces.application.view.JspViewHandlingStrategy.executePageToBuildView(JspViewHandlingStrategy.java:364)
    com.sun.faces.application.view.JspViewHandlingStrategy.buildView(JspViewHandlingStrategy.java:154)
    com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:100)
    com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
    com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
    javax.faces.webapp.FacesServlet.service(FacesServlet.java:594)
note

Porém quando eu adiciono a linha citada acima ele dá o seguinte erro:

exception

org.apache.jasper.JasperException: javax.persistence.PersistenceException: Invalid persistence.xml.
Error parsing XML (line-1 : column -1): cvc-complex-type.2.4.a: Invalid content was found starting with element 'provider'. One of '{"http://java.sun.com/xml/ns/persistence":non-jta-data-source, "http://java.sun.com/xml/ns/persistence":mapping-file, "http://java.sun.com/xml/ns/persistence":jar-file, "http://java.sun.com/xml/ns/persistence":class, "http://java.sun.com/xml/ns/persistence":exclude-unlisted-classes, "http://java.sun.com/xml/ns/persistence":properties}' is expected.

    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:413)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:326)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:253)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
    com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:546)
    com.sun.faces.application.view.JspViewHandlingStrategy.executePageToBuildView(JspViewHandlingStrategy.java:364)
    com.sun.faces.application.view.JspViewHandlingStrategy.buildView(JspViewHandlingStrategy.java:154)
    com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:100)
    com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
    com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
    javax.faces.webapp.FacesServlet.service(FacesServlet.java:594)
root cause

javax.persistence.PersistenceException: Invalid persistence.xml.
Error parsing XML (line-1 : column -1): cvc-complex-type.2.4.a: Invalid content was found starting with element 'provider'. One of '{"http://java.sun.com/xml/ns/persistence":non-jta-data-source, "http://java.sun.com/xml/ns/persistence":mapping-file, "http://java.sun.com/xml/ns/persistence":jar-file, "http://java.sun.com/xml/ns/persistence":class, "http://java.sun.com/xml/ns/persistence":exclude-unlisted-classes, "http://java.sun.com/xml/ns/persistence":properties}' is expected.

    org.hibernate.ejb.packaging.PersistenceXmlLoader.loadURL(PersistenceXmlLoader.java:145)
    org.hibernate.ejb.packaging.PersistenceXmlLoader.deploy(PersistenceXmlLoader.java:169)
    org.hibernate.ejb.Ejb3Configuration.configure(Ejb3Configuration.java:323)
    org.hibernate.ejb.HibernatePersistence.createEntityManagerFactory(HibernatePersistence.java:55)
    javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:63)
    javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:47)
    src.Modelo.DAO.DaoResource.<init>(DaoResource.java:22)
    src.Modelo.DAO.LocalDao.<init>(LocalDao.java:11)
    org.apache.jsp.teste_jsp._jspService(teste_jsp.java:68)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:369)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:326)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:253)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
    com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:546)
    com.sun.faces.application.view.JspViewHandlingStrategy.executePageToBuildView(JspViewHandlingStrategy.java:364)
    com.sun.faces.application.view.JspViewHandlingStrategy.buildView(JspViewHandlingStrategy.java:154)
    com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:100)
    com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
    com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
    javax.faces.webapp.FacesServlet.service(FacesServlet.java:594)

Vou postar abaixo o meu persistence e se alguém puder me ajudar ficarei muito grato.

<?xml version="1.0" encoding="UTF-8"?> 
<persistence version="1.0" 
    xmlns="http://java.sun.com/xml/ns/persistence"> 
    <persistence-unit name="insg"> 
    <jta-data-source>java:jboss/datasources/insg</jta-data-source>    

        <provider>org.hibernate.ejb.HibernatePersistence</provider>
        <class>src.Modelo.ENTIDADES.Impressora</class>
        <class>src.Modelo.ENTIDADES.Local</class>
        <class>src.Modelo.ENTIDADES.Localidade</class>
        <class>src.Modelo.ENTIDADES.Manutencao</class>
        <class>src.Modelo.ENTIDADES.Maquina</class>
        <class>src.Modelo.ENTIDADES.Peca</class>
        <class>src.Modelo.ENTIDADES.Setor</class>
        <class>src.Modelo.ENTIDADES.TpPeca</class>
        <class>src.Modelo.ENTIDADES.TrocaPeca</class>

        <properties> 
        <property name="hibernate.dialect" value="org.hibernate.dialect.MySQLDialect" /> 
        <property name="hibernate.show_sql" value="true" /> 
        <property name="hibernate.format_sql" value="true" />  
        <property name="hibernate.hbm2ddl.auto" value="update"/>
        <property name="hibernate.connection.charSet" value="UTF-8"/> 
        </properties> 
    </persistence-unit> 
</persistence>
  1. Você vai ver essas setas em qualquer página de pergunta. Com elas, você pode dizer se uma pergunta ou uma resposta foram relevantes ou não.
  2. Edite sua pergunta ou resposta caso queira alterar ou adicionar detalhes.
  3. Caso haja alguma dúvida sobre a pergunta, adicione um comentário. O espaço de respostas deve ser utilizado apenas para responder a pergunta.
  4. Se o autor da pergunta marcar uma resposta como solucionada, esta marca aparecerá.
  5. Clique aqui para mais detalhes sobre o funcionamento do GUJ!

0 resposta

Não é a resposta que estava procurando? Procure outras perguntas com as tags jboss java hibernate ou faça a sua própria pergunta.