Problema con Entity secondaryTable

di il
9 risposte

Problema con Entity secondaryTable

Ciao,
ho un problema con la mappatura di più table con la classe Entity:
ho creato una classe java (Fattura) con annotation @Entity per mappare due tabelle (fattura e cliente) create in MySql.
poi ho scritto le variabili per tutte e due le tabelle con tanto di getter and setter e per ognuna le proprie annotation persistence (@Id, @Column, @Temporal).
In un bean stateless (corsoWebBean) dove ho creato l'annotation @PersistenceContext(per il file persitence.xml) e l'EntityManager, ho scritto diversi metodi. in uno di questi,SalvaFattura(), ho creato una istanza della classe Fattura e sono andato a settare le sue variabili(setCognome, setNome ecc).
Sempre dentro questo metodo ho scritto l'istanza della classe EntityManager per richiamare il metodo persist(). Affiancate alla classe bean stateless(corsoWebBean), avevo creato due interfacce(corsoWebLocal, corsoWebRemote) alle quali ho spartito ad ognuna i metodi creati nella classe corsoWebBean. in questo caso, l'interfaccia corsoWebLocal, condivide il metodo salvaFattura(), nel quale, come scritto sopra, abbiamo l'istanza della classeEntity Fattura.
Infine, dalla servlet chiamata Dispatcher, ho istanziato l'intefaccia CorsoWebLocal (che ha annotation @EJB) e sul doGet della servlet ho richiamato, col puntatore, il metodo "corsoWebLocal.salvaFattura()".
Bene.dopo aver scritto tutto questo codice, il server non funziona perchè riscontra diversi problemi.
cosa posso fare per risolvere la cosa?
tra i tanti, errori viene indicato il fatto che non posso creare la DataSource

questo è il log di errori sulla console:

mag 06, 2021 1:50:49 PM org.apache.tomcat.jdbc.pool.ConnectionPool init
GRAVE: Unable to create initial connections of pool.
com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure

The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:403)
at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:990)
at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:335)
at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2187)
at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2220)
at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2015)
at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:768)
at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:47)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:403)
at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:385)
at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:323)
at org.apache.tomcat.jdbc.pool.PooledConnection.connectUsingDriver(PooledConnection.java:319)
at org.apache.tomcat.jdbc.pool.PooledConnection.connect(PooledConnection.java:212)
at org.apache.tomcat.jdbc.pool.ConnectionPool.createConnection(ConnectionPool.java:739)
at org.apache.tomcat.jdbc.pool.ConnectionPool.borrowConnection(ConnectionPool.java:671)
at org.apache.tomcat.jdbc.pool.ConnectionPool.init(ConnectionPool.java:483)
at org.apache.tomcat.jdbc.pool.ConnectionPool.<init>(ConnectionPool.java:154)
at org.apache.tomee.jdbc.TomEEDataSourceCreator$TomEEConnectionPool.<init>(TomEEDataSourceCreator.java:221)
at org.apache.tomee.jdbc.TomEEDataSourceCreator$TomEEDataSource.createPool(TomEEDataSourceCreator.java:154)
at org.apache.tomee.jdbc.TomEEDataSourceCreator$TomEEDataSource.<init>(TomEEDataSourceCreator.java:131)
at org.apache.tomee.jdbc.TomEEDataSourceCreator.pool(TomEEDataSourceCreator.java:68)
at org.apache.openejb.resource.jdbc.pool.PoolDataSourceCreator.poolManaged(PoolDataSourceCreator.java:80)
at org.apache.openejb.resource.jdbc.DataSourceFactory.create(DataSourceFactory.java:213)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.xbean.recipe.ReflectionUtil$StaticFactory.create(ReflectionUtil.java:1007)
at org.apache.xbean.recipe.ObjectRecipe.internalCreate(ObjectRecipe.java:279)
at org.apache.xbean.recipe.AbstractRecipe.create(AbstractRecipe.java:96)
at org.apache.xbean.recipe.AbstractRecipe.create(AbstractRecipe.java:61)
at org.apache.openejb.assembler.classic.Assembler.doCreateResource(Assembler.java:3171)
at org.apache.openejb.assembler.classic.Assembler.createResource(Assembler.java:3006)
at org.apache.openejb.assembler.classic.Assembler.buildContainerSystem(Assembler.java:584)
at org.apache.openejb.assembler.classic.Assembler.build(Assembler.java:485)
at org.apache.openejb.OpenEJB$Instance.<init>(OpenEJB.java:150)
at org.apache.openejb.OpenEJB.init(OpenEJB.java:307)
at org.apache.tomee.catalina.TomcatLoader.initialize(TomcatLoader.java:247)
at org.apache.tomee.catalina.ServerListener.lifecycleEvent(ServerListener.java:168)
at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:123)
at org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:423)
at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:137)
at org.apache.catalina.startup.Catalina.load(Catalina.java:639)
at org.apache.catalina.startup.Catalina.load(Catalina.java:662)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:302)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:472)
Caused by: java.net.ConnectException: Connection refused: connect
at java.net.DualStackPlainSocketImpl.connect0(Native Method)
at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:79)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.net.Socket.connect(Socket.java:589)
at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:211)
at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:299)
... 51 more

mag 06, 2021 1:50:49 PM org.apache.tomee.jdbc.TomEEDataSourceCreator$TomEEDataSource <init>
GRAVE: Can't create DataSource
com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure

The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:403)
at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:990)
at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:335)
at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2187)
at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2220)
at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2015)
at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:768)
at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:47)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:403)
at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:385)
at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:323)
at org.apache.tomcat.jdbc.pool.PooledConnection.connectUsingDriver(PooledConnection.java:319)
at org.apache.tomcat.jdbc.pool.PooledConnection.connect(PooledConnection.java:212)
at org.apache.tomcat.jdbc.pool.ConnectionPool.createConnection(ConnectionPool.java:739)
at org.apache.tomcat.jdbc.pool.ConnectionPool.borrowConnection(ConnectionPool.java:671)
at org.apache.tomcat.jdbc.pool.ConnectionPool.init(ConnectionPool.java:483)
at org.apache.tomcat.jdbc.pool.ConnectionPool.<init>(ConnectionPool.java:154)
at org.apache.tomee.jdbc.TomEEDataSourceCreator$TomEEConnectionPool.<init>(TomEEDataSourceCreator.java:221)
at org.apache.tomee.jdbc.TomEEDataSourceCreator$TomEEDataSource.createPool(TomEEDataSourceCreator.java:154)
at org.apache.tomee.jdbc.TomEEDataSourceCreator$TomEEDataSource.<init>(TomEEDataSourceCreator.java:131)
at org.apache.tomee.jdbc.TomEEDataSourceCreator.pool(TomEEDataSourceCreator.java:68)
at org.apache.openejb.resource.jdbc.pool.PoolDataSourceCreator.poolManaged(PoolDataSourceCreator.java:80)
at org.apache.openejb.resource.jdbc.DataSourceFactory.create(DataSourceFactory.java:213)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.xbean.recipe.ReflectionUtil$StaticFactory.create(ReflectionUtil.java:1007)
at org.apache.xbean.recipe.ObjectRecipe.internalCreate(ObjectRecipe.java:279)
at org.apache.xbean.recipe.AbstractRecipe.create(AbstractRecipe.java:96)
at org.apache.xbean.recipe.AbstractRecipe.create(AbstractRecipe.java:61)
at org.apache.openejb.assembler.classic.Assembler.doCreateResource(Assembler.java:3171)
at org.apache.openejb.assembler.classic.Assembler.createResource(Assembler.java:3006)
at org.apache.openejb.assembler.classic.Assembler.buildContainerSystem(Assembler.java:584)
at org.apache.openejb.assembler.classic.Assembler.build(Assembler.java:485)
at org.apache.openejb.OpenEJB$Instance.<init>(OpenEJB.java:150)
at org.apache.openejb.OpenEJB.init(OpenEJB.java:307)
at org.apache.tomee.catalina.TomcatLoader.initialize(TomcatLoader.java:247)
at org.apache.tomee.catalina.ServerListener.lifecycleEvent(ServerListener.java:168)
at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:123)
at org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:423)
at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:137)
at org.apache.catalina.startup.Catalina.load(Catalina.java:639)
at org.apache.catalina.startup.Catalina.load(Catalina.java:662)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:302)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:472)
Caused by: java.net.ConnectException: Connection refused: connect
at java.net.DualStackPlainSocketImpl.connect0(Native Method)
at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:79)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.net.Socket.connect(Socket.java:589)
at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:211)
at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:299)
... 51 more

mag 06, 2021 1:50:49 PM org.apache.openejb.server.ServiceManager initServer
INFORMAZIONI: Creating ServerService(id=cxf)
mag 06, 2021 1:50:49 PM org.apache.openejb.server.ServiceManager initServer
INFORMAZIONI: Creating ServerService(id=cxf-rs)
mag 06, 2021 1:50:49 PM org.apache.openejb.server.SimpleServiceManager start
INFORMAZIONI: ** Bound Services **
mag 06, 2021 1:50:49 PM org.apache.openejb.server.SimpleServiceManager printRow
INFORMAZIONI: NAME IP PORT
mag 06, 2021 1:50:49 PM org.apache.openejb.server.SimpleServiceManager start
INFORMAZIONI: -------
mag 06, 2021 1:50:49 PM org.apache.openejb.server.SimpleServiceManager start
INFORMAZIONI: Ready!
mag 06, 2021 1:50:49 PM sun.reflect.DelegatingMethodAccessorImpl invoke
INFORMAZIONI: Initialization processed in 6469 ms
mag 06, 2021 1:50:49 PM org.apache.tomee.catalina.OpenEJBNamingContextListener bindResource
INFORMAZIONI: Importing a Tomcat Resource with id 'UserDatabase' of type 'org.apache.catalina.UserDatabase'.
mag 06, 2021 1:50:49 PM org.apache.openejb.assembler.classic.Assembler createRecipe
INFORMAZIONI: Creating Resource(id=UserDatabase)
mag 06, 2021 1:50:49 PM sun.reflect.DelegatingMethodAccessorImpl invoke
INFORMAZIONI: Starting service [Catalina]
mag 06, 2021 1:50:49 PM sun.reflect.DelegatingMethodAccessorImpl invoke
INFORMAZIONI: Starting Servlet Engine: Apache Tomcat (TomEE)/8.5.57 (7.1.4)
mag 06, 2021 1:50:49 PM org.apache.tomee.catalina.TomcatWebAppBuilder init
INFORMAZIONI: ------------------------- localhost -> /
mag 06, 2021 1:50:50 PM org.apache.openejb.config.ConfigurationFactory configureApplication
INFORMAZIONI: Configuring enterprise application: C:\corso_java\apache-tomee-plume-7.1.4\webapps\ROOT
mag 06, 2021 1:50:50 PM org.apache.openejb.config.AppInfoBuilder build
INFORMAZIONI: Enterprise application "C:\corso_java\apache-tomee-plume-7.1.4\webapps\ROOT" loaded.
mag 06, 2021 1:50:50 PM org.apache.openejb.assembler.classic.Assembler createApplication
INFORMAZIONI: Assembling app: C:\corso_java\apache-tomee-plume-7.1.4\webapps\ROOT
mag 06, 2021 1:50:50 PM org.apache.openejb.assembler.classic.Assembler createApplication
INFORMAZIONI: Deployed Application(path=C:\corso_java\apache-tomee-plume-7.1.4\webapps\ROOT)
mag 06, 2021 1:50:50 PM org.apache.jasper.servlet.TldScanner scanJars
INFORMAZIONI: At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.
mag 06, 2021 1:50:50 PM org.apache.tomee.catalina.TomcatWebAppBuilder init
INFORMAZIONI: ------------------------- localhost -> /corso_web
mag 06, 2021 1:50:51 PM org.apache.openejb.config.ConfigurationFactory configureApplication
INFORMAZIONI: Configuring enterprise application: C:\corso_java\apache-tomee-plume-7.1.4\webapps\corso_web
mag 06, 2021 1:50:51 PM org.apache.openejb.config.InitEjbDeployments deploy
INFORMAZIONI: Auto-deploying ejb CorsoWebBean: EjbDeployment(deployment-id=CorsoWebBean)
mag 06, 2021 1:50:51 PM org.apache.openejb.config.InitEjbDeployments deploy
INFORMAZIONI: Auto-deploying ejb CorsoWebServiceBean: EjbDeployment(deployment-id=CorsoWebServiceBean)
mag 06, 2021 1:50:51 PM org.apache.openejb.config.InitEjbDeployments deploy
INFORMAZIONI: Auto-deploying ejb FatturaServiceBean: EjbDeployment(deployment-id=FatturaServiceBean)
mag 06, 2021 1:50:51 PM org.apache.openejb.config.InitEjbDeployments deploy
INFORMAZIONI: Auto-deploying ejb PersonaServiceBean: EjbDeployment(deployment-id=PersonaServiceBean)
mag 06, 2021 1:50:51 PM org.apache.openejb.config.InitEjbDeployments deploy
INFORMAZIONI: Auto-deploying ejb CorsoWebStatefulBean: EjbDeployment(deployment-id=CorsoWebStatefulBean)
mag 06, 2021 1:50:51 PM org.apache.openejb.config.ConfigurationFactory configureService
INFORMAZIONI: Configuring Service(id=Default Stateless Container, type=Container, provider-id=Default Stateless Container)
mag 06, 2021 1:50:51 PM org.apache.openejb.config.AutoConfig createContainer
INFORMAZIONI: Auto-creating a container for bean CorsoWebBean: Container(type=STATELESS, id=Default Stateless Container)
mag 06, 2021 1:50:51 PM org.apache.openejb.assembler.classic.Assembler createRecipe
INFORMAZIONI: Creating Container(id=Default Stateless Container)
mag 06, 2021 1:50:51 PM org.apache.openejb.config.ConfigurationFactory configureService
INFORMAZIONI: Configuring Service(id=Default Stateful Container, type=Container, provider-id=Default Stateful Container)
mag 06, 2021 1:50:51 PM org.apache.openejb.config.AutoConfig createContainer
INFORMAZIONI: Auto-creating a container for bean CorsoWebStatefulBean: Container(type=STATEFUL, id=Default Stateful Container)
mag 06, 2021 1:50:51 PM org.apache.openejb.assembler.classic.Assembler createRecipe
INFORMAZIONI: Creating Container(id=Default Stateful Container)
mag 06, 2021 1:50:51 PM org.apache.openejb.core.stateful.SimplePassivater init
INFORMAZIONI: Using directory C:\Users\beppe\AppData\Local\Temp for stateful session passivation
mag 06, 2021 1:50:51 PM org.apache.openejb.config.ConfigurationFactory configureService
INFORMAZIONI: Configuring Service(id=Default Managed Container, type=Container, provider-id=Default Managed Container)
mag 06, 2021 1:50:51 PM org.apache.openejb.config.AutoConfig createContainer
INFORMAZIONI: Auto-creating a container for bean corso_web.Comp700925591: Container(type=MANAGED, id=Default Managed Container)
mag 06, 2021 1:50:51 PM org.apache.openejb.assembler.classic.Assembler createRecipe
INFORMAZIONI: Creating Container(id=Default Managed Container)
mag 06, 2021 1:50:51 PM org.apache.openejb.core.managed.SimplePassivater init
INFORMAZIONI: Using directory C:\Users\beppe\AppData\Local\Temp for stateful session passivation
mag 06, 2021 1:50:51 PM org.apache.openejb.config.AutoConfig deploy
INFORMAZIONI: Configuring PersistenceUnit(name=corsoWebPersistence)
mag 06, 2021 1:50:51 PM org.apache.openejb.config.AutoConfig logAutoCreateResource
INFORMAZIONI: Auto-creating a Resource with id 'connessioneCorsoWebNonJta' of type 'DataSource for 'corsoWebPersistence'.
mag 06, 2021 1:50:51 PM org.apache.openejb.config.AutoConfig deploy
INFORMAZIONI: Configuring Service(id=connessioneCorsoWebNonJta, type=Resource, provider-id=connessioneCorsoWeb)
mag 06, 2021 1:50:51 PM org.apache.openejb.assembler.classic.Assembler createRecipe
INFORMAZIONI: Creating Resource(id=connessioneCorsoWebNonJta)
mag 06, 2021 1:50:55 PM org.apache.tomcat.jdbc.pool.ConnectionPool init
GRAVE: Unable to create initial connections of pool.
com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure

The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:403)
at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:990)
at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:335)
at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2187)
at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2220)
at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2015)
at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:768)
at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:47)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:403)
at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:385)
at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:323)
at org.apache.tomcat.jdbc.pool.PooledConnection.connectUsingDriver(PooledConnection.java:319)
at org.apache.tomcat.jdbc.pool.PooledConnection.connect(PooledConnection.java:212)
at org.apache.tomcat.jdbc.pool.ConnectionPool.createConnection(ConnectionPool.java:739)
at org.apache.tomcat.jdbc.pool.ConnectionPool.borrowConnection(ConnectionPool.java:671)
at org.apache.tomcat.jdbc.pool.ConnectionPool.init(ConnectionPool.java:483)
at org.apache.tomcat.jdbc.pool.ConnectionPool.<init>(ConnectionPool.java:154)
at org.apache.tomee.jdbc.TomEEDataSourceCreator$TomEEConnectionPool.<init>(TomEEDataSourceCreator.java:221)
at org.apache.tomee.jdbc.TomEEDataSourceCreator$TomEEDataSource.createPool(TomEEDataSourceCreator.java:154)
at org.apache.tomee.jdbc.TomEEDataSourceCreator$TomEEDataSource.<init>(TomEEDataSourceCreator.java:131)
at org.apache.tomee.jdbc.TomEEDataSourceCreator.pool(TomEEDataSourceCreator.java:68)
at org.apache.openejb.resource.jdbc.DataSourceFactory.create(DataSourceFactory.java:216)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.xbean.recipe.ReflectionUtil$StaticFactory.create(ReflectionUtil.java:1007)
at org.apache.xbean.recipe.ObjectRecipe.internalCreate(ObjectRecipe.java:279)
at org.apache.xbean.recipe.AbstractRecipe.create(AbstractRecipe.java:96)
at org.apache.xbean.recipe.AbstractRecipe.create(AbstractRecipe.java:61)
at org.apache.openejb.assembler.classic.Assembler.doCreateResource(Assembler.java:3171)
at org.apache.openejb.assembler.classic.Assembler.createResource(Assembler.java:3006)
at org.apache.openejb.config.ConfigurationFactory.doInstall(ConfigurationFactory.java:466)
at org.apache.openejb.config.ConfigurationFactory.install(ConfigurationFactory.java:459)
at org.apache.openejb.config.AutoConfig.installResource(AutoConfig.java:2193)
at org.apache.openejb.config.AutoConfig.deploy(AutoConfig.java:1722)
at org.apache.openejb.config.AutoConfig.deploy(AutoConfig.java:209)
at org.apache.openejb.config.ConfigurationFactory$Chain.deploy(ConfigurationFactory.java:420)
at org.apache.openejb.config.ConfigurationFactory.configureApplication(ConfigurationFactory.java:1037)
at org.apache.tomee.catalina.TomcatWebAppBuilder.startInternal(TomcatWebAppBuilder.java:1281)
at org.apache.tomee.catalina.TomcatWebAppBuilder.configureStart(TomcatWebAppBuilder.java:1125)
at org.apache.tomee.catalina.GlobalListenerSupport.lifecycleEvent(GlobalListenerSupport.java:133)
at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:123)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5053)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1412)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1402)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:748)
Caused by: java.net.ConnectException: Connection refused: connect
at java.net.DualStackPlainSocketImpl.connect0(Native Method)
at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:79)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.net.Socket.connect(Socket.java:589)
at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:211)
at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:299)
... 52 more

mag 06, 2021 1:50:55 PM org.apache.tomee.jdbc.TomEEDataSourceCreator$TomEEDataSource <init>
GRAVE: Can't create DataSource
com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure

The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:403)
at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:990)
at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:335)
at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2187)
at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2220)
at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2015)
at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:768)
at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:47)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:403)
at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:385)
at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:323)
at org.apache.tomcat.jdbc.pool.PooledConnection.connectUsingDriver(PooledConnection.java:319)
at org.apache.tomcat.jdbc.pool.PooledConnection.connect(PooledConnection.java:212)
at org.apache.tomcat.jdbc.pool.ConnectionPool.createConnection(ConnectionPool.java:739)
at org.apache.tomcat.jdbc.pool.ConnectionPool.borrowConnection(ConnectionPool.java:671)
at org.apache.tomcat.jdbc.pool.ConnectionPool.init(ConnectionPool.java:483)
at org.apache.tomcat.jdbc.pool.ConnectionPool.<init>(ConnectionPool.java:154)
at org.apache.tomee.jdbc.TomEEDataSourceCreator$TomEEConnectionPool.<init>(TomEEDataSourceCreator.java:221)
at org.apache.tomee.jdbc.TomEEDataSourceCreator$TomEEDataSource.createPool(TomEEDataSourceCreator.java:154)
at org.apache.tomee.jdbc.TomEEDataSourceCreator$TomEEDataSource.<init>(TomEEDataSourceCreator.java:131)
at org.apache.tomee.jdbc.TomEEDataSourceCreator.pool(TomEEDataSourceCreator.java:68)
at org.apache.openejb.resource.jdbc.DataSourceFactory.create(DataSourceFactory.java:216)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.xbean.recipe.ReflectionUtil$StaticFactory.create(ReflectionUtil.java:1007)
at org.apache.xbean.recipe.ObjectRecipe.internalCreate(ObjectRecipe.java:279)
at org.apache.xbean.recipe.AbstractRecipe.create(AbstractRecipe.java:96)
at org.apache.xbean.recipe.AbstractRecipe.create(AbstractRecipe.java:61)
at org.apache.openejb.assembler.classic.Assembler.doCreateResource(Assembler.java:3171)
at org.apache.openejb.assembler.classic.Assembler.createResource(Assembler.java:3006)
at org.apache.openejb.config.ConfigurationFactory.doInstall(ConfigurationFactory.java:466)
at org.apache.openejb.config.ConfigurationFactory.install(ConfigurationFactory.java:459)
at org.apache.openejb.config.AutoConfig.installResource(AutoConfig.java:2193)
at org.apache.openejb.config.AutoConfig.deploy(AutoConfig.java:1722)
at org.apache.openejb.config.AutoConfig.deploy(AutoConfig.java:209)
at org.apache.openejb.config.ConfigurationFactory$Chain.deploy(ConfigurationFactory.java:420)
at org.apache.openejb.config.ConfigurationFactory.configureApplication(ConfigurationFactory.java:1037)
at org.apache.tomee.catalina.TomcatWebAppBuilder.startInternal(TomcatWebAppBuilder.java:1281)
at org.apache.tomee.catalina.TomcatWebAppBuilder.configureStart(TomcatWebAppBuilder.java:1125)
at org.apache.tomee.catalina.GlobalListenerSupport.lifecycleEvent(GlobalListenerSupport.java:133)
at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:123)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5053)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1412)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1402)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:748)
Caused by: java.net.ConnectException: Connection refused: connect
at java.net.DualStackPlainSocketImpl.connect0(Native Method)
at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:79)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.net.Socket.connect(Socket.java:589)
at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:211)
at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:299)
... 52 more

mag 06, 2021 1:50:55 PM org.apache.openejb.config.AutoConfig setNonJtaDataSource
INFORMAZIONI: Adjusting PersistenceUnit corsoWebPersistence <non-jta-data-source> to Resource ID 'connessioneCorsoWebNonJta' from 'null'
mag 06, 2021 1:50:55 PM org.apache.openejb.config.OutputGeneratedDescriptors writeEjbJar
INFORMAZIONI: Dumping Generated ejb-jar.xml to: C:\Users\beppe\AppData\Local\Temp\ejb-jar-1462095762459217292corso_web.xml
mag 06, 2021 1:50:56 PM org.apache.openejb.config.OutputGeneratedDescriptors writeOpenejbJar
INFORMAZIONI: Dumping Generated openejb-jar.xml to: C:\Users\beppe\AppData\Local\Temp\openejb-jar-4483078295843665717corso_web.xml
mag 06, 2021 1:50:56 PM org.apache.openejb.persistence.PersistenceBootstrap getDefaultProvider
INFORMAZIONI: Default JPA Provider changed to org.eclipse.persistence.jpa.PersistenceProvider specified by jar:file:/C:/corso_java/apache-tomee-plume-7.1.4/lib/openejb-core-eclipselink-7.1.4.jar!/META-INF/org.apache.openejb.persistence.PersistenceBootstrap.provider
mag 06, 2021 1:50:56 PM org.apache.openejb.config.ReportValidationResults logResults
GRAVE: FAIL ... CorsoWebBean: Persistence unit not found for @PersistenceContext(name="manager", unitName="CorsoWebPersistence"). Available units [corsoWebPersistence]
mag 06, 2021 1:50:56 PM org.apache.openejb.config.ReportValidationResults logResults
GRAVE: FAIL ... CorsoWebServiceBean: Persistence unit not found for @PersistenceContext(name="manager", unitName="CorsoWebPersistence"). Available units [corsoWebPersistence]
mag 06, 2021 1:50:56 PM org.apache.openejb.config.ReportValidationResults logResults
GRAVE: FAIL ... FatturaServiceBean: Persistence unit not found for @PersistenceContext(name="manager", unitName="CorsoWebPersistence"). Available units [corsoWebPersistence]
mag 06, 2021 1:50:56 PM org.apache.openejb.config.ReportValidationResults logResults
GRAVE: FAIL ... PersonaServiceBean: Persistence unit not found for @PersistenceContext(name="manager", unitName="CorsoWebPersistence"). Available units [corsoWebPersistence]
mag 06, 2021 1:50:56 PM org.apache.openejb.config.ReportValidationResults logResults
GRAVE: FAIL ... CorsoWebStatefulBean: Persistence unit not found for @PersistenceContext(name="manager", unitName="CorsoWebPersistence"). Available units [corsoWebPersistence]
mag 06, 2021 1:50:56 PM org.apache.openejb.config.ReportValidationResults logResults
GRAVE: FAIL ... corso_web: Persistence unit not found for @PersistenceContext(name="manager", unitName="CorsoWebPersistence"). Available units [corsoWebPersistence]
mag 06, 2021 1:50:56 PM org.apache.openejb.config.ReportValidationResults logResults
GRAVE: Invalid EjbModule(name=corso_web, path=C:\corso_java\apache-tomee-plume-7.1.4\webapps\corso_web)
mag 06, 2021 1:50:56 PM org.apache.openejb.config.ReportValidationResults logResults
GRAVE: FAIL ... corso_web: Persistence unit not found for @PersistenceContext(name="manager", unitName="CorsoWebPersistence"). Available units [corsoWebPersistence]
mag 06, 2021 1:50:56 PM org.apache.openejb.config.ReportValidationResults logResults
GRAVE: Invalid WebModule(name=corso_web, path=C:\corso_java\apache-tomee-plume-7.1.4\webapps\corso_web)
mag 06, 2021 1:50:56 PM org.apache.openejb.config.ReportValidationResults deploy
INFORMAZIONI: Set the 'openejb.validation.output.level' system property to VERBOSE for increased validation details.
mag 06, 2021 1:50:56 PM org.apache.tomee.catalina.TomcatWebAppBuilder startInternal
GRAVE: Unable to deploy collapsed ear in war StandardEngine[Catalina].StandardHost[localhost].StandardContext[/corso_web]
org.apache.openejb.config.ValidationFailedException: Module failed validation. AppModule(name=corso_web)
at org.apache.openejb.config.ReportValidationResults.deploy(ReportValidationResults.java:88)
at org.apache.openejb.config.AppInfoBuilder.build(AppInfoBuilder.java:327)
at org.apache.openejb.config.ConfigurationFactory.configureApplication(ConfigurationFactory.java:1040)
at org.apache.tomee.catalina.TomcatWebAppBuilder.startInternal(TomcatWebAppBuilder.java:1281)
at org.apache.tomee.catalina.TomcatWebAppBuilder.configureStart(TomcatWebAppBuilder.java:1125)
at org.apache.tomee.catalina.GlobalListenerSupport.lifecycleEvent(GlobalListenerSupport.java:133)
at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:123)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5053)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1412)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1402)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:748)

mag 06, 2021 1:50:56 PM sun.reflect.NativeMethodAccessorImpl invoke
GRAVE: ContainerBase.removeChild: destroy:
org.apache.catalina.LifecycleException: An invalid Lifecycle transition was attempted ([before_destroy]) for component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/corso_web]] in state [STARTING_PREP]
at org.apache.catalina.util.LifecycleBase.invalidTransition(LifecycleBase.java:430)
at org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:316)
at org.apache.catalina.core.ContainerBase.removeChild(ContainerBase.java:845)
at org.apache.tomee.catalina.TomcatWebAppBuilder.undeploy(TomcatWebAppBuilder.java:1651)
at org.apache.tomee.catalina.TomcatWebAppBuilder.undeploy(TomcatWebAppBuilder.java:1631)
at org.apache.tomee.catalina.TomcatWebAppBuilder.startInternal(TomcatWebAppBuilder.java:1312)
at org.apache.tomee.catalina.TomcatWebAppBuilder.configureStart(TomcatWebAppBuilder.java:1125)
at org.apache.tomee.catalina.GlobalListenerSupport.lifecycleEvent(GlobalListenerSupport.java:133)
at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:123)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5053)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1412)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1402)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:748)

mag 06, 2021 1:50:56 PM sun.reflect.NativeMethodAccessorImpl invoke
GRAVE: A child container failed during start
java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/corso_web]]
at java.util.concurrent.FutureTask.report(FutureTask.java:122)
at java.util.concurrent.FutureTask.get(FutureTask.java:192)
at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:931)
at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:841)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1412)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1402)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:748)
Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/corso_web]]
at org.apache.catalina.util.LifecycleBase.handleSubClassException(LifecycleBase.java:440)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:198)
... 6 more
Caused by: org.apache.tomee.catalina.TomEERuntimeException: org.apache.openejb.config.ValidationFailedException: Module failed validation. AppModule(name=corso_web)
at org.apache.tomee.catalina.TomcatWebAppBuilder.startInternal(TomcatWebAppBuilder.java:1315)
at org.apache.tomee.catalina.TomcatWebAppBuilder.configureStart(TomcatWebAppBuilder.java:1125)
at org.apache.tomee.catalina.GlobalListenerSupport.lifecycleEvent(GlobalListenerSupport.java:133)
at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:123)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5053)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
... 6 more
Caused by: org.apache.openejb.config.ValidationFailedException: Module failed validation. AppModule(name=corso_web)
at org.apache.openejb.config.ReportValidationResults.deploy(ReportValidationResults.java:88)
at org.apache.openejb.config.AppInfoBuilder.build(AppInfoBuilder.java:327)
at org.apache.openejb.config.ConfigurationFactory.configureApplication(ConfigurationFactory.java:1040)
at org.apache.tomee.catalina.TomcatWebAppBuilder.startInternal(TomcatWebAppBuilder.java:1281)
... 11 more

mag 06, 2021 1:50:56 PM sun.reflect.NativeMethodAccessorImpl invoke
GRAVE: A child container failed during start
java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: A child container failed during start
at java.util.concurrent.FutureTask.report(FutureTask.java:122)
at java.util.concurrent.FutureTask.get(FutureTask.java:192)
at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:931)
at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:258)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
at org.apache.catalina.core.StandardService.startInternal(StandardService.java:422)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:766)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
at org.apache.catalina.startup.Catalina.start(Catalina.java:688)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:342)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:473)
Caused by: org.apache.catalina.LifecycleException: A child container failed during start
at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:942)
at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:841)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1412)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1402)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:748)
Caused by: java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/corso_web]]
at java.util.concurrent.FutureTask.report(FutureTask.java:122)
at java.util.concurrent.FutureTask.get(FutureTask.java:192)
at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:931)
... 8 more
Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/corso_web]]
at org.apache.catalina.util.LifecycleBase.handleSubClassException(LifecycleBase.java:440)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:198)
... 6 more
Caused by: org.apache.tomee.catalina.TomEERuntimeException: org.apache.openejb.config.ValidationFailedException: Module failed validation. AppModule(name=corso_web)
at org.apache.tomee.catalina.TomcatWebAppBuilder.startInternal(TomcatWebAppBuilder.java:1315)
at org.apache.tomee.catalina.TomcatWebAppBuilder.configureStart(TomcatWebAppBuilder.java:1125)
at org.apache.tomee.catalina.GlobalListenerSupport.lifecycleEvent(GlobalListenerSupport.java:133)
at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:123)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5053)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
... 6 more
Caused by: org.apache.openejb.config.ValidationFailedException: Module failed validation. AppModule(name=corso_web)
at org.apache.openejb.config.ReportValidationResults.deploy(ReportValidationResults.java:88)
at org.apache.openejb.config.AppInfoBuilder.build(AppInfoBuilder.java:327)
at org.apache.openejb.config.ConfigurationFactory.configureApplication(ConfigurationFactory.java:1040)
at org.apache.tomee.catalina.TomcatWebAppBuilder.startInternal(TomcatWebAppBuilder.java:1281)
... 11 more

mag 06, 2021 1:50:56 PM sun.reflect.NativeMethodAccessorImpl invoke
GRAVE: The required Server component failed to start so Tomcat is unable to start.
org.apache.catalina.LifecycleException: A child container failed during start
at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:942)
at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:258)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
at org.apache.catalina.core.StandardService.startInternal(StandardService.java:422)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:766)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
at org.apache.catalina.startup.Catalina.start(Catalina.java:688)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:342)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:473)
Caused by: java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: A child container failed during start
at java.util.concurrent.FutureTask.report(FutureTask.java:122)
at java.util.concurrent.FutureTask.get(FutureTask.java:192)
at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:931)
... 13 more
Caused by: org.apache.catalina.LifecycleException: A child container failed during start
at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:942)
at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:841)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1412)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1402)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:748)
Caused by: java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/corso_web]]
at java.util.concurrent.FutureTask.report(FutureTask.java:122)
at java.util.concurrent.FutureTask.get(FutureTask.java:192)
at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:931)
... 8 more
Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/corso_web]]
at org.apache.catalina.util.LifecycleBase.handleSubClassException(LifecycleBase.java:440)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:198)
... 6 more
Caused by: org.apache.tomee.catalina.TomEERuntimeException: org.apache.openejb.config.ValidationFailedException: Module failed validation. AppModule(name=corso_web)
at org.apache.tomee.catalina.TomcatWebAppBuilder.startInternal(TomcatWebAppBuilder.java:1315)
at org.apache.tomee.catalina.TomcatWebAppBuilder.configureStart(TomcatWebAppBuilder.java:1125)
at org.apache.tomee.catalina.GlobalListenerSupport.lifecycleEvent(GlobalListenerSupport.java:133)
at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:123)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5053)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
... 6 more
Caused by: org.apache.openejb.config.ValidationFailedException: Module failed validation. AppModule(name=corso_web)
at org.apache.openejb.config.ReportValidationResults.deploy(ReportValidationResults.java:88)
at org.apache.openejb.config.AppInfoBuilder.build(AppInfoBuilder.java:327)
at org.apache.openejb.config.ConfigurationFactory.configureApplication(ConfigurationFactory.java:1040)
at org.apache.tomee.catalina.TomcatWebAppBuilder.startInternal(TomcatWebAppBuilder.java:1281)
... 11 more

p.s.
tutte le configurazioni riguardo persistence.xml e tomee.xml (il Resource per connettersi col database) sono ok. il problema al server l'ho riscontrato solo dopo aver creato la classe Entity Fattura ed mappato una tabella secondaria con secondaryTable.

vi ringrazio in anticipo per la disponibilità

9 Risposte

  • Re: Problema con Entity secondaryTable

    Le eccezioni che hai riportato indicano, banalmente, un problema di connessione al DBMS (o la stringa di connessione che hai usato non è corretta, o non hai settato la porta corretta su cui MySQL sta ascoltando o c'è di mezzo un firewall che blocca la connessione). Questo lo si capisce da questo messaggio:
    The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
    In pratica, il driver JDBC non riesce a raggiungere il server MySQL e ad effettuare la connessione. Verifica i parametri che hai usato.

    Poi, però, dovresti spiegare bene questa affermazione:
    ho creato una classe java (Fattura) con annotation @Entity per mappare due tabelle (fattura e cliente) create in MySql.
    Ogni Entity mappa una ed una sola tabella nel database. Più Entity possono essere messe in relazione l'una con l'altra mediante join (@OneToOne, @OneToMany, @ManyToOne, @ManyToMany).
  • Re: Problema con Entity secondaryTable

    Ciao SpiritoLibero,
    grazie per avermi risposto.
    nella classe Fattura di tipo Entity, per mappare la seconda tabella ho usato l'annotaion @SecondaryTable(name="cliente"). poi alle due variabili (nome, cognome) create per la seconda tabella le ho assegnato l'annotation @Column(name="nome" table="cliente") e @Column(nome="cognome" table="cliente") specificandogli la table.
    Non sono ancora arrivato a studiare l'argomento riguardo il join @OneToOne ecc. ho solo usato dentro l'annotation @SecondaryTable il parametro pkJoinColumns = {@PrimaryKeyJoinColumn(name="id_cliente")}) (che ad essere sinceri non ho ancora capito bene come funzioni.

    qui è come ho configurato il file tomee.xml:

    <?xml version="1.0" encoding="UTF-8"?>
    <tomee>
    <Resource id="connessioneCorsoWeb" type="DataSource">
    JdbcDriver com.mysql.jdbc.Driver
    JdbcUrl jdbc:mysql://localhost/corso_java_web
    UserName root
    </Resource>
    </tomee>

    mentre questo è il file persistence.xml:

    <persistence xmlns="http://java.sun.com/xml/ns/persistenc" version="1.0">
    <persistence-unit name="corsoWebPersistence">
    <jta-data-source>connessioneCorsoWeb</jta-data-source>
    <properties>
    <property name= "openejb.jpa.auto-scan" value="true" />
    </properties>
    </persistence-unit>
    </persistence>

    nelle esercitazioni precedenti alla lezione sulla @SecondaryTable funzionava tutto quanto bene(la connessione tra mySql ed il progetto creato funzionava). dopo aver scritto queste linee di codice, il server non riesce più a connettersi.
    sto usando il server Laragon 4.0.16(ha su un J/connector compatibile con la versione 8.0.22 di MySql) per MySql e TomEE per l'IDE eclipse.
    ad essere sinceri, non ho bene in mente il discorso sull DBMS. domani vado a ripassarlo.

    se può aiutarti qualche screenshot in particolare, chiedi pure che le posto subito.
    grazie per l'aiuto.
    ciao,buonaserata
  • Re: Problema con Entity secondaryTable

    Perdonami, non conoscevo l'annotation @SecondaryTable (mai usata in vita mia). Mi sono documentato e ho visto che permette, appunto, di avere all'interno di un'unica Entity campi provenienti anche da una o più tabelle secondarie collegate. Farò qualche esperimento.

    Rimane il fatto che l'eccezione sollevata ha a che fare con la mancanza di connessione al DBMS. Dalla jdbcUrl vedo che stai effettuando la connessione verso localhost, quindi ci si aspetta che il DBMS sia attivo e stia correttamente girando sulla stessa macchina dove gira l'applicazione. Verifica, a questo punto, che il DBMS sia attivo.
  • Re: Problema con Entity secondaryTable

    Mi sono ulteriormente documentato sull'annotation @SecondaryTable e, personalmente, è un approccio che non consiglierei (specialmente nell'ambito in cui lo stai usando tu: mappare una Fattura con un Cliente). In pratica @SecondaryTable è un modo "alternativo" per indicare una @OneToOne relationship (cosa che io, personalmente, a mio gusto, evito quasi come la peste...).
    Ora, non posso e non voglio entrare nel merito della tua base di dati, ma non credo che sia proprio il massimo avere la tabella Fattura legata da una relazione Uno-a-Uno con la tabella Cliente: ogni fattura deve avere un cliente collegato (e su questo non ci piove), ma sarebbe più opportuno avere una relazione Molti-a-Uno (o Uno-a-Molti se la vediamo dal lato Cliente); un cliente dovrebbe poter avere più fatture a lui collegate.

    Con la struttura che stai dando tu, invece hai che ciascun cliente è legato ad una sola fattura... questo non comporta l'impossibilità di emettere più fatture ad uno stesso cliente, ma per poterlo fare devi obbligatoriamente inserire ex-novo tutti i dati del cliente come se fosse un nuovo cliente (la tabella Cliente, quindi, in questi casi conterrà valori duplicati). Questo viola una delle regole basilari sulla normalizzazione delle basi di dati relazionali: genera ridondanza. E la ridondanza è la madre dell'incoerenza... e poi non è bello dover inserire da capo tutti i dati del cliente ogni volta che devo emettere una fattura nei suoi confronti.

    Esistono casi particolareggiati in cui questo "è richiesto" o, meglio, è stato scelto di preferire questa situazione (sto pensando a siti e-commerce senza obbligo di iscrizione), ma, appunto, sono casi piuttosto fuori dallo standard, almeno attualmente.

    Quindi, il mio consiglio è quello di rivedere un attimo la situazione. Se il tuo scopo attuale è quello di fare semplicemente degli esercizi sull'uso dell'annotazione @SecondaryTable, ok, bene così... ma non la userei in questo modo in un contesto "reale" (se non, appunto, quando forzatamente richiesto).
  • Re: Problema con Entity secondaryTable

    Ciao SpiritoLibero,.
    il video-corso che sto seguendo mostra questo esempio di come mappare Entity su due tabelle usando l'annotation @SecondaryTable. penso sarà un semplice esempio di come creare una Fattura una tantum per un unico cliente, usando solamente una classe Entity e prendendo "due piccioni con una fava"(forse risparmiando anche del codice). il fatto è che ancora non riesco ad inquadrare bene la situazione perchè mi mancano alcuni argomenti (quando arriverò all'argomento OneToOne, OneToMany ecc proverò a capirci di più). per "ogni fattura deve aver un cliente collegato", intendi che si dovrebbe creare sempre una nuova tabella Fattura da collegare ad una nuova tabella Cliente? comunque vediamo, provo a smanettare unpo' e vedere se riesco a far funzionare la cosa.

    poco fa avevo notato la ridondanza dell'errore:

    Exception Description: An incomplete @PrimaryKeyJoinColumns was specified on the annotated element [class it.corso.java.data.Fattura]. When specifying @PrimaryKeyJoinColumns for an entity that has a composite primary key, a @PrimaryKeyJoinColumn must be specified for each primary key join column using the @PrimaryKeyJoinColumns. Both the name and the referencedColumnName elements must be specified in each such @PrimaryKeyJoinColumn.

    e questo warning:

    [EL Warning]: 2021-05-07 10:13:07.236--ServerSession(1616915865)--You have specified multiple ids for the entity class [it.corso.java.data.Fattura] without specifying an @IdClass. By doing this you may lose the ability to find by identity, distributed cache support etc. Note: You may however use EntityManager find operations by passing a list of primary key fields. Else, you will have to use JPQL queries to read your entities. For other id options see @PrimaryKey.

    proverò a capirci di più. Va bene SL, ti ringrazio di nuovo per il tempo che hai speso nell' aiutarmi a capire.
    ciao, buonagiornata
  • Re: Problema con Entity secondaryTable

    Ah, avevo dimenticato a scrivere che prima avevo trovato un errore sulla classe bean. il parametro unitName dell'annotation @PersistenceContext era scritto sbagliato. ma continua ancora a non avviarsi il server. vedremo che si può fare. ciao
  • Re: Problema con Entity secondaryTable

    Bdm ha scritto:


    per "ogni fattura deve aver un cliente collegato", intendi che si dovrebbe creare sempre una nuova tabella Fattura da collegare ad una nuova tabella Cliente?
    Ovviamente no: nel database ci sarà una tabella Fattura e una tabella Cliente. Quel che voglio dire è che con la struttura che stai seguendo (@SecondaryTable) ogni RECORD presente nella tabella Fattura (ogni istanza della classe Fattura) dovrà avere un corrispondente RECORD nella tabella Cliente. Questo significa che se emetto 2 fatture al cliente Mario Rossi, dovrò necessariamente avere 2 record nella tabella Fattura (ed è normale: 2 fatture -> 2 record) e 2 record nella tabella Cliente (dovrò avere un doppione di Mario Rossi nella tabella Cliente... questo è "l'inghippo", c'è ridondanza).
    Exception Description: An incomplete @PrimaryKeyJoinColumns was specified on the annotated element [class it.corso.java.data.Fattura]. When specifying @PrimaryKeyJoinColumns for an entity that has a composite primary key, a @PrimaryKeyJoinColumn must be specified for each primary key join column using the @PrimaryKeyJoinColumns. Both the name and the referencedColumnName elements must be specified in each such @PrimaryKeyJoinColumn.
    Questo significa che hai inserito una chiave composta nella tua Entity, ma la tabella collegata sembra non avere la stessa chiave (sembra avere una chiave composta da MENO campi rispetto alla primaria): come detto, è una relazione Uno-a-Uno, quindi la tabella secondaria deve avere ALMENO gli stessi campi chiave della primaria (può averne di più, ma non di meno).

    [EL Warning]: 2021-05-07 10:13:07.236--ServerSession(1616915865)--You have specified multiple ids for the entity class [it.corso.java.data.Fattura] without specifying an @IdClass. By doing this you may lose the ability to find by identity, distributed cache support etc. Note: You may however use EntityManager find operations by passing a list of primary key fields. Else, you will have to use JPQL queries to read your entities. For other id options see @PrimaryKey.
    Questo significa che nella classe Fattura hai specificato più di un campo con annotazione @Id. Questo significa due cose:
    1) La tabella ha una chiave composta; e di conseguenza...
    a) O usi una @EmbeddedId (e non usi @Id nella Entity)
    b) O usi @IdClass per specificare i campi chiave e su ciascuno usi l'annotation @Id

    Queste sono cose piuttosto "particolari" di JPA, che richiedono una conoscenza un po' più approfondita.

    Se la tua tabella ha una chiave composta da più campi hai le due alternative dette sopra per poterla modellare: o usi una @EmbeddedId (e quindi devi creare una classe marchiata @Embeddable e referenziarla come fosse un campo della Entity) oppure devi definire una classe semplice, da referenziare tramite l'annotation @IdClass a livello di classe (subito sotto l'annotation @Entity).

    La differenza sta nel modo in cui poi verrà usata la chiave (ma non mi dilungo).
  • Re: Problema con Entity secondaryTable

    Ciao SL, credo di aver afferrato il concetto che mi hai spiegato ma devo ancora arrivare a studiare molti degli argomenti che hai illustrato. proprio in questo momento, mentre rivedevo la videolezione, ho tolto un annotation @Id di troppo sulla tabella Fattura, ho fatto partire il server e pare che adesso sia ritornato a funzionare. Avevo dato un @Id anche al get della variabile numero_fattura(VARCHAR) oltre alla primaryKey id_fattura. forse il problema era questo.per quanto riguarda la secondaryTable, da quello che ho capito poco fa riascoltando la lezione, è che per recuperare gli elementi della seconda tabella (cliente), bisogna passare all'id secondaryTable questo parametro: pkJoinColumns = {@PrimaryKeyJoinColumn(name="id_cliente")} , di modo da dire alla jpa di andare a prendere anche le informazioni della tabella cliente.
    torno a continuare e completare la lezione. ti ringrazio tanto per la disponibilità e le spiegazioni accurate.
    ciao, buonagiornata.
  • Re: Problema con Entity secondaryTable

    Ciao, anche io ho lo stesso tuo problema, come hai risolto?
Devi accedere o registrarti per scrivere nel forum
9 risposte