小编Kri*_*ris的帖子

Eclipselink没有缓存导致StackOverflowError

我有一个包含5行的数据库表.

我第一次选择所有我得到一个StackOverflowError

em.createQuery("SELECT e FROM " + clazz.getSimpleName() + " e");
Run Code Online (Sandbox Code Playgroud)

如果我在每一行上做一次选择

em.find(clazz, 1);
em.find(clazz, 2);
em.find(clazz, 3);
em.find(clazz, 4);
em.find(clazz, 5);
Run Code Online (Sandbox Code Playgroud)

然后选择一切完美.我猜这是与那些不在缓存中的记录有关吗?

完全堆栈跟踪太长这里是顶部

来自java.lang.ClassLoader.loadClassInternal(未知来源)的java.lang.ClassLoader.loadClass(未知来源)的org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)中的java.lang.StackOverflowError at com.mysql.jdbc.Util.handleNewInstance(Util.java:427)at com.mysql.jdbc.PreparedStatement.getInstance(PreparedStatement.java:872)at com.mysql.jdbc.ConnectionImpl.clientPrepareStatement(ConnectionImpl.java:1498) )在com.mysql.jdbc.ConnectionImpl.prepareStatement(ConnectionImpl.java:4270)在com.mysql.jdbc.ConnectionImpl.prepareStatement(ConnectionImpl.java:4169)在org.eclipse.persistence.internal.databaseaccess.DatabaseAccessor.prepareStatement( DatabaseAccessor.java:1401)org.eclipse.persistence.internal.databaseaccess.DatabaseAccessor.prepareStatement(DatabaseAccessor.java:1350)org.eclipse.persistence.internal.databaseaccess.DatabaseCall.prepareStatement(DatabaseCall.java:652)at org .eclipse.persistence.internal.databaseaccess.DatabaseAccesso 在org.eclipse.persistence.sessions.server.ServerSession.executeCall(ServerSession.java:org.eclipse.persistence.internal.databaseaccess.DatabaseAccessor.executeCall(DatabaseAccessor.java:526)的r.basicExecuteCall(DatabaseAccessor.java:576) 529)在org.eclipse.persistence.internal.queries.DatasourceCallQueryMechanism.executeCall(DatasourceCallQueryMechanism.java:206)在org.eclipse.persistence.internal.queries.DatasourceCallQueryMechanism.executeCall(DatasourceCallQueryMechanism.java:192)在org.eclipse.persistence .internal.queries.DatasourceCallQueryMechanism.selectOneRow(DatasourceCallQueryMechanism.java:664)位于org.eclipse.persistence.internal.queries.ExpressionQueryMechanism.selectOneRow的org.eclipse.persistence.internal.queries.ExpressionQueryMechanism.selectOneRowFromTable(ExpressionQueryMechanism.java:2582) (ExpressionQueryMechanism.java:2553)org.eclipse.persistence.quer上的org.eclipse.persistence.queries.ReadObjectQuery.executeObjectLevelReadQuery(ReadObjectQuery.java:439)ies.ObjectLevelReadQuery.executeDatabaseQuery(ObjectLevelReadQuery.java:1076)org.eclipse.persistence.queries.DatabaseQuery.execute(DatabaseQuery.java:740)org.eclipse.persistence.queries.ObjectLevelReadQuery.execute(ObjectLevelReadQuery.java:1036)在org.eclipse.persistence.queries.ReadObjectQuery.execute(ReadObjectQuery.java:407)在org.eclipse.persistence.internal.sessions.AbstractSession.internalExecuteQuery(AbstractSession.java:2392)在org.eclipse.persistence.internal.sessions .AbstractSession.executeQuery(AbstractSession.java:1291)org.eclipse.persistence.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1273)org.eclipse.persistence.internal.indirection.NoIndirectionPolicy.valueFromQuery(NoIndirectionPolicy.java) :309)org.eclipse.persi上的org.eclipse.persistence.mappings.ForeignReferenceMapping.valueFromRowInternal(ForeignReferenceMapping.java:1850)org.eclipse.persistence.mappings.OneToOneMapping.valueFromRowInternal(OneToOneMapping.java:1623)stence.mappings.ForeignReferenceMapping.valueFromRow(ForeignReferenceMapping.java:1739)在org.eclipse.persistence.mappings.DatabaseMapping.readFromRowIntoObject(DatabaseMapping.java:1283)在org.eclipse.persistence.internal.descriptors.ObjectBuilder.buildAttributesIntoObject(ObjectBuilder的.的java:342)在org.eclipse.persistence.internal.descriptors.ObjectBuilder.buildObject(ObjectBuilder.java:717)在org.eclipse.persistence.internal.descriptors.ObjectBuilder.buildObject(ObjectBuilder.java:504)在org.eclipse .persistence.internal.descriptors.ObjectBuilder.buildObject(ObjectBuilder.java:454)在org.eclipse.persistence.queries.ObjectLevelReadQuery.buildObject(ObjectLevelReadQuery.java:723)在org.eclipse.persistence.queries.ReadObjectQuery.executeObjectLevelReadQuery(ReadObjectQuery的.java:448)在org.eclipse.persistence.queries.ObjectLevelReadQuery.executeDatabaseQuery(ObjectLevelReadQuery.java:1076)在org.eclipse.persistence.queries.DatabaseQuery.execute(DatabaseQuery.java:740)在org.ecli pg.persistence.queries.ObjectLevelReadQuery.execute(ObjectLevelReadQuery.java:1036)位于org.eclipse.persistence.internal.sessions.AbstractSession.internalExecuteQuery的org.eclipse.persistence.queries.ReadObjectQuery.execute(ReadObjectQuery.java:407) AbstractSession.java:2392)org.eclipse.persistence.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1291)org.eclipse.persistence.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1273)at org位于org.eclipse.persistence.mappings.OneToOneMapping.valueFromRowInternal的org.eclipse.persistence.mappings.ForeignReferenceMapping.valueFromRowInternal(ForeignReferenceMapping.java:1850)的.eclipse.persistence.internal.indirection.NoIndirectionPolicy.valueFromQuery(NoIndirectionPolicy.java:309) (OneToOneMapping.java:1623)org.eclipse.persistence.mappings.ForeignReferenceMapping.valueFromRow(ForeignReferenceMapping.java:1739)org.eclipse.persistence.mappings.DatabaseMapping.readFromRowIntoObject(Database Mapping.java:1283)org.eclipse.persistence.internal.descriptors.ObjectBuilder.buildAttributesIntoObject(ObjectBuilder.java:342)org.eclipse.persistence.internal.descriptors.ObjectBuilder.buildObject(ObjectBuilder.java:717)org .eclipse.persistence.internal.descriptors.ObjectBuilder.buildObject(ObjectBuilder.java:504)org.eclipse.persistence.internal.descriptors.ObjectBuilder.buildObject(ObjectBuilder.java:454)org.eclipse.persistence.queries.ObjectLevelReadQuery .buildObject(ObjectLevelReadQuery.java:723)在org.eclipse.persistence.queries.ReadObjectQuery.executeObjectLevelReadQuery(ReadObjectQuery.java:448)在org.eclipse.persistence.queries.ObjectLevelReadQuery.executeDatabaseQuery(ObjectLevelReadQuery.java:1076)在有机eclipse.persistence.queries.DatabaseQuery.execute(DatabaseQuery.java:740)org.eclipse.persistence.queries.ObjectLevelReadQuery.execute(ObjectLevelReadQuery.java:1036)org.eclipse.persistence.queries.ReadObjectQuery.execute(ReadObjectQuery. Java的:407)在org.eclipse.persistence.internal.sessions.AbstractSession.internalExecuteQuery(AbstractSession.java:2392)在org.eclipse.persistence.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1291)在org.eclipse.persistence.internal .sessions.AbstractSession.executeQuery(AbstractSession.java:1273)在org.eclipse.persistence.internal.indirection.NoIndirectionPolicy.valueFromQuery(NoIndirectionPolicy.java:309)在org.eclipse.persistence.mappings.ForeignReferenceMapping.valueFromRowInternal(ForeignReferenceMapping.java :1850)org.eclipse.persistence.mappings.OneToOneMapping.valueFromRowInternal(OneToOneMapping.java:1623)org.eclipse.persistence.mappings.ForeignReferenceMapping.valueFromRow(ForeignReferenceMapping.java:1739)org.eclipse.persistence.mappings.在org.eclipse.persistence.internal.des的org.eclipse.persistence.internal.descriptors.ObjectBuilder.buildAttributesIntoObject(ObjectBuilder.java:342)上的DatabaseMapping.readFromRowIntoObject(DatabaseMapping.java:1283)criptors.ObjectBuilder.buildObject(ObjectBuilder.java:717)位于org.eclipse.persistence.internal.descriptors.ObjectBuilder.buildObject(ObjectBuilder.java:504)org.eclipse.persistence.internal.descriptors.ObjectBuilder.buildObject(ObjectBuilder. java:454)org.eclipse.persistence.queries.ObjectLevelReadQuery.buildObject(ObjectLevelReadQuery.java:723)org.eclipse.persistence.queries.ReadObjectQuery.executeObjectLevelReadQuery(ReadObjectQuery.java:448)atg.eclipse.persistence.queries .ObjectLevelReadQuery.executeDatabaseQuery(ObjectLevelReadQuery.java:1076)位于org.eclipse.persistence.queries.DatabaseQuery.exe(DatabaseQuery.java:740)的org.eclipse.persistence.queries.ObjectLevelReadQuery.execute(ObjectLevelReadQuery.java:1036)at at org.eclipse.persistence.queries.ReadObjectQuery.execute在org.eclipse.persistence.internal.sessions(ReadObjectQuery.java:407)在org.eclipse.persistence.internal.sessions.AbstractSession.internalExecuteQuery(AbstractSession.java:2392). AbstractSession.execute or(AbstractSession.java:1291)org.eclipse.persistence.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1273)org.eclipse.persistence.internal.indirection.NoIndirectionPolicy.valueFromQuery(NoIndirectionPolicy.java:309)在org.eclipse.persistence.mappings.ForeignReferenceMapping.valueFromRowInternal(ForeignReferenceMapping.java:1850)在org.eclipse.persistence.mappings.OneToOneMapping.valueFromRowInternal(OneToOneMapping.java:1623)在org.eclipse.persistence.mappings.ForeignReferenceMapping.valueFromRow (ForeignReferenceMapping.java:1739)org.eclipse.persistence.mappings.DatabaseMapping.readFromRowIntoObject(DatabaseMapping.java:1283)org.eclipse.persistence.internal.descriptors.ObjectBuilder.buildAttributesIntoObject(ObjectBuilder.java:342)at org.在org.eclips的org.eclipse.persistence.internal.descriptors.ObjectBuilder.buildObject(ObjectBuilder.java:504)的eclipse.persistence.internal.descriptors.ObjectBuilder.buildObject(ObjectBuilder.java:717)e.persistence.internal.descriptors.ObjectBuilder.buildObject(ObjectBuilder.java:454)org.eclipse.persistence.queries.ObjectLevelReadQuery.buildObject(ObjectLevelReadQuery.java:723)org.eclipse.persistence.queries.ReadObjectQuery.executeObjectLevelReadQuery( ReadObjectQuery.java:448)org.eclipse.persistence.queries.ObjectLevelReadQuery.executeDatabaseQuery(ObjectLevelReadQuery.java:1076)org.eclipse.persistence.queries.DatabaseQuery.execute(DatabaseQuery.java:740)

stack-overflow jpa eclipselink

1
推荐指数
1
解决办法
1498
查看次数

错误org.quartz.plugins.xml.XMLSchedulingDataProcessorPlugin:335 - 错误调度作业:添加了没有触发器的作业必须是持久的

一切似乎与Quartz完美配合,但在启动应用程序时我得到了下面的堆栈跟踪

org.quartz.SchedulerException: Jobs added with no trigger must be durable.
at org.quartz.core.QuartzScheduler.addJob(QuartzScheduler.java:916)
at org.quartz.impl.StdScheduler.addJob(StdScheduler.java:269)
at org.quartz.xml.XMLSchedulingDataProcessor.scheduleJobs(XMLSchedulingDataProcessor.java:1069)
at org.quartz.xml.XMLSchedulingDataProcessor.processFileAndScheduleJobs(XMLSchedulingDataProcessor.java:888)
at org.quartz.plugins.xml.XMLSchedulingDataProcessorPlugin.processFile(XMLSchedulingDataProcessorPlugin.java:330)
at org.quartz.plugins.xml.XMLSchedulingDataProcessorPlugin.start(XMLSchedulingDataProcessorPlugin.java:257)
at org.quartz.plugins.SchedulerPluginWithUserTransactionSupport.start(SchedulerPluginWithUserTransactionSupport.java:144)
at org.quartz.core.QuartzScheduler.startPlugins(QuartzScheduler.java:2343)
at org.quartz.core.QuartzScheduler.start(QuartzScheduler.java:527)
at org.quartz.impl.StdScheduler.start(StdScheduler.java:143)
at org.quartz.ee.servlet.QuartzInitializerServlet.init(QuartzInitializerServlet.java:211)
at org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1266)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1185)
at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1080)
at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:5015)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5302)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:895)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:871)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:615)
at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:958)
at org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1599)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:724)
Run Code Online (Sandbox Code Playgroud)

quartz-config.xml中的作业调度似乎很好,所有按计划安排的作业也是如此

知道是什么导致了这个吗?

这是配置文件,对我来说似乎是正确的

<schedule>
    <job>
        <name>ProcessLeadsJob</name>
        <group>PROCESS_LEAD_JOB_GROUP</group>
        <description>This job process the leads every 24 …
Run Code Online (Sandbox Code Playgroud)

quartz-scheduler

1
推荐指数
1
解决办法
9758
查看次数