如何使用使用Server DataSource使用Wildfly 9.0将其与JPA进行对齐的基本春季Web应用程序



我已经在Eclipse中创建了具有配置类的Eclipse,persistence.xml,Entity class

@Configuration
@EnableWebMvc
@ComponentScan(basePackages = "com.dalmiacsa.control")
@EnableJpaRepositories(basePackages = {"com.dalmiacsa.persist.entity"})
public class XMLConfrigration extends WebMvcConfigurerAdapter {
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
    registry.addResourceHandler("/webRS/**")
            .addResourceLocations("/webRS/");
}
@Bean
public ViewResolver viewResolver() {
    InternalResourceViewResolver viewResolver = new InternalResourceViewResolver();
    viewResolver.setViewClass(JstlView.class);
    viewResolver.setPrefix("/main/");
    viewResolver.setSuffix(".jsp");
    return viewResolver;
    }
}

我也有持久性。xml

<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.1"
    xmlns="http://xmlns.jcp.org/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd">
    <persistence-unit name="dalmiaCSA" transaction-type="JTA">
        <description>Persistence Unit for CSA Database</description>
        <provider>org.hibernate.jpa.HibernatePersistenceProvider</provider>
        <jta-data-source>java:jboss/datasources/dalmiaCSA</jta-data-source>

        <class>com.dalmiacsa.persist.entity.CompanyMaster</class>
        <properties>
            <property
                name="javax.persistence.schema-generation.create-database-schemas"
                value="true" />
            <property name="javax.persistence.schema-generation.database.action"
                value="none" />
            <property name="hibernate.show_sql" value="false"></property>
            <property name="hibernate.format_sql" value="false"></property>
            <property name="use_sql_comments" value="false" />
            <!-- <property name="hibernate.archive.autodetection" value="class"></property> -->
            <property name="hibernate.dialect" value="org.hibernate.dialect.MySQL5InnoDBDialect"></property>
            <!-- Hibernate Envers -->
            <property name="hibernate.auditable" value="true" />
        </properties>
    </persistence-unit>
</persistence>

也服务类

@Repository
@Transactional(readOnly = false)
public class CrudServiceImpl implements CrudService {
    @PersistenceContext(unitName = "dalmiaCSA")
    EntityManager entityManager;
    @Override
    public <T> T create(T t) {
        try {
            this.entityManager.persist(t);
            this.entityManager.flush();
            this.entityManager.refresh(t);
        } catch (Exception e) {
            e.printStackTrace();
        }
        return t;
    }
}

当我坚持实体时,我给出错误 targetInvocation exception .my dataSource在wildfly Server上

完整的错误痕迹是

16:26:37,553 ERROR [stderr] (default task-4) java.lang.NullPointerException
16:26:37,585 ERROR [stderr] (default task-4)    at org.hibernate.engine.transaction.internal.jta.JtaStatusHelper.getStatus(JtaStatusHelper.java:76)
16:26:37,585 ERROR [stderr] (default task-4)    at org.hibernate.engine.transaction.internal.jta.JtaStatusHelper.isActive(JtaStatusHelper.java:118)
16:26:37,585 ERROR [stderr] (default task-4)    at org.hibernate.engine.transaction.internal.jta.CMTTransaction.join(CMTTransaction.java:149)
16:26:37,589 ERROR [stderr] (default task-4)    at org.hibernate.jpa.spi.AbstractEntityManagerImpl.joinTransaction(AbstractEntityManagerImpl.java:1602)
16:26:37,589 ERROR [stderr] (default task-4)    at org.hibernate.jpa.spi.AbstractEntityManagerImpl.postInit(AbstractEntityManagerImpl.java:210)
16:26:37,589 ERROR [stderr] (default task-4)    at org.hibernate.jpa.internal.EntityManagerImpl.<init>(EntityManagerImpl.java:91)
16:26:37,593 ERROR [stderr] (default task-4)    at org.hibernate.jpa.internal.EntityManagerFactoryImpl.internalCreateEntityManager(EntityManagerFactoryImpl.java:345)
16:26:37,613 ERROR [stderr] (default task-4)    at org.hibernate.jpa.internal.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:313)
16:26:37,621 ERROR [stderr] (default task-4)    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
16:26:37,621 ERROR [stderr] (default task-4)    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
16:26:37,625 ERROR [stderr] (default task-4)    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
16:26:37,625 ERROR [stderr] (default task-4)    at java.lang.reflect.Method.invoke(Method.java:497)
16:26:37,625 ERROR [stderr] (default task-4)    at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.invokeProxyMethod(AbstractEntityManagerFactoryBean.java:376)
16:26:37,629 ERROR [stderr] (default task-4)    at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean$ManagedEntityManagerFactoryInvocationHandler.invoke(AbstractEntityManagerFactoryBean.java:517)
16:26:37,629 ERROR [stderr] (default task-4)    at com.sun.proxy.$Proxy58.createEntityManager(Unknown Source)
16:26:37,633 ERROR [stderr] (default task-4)    at org.springframework.orm.jpa.SharedEntityManagerCreator$SharedEntityManagerInvocationHandler.invoke(SharedEntityManagerCreator.java:234)
16:26:37,633 ERROR [stderr] (default task-4)    at com.sun.proxy.$Proxy61.persist(Unknown Source)
16:26:37,633 ERROR [stderr] (default task-4)    at com.dalmiacsa.service.impl.CrudServiceImpl.create(CrudServiceImpl.java:29)
16:26:37,637 ERROR [stderr] (default task-4)    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
16:26:37,637 ERROR [stderr] (default task-4)    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
16:26:37,637 ERROR [stderr] (default task-4)    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
16:26:37,637 ERROR [stderr] (default task-4)    at java.lang.reflect.Method.invoke(Method.java:497)
16:26:37,641 ERROR [stderr] (default task-4)    at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
16:26:37,641 ERROR [stderr] (default task-4)    at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:190)
16:26:37,641 ERROR [stderr] (default task-4)    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157)
16:26:37,641 ERROR [stderr] (default task-4)    at org.springframework.dao.support.PersistenceExceptionTranslationInterceptor.invoke(PersistenceExceptionTranslationInterceptor.java:155)
16:26:37,645 ERROR [stderr] (default task-4)    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
16:26:37,645 ERROR [stderr] (default task-4)    at org.springframework.dao.support.PersistenceExceptionTranslationInterceptor.invoke(PersistenceExceptionTranslationInterceptor.java:155)
16:26:37,649 ERROR [stderr] (default task-4)    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
16:26:37,649 ERROR [stderr] (default task-4)    at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:207)
16:26:37,653 ERROR [stderr] (default task-4)    at com.sun.proxy.$Proxy64.create(Unknown Source)
16:26:37,653 ERROR [stderr] (default task-4)    at com.dalmiacsa.service.impl.CompanyManagerImpl.addCompany(CompanyManagerImpl.java:61)
16:26:37,653 ERROR [stderr] (default task-4)    at com.dalmiacsa.control.MainController.googleLogin(MainController.java:44)
16:26:37,653 ERROR [stderr] (default task-4)    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
16:26:37,657 ERROR [stderr] (default task-4)    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
16:26:37,657 ERROR [stderr] (default task-4)    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
16:26:37,657 ERROR [stderr] (default task-4)    at java.lang.reflect.Method.invoke(Method.java:497)
16:26:37,657 ERROR [stderr] (default task-4)    at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:221)
16:26:37,677 ERROR [stderr] (default task-4)    at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:137)
16:26:37,677 ERROR [stderr] (default task-4)    at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:110)
16:26:37,681 ERROR [stderr] (default task-4)    at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandleMethod(RequestMappingHandlerAdapter.java:776)
16:26:37,689 ERROR [stderr] (default task-4)    at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:705)
16:26:37,709 ERROR [stderr] (default task-4)    at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:85)
16:26:37,713 ERROR [stderr] (default task-4)    at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:959)
16:26:37,713 ERROR [stderr] (default task-4)    at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:893)
16:26:37,713 ERROR [stderr] (default task-4)    at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:966)
16:26:37,721 ERROR [stderr] (default task-4)    at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:857)
16:26:37,721 ERROR [stderr] (default task-4)    at javax.servlet.http.HttpServlet.service(HttpServlet.java:687)
16:26:37,721 ERROR [stderr] (default task-4)    at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:842)
16:26:37,721 ERROR [stderr] (default task-4)    at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
16:26:37,725 ERROR [stderr] (default task-4)    at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:86)
16:26:37,725 ERROR [stderr] (default task-4)    at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)
16:26:37,725 ERROR [stderr] (default task-4)    at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)
16:26:37,737 ERROR [stderr] (default task-4)    at org.wildfly.extension.undertow.security.SecurityContextAssociationHandler.handleRequest(SecurityContextAssociationHandler.java:78)
16:26:37,737 ERROR [stderr] (default task-4)    at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
16:26:37,737 ERROR [stderr] (default task-4)    at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:131)
16:26:37,737 ERROR [stderr] (default task-4)    at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57)
16:26:37,737 ERROR [stderr] (default task-4)    at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
16:26:37,737 ERROR [stderr] (default task-4)    at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46)
16:26:37,741 ERROR [stderr] (default task-4)    at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64)
16:26:37,741 ERROR [stderr] (default task-4)    at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:58)
16:26:37,745 ERROR [stderr] (default task-4)    at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:72)
16:26:37,749 ERROR [stderr] (default task-4)    at io.undertow.security.handlers.NotificationReceiverHandler.handleRequest(NotificationReceiverHandler.java:50)
16:26:37,749 ERROR [stderr] (default task-4)    at io.undertow.security.handlers.SecurityInitialHandler.handleRequest(SecurityInitialHandler.java:76)
16:26:37,757 ERROR [stderr] (default task-4)    at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
16:26:37,799 ERROR [stderr] (default task-4)    at org.wildfly.extension.undertow.security.jacc.JACCContextIdHandler.handleRequest(JACCContextIdHandler.java:61)
16:26:37,801 ERROR [stderr] (default task-4)    at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
16:26:37,801 ERROR [stderr] (default task-4)    at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
16:26:37,802 ERROR [stderr] (default task-4)    at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:282)
16:26:37,803 ERROR [stderr] (default task-4)    at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:261)
16:26:37,804 ERROR [stderr] (default task-4)    at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:80)
16:26:37,804 ERROR [stderr] (default task-4)    at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:172)
16:26:37,805 ERROR [stderr] (default task-4)    at io.undertow.server.Connectors.executeRootHandler(Connectors.java:199)
16:26:37,806 ERROR [stderr] (default task-4)    at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:774)
16:26:37,807 ERROR [stderr] (default task-4)    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
16:26:37,808 ERROR [stderr] (default task-4)    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
16:26:37,809 ERROR [stderr] (default task-4)    at java.lang.Thread.run(Thread.java:745)

我认为您的问题与此相关,您没有使用或没有看到它至少是属性hibernate.transaction.jta.jta.platform,您可以尝试填充此填充您的持久性配置上的属性。

最新更新